mov eax, [esi+00000084] //esi= *(ptr+0x2ec) //harpoon pull target ptr
test eax, eax
je l1
push 005bbbec
call 00419d40
mov eax, [esi+00000084]
add esp, 04
fstp dword ptr [esp+14] //10.0
test byte ptr [eax+10], 20
je l2
push edi //harpoon caster
call 00537520
add esp, 04
ret
l2:
push eax //harpoon pull target
push edi //harpoon caster
call 004e7540
fld dword ptr [esp+1c] //10.0
mov edx, [esi+00000084]
add esp, 04
fchs
fstp dword ptr [esp] //-10.0
add edi, 38
push edx //harpoon pull target
push edi //caster x,y
call 0052df80
add esp, 0c
l1:
ret
---- 실제 작업완료 코드 ----
// caster ptr, force
push esi
push edi
push edx
push ebp
mov ebp, esp
sub esp, 20
mov eax, 00507250
call eax
mov edi, [eax]
mov esi, [edi+000002ec]
mov eax, [eax+04]
mov [ebp-04], eax //force
mov eax, [esi+00000084] //esi= *(ptr+0x2ec) //harpoon pull target ptr
test eax, eax
je l1
//push 005bbbec
//mov eax, 00419d40
//call eax
mov eax, [esi+00000084]
//add esp, 04
//fstp dword ptr [esp+14] //10.0
test byte ptr [eax+10], 20
je l2
push edi
mov eax, 00537520
call eax
add esp, 04
jmp l1
l2:
push eax //harpoon pull target
push edi //harpoon caster
mov eax, 004e7540
call eax
//fld dword ptr [esp+1c] //10.0
mov edx, [esi+00000084]
add esp, 04
mov eax, [ebp-04]
mov [esp], eax
//fchs
//fstp dword ptr [esp] //-10.0
add edi, 38
push edx //harpoon pull target
push edi //caster x,y
mov eax, 0052df80
call eax
add esp, 0c
l1:
add esp, 20
mov esp, ebp
pop ebp
pop edx
pop edi
pop esi
xor eax, eax
ret
--- 여기까지
-이상 끝-