Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .text:00535330 ; =============== S U B R O U T I N E =======================================
- .text:00535330
- .text:00535330
- .text:00535330 sub_535330 proc near ; DATA XREF: .rdata:005DE208o
- .text:00535330 ; .rdata:005DFD38o ...
- .text:00535330
- .text:00535330 var_8 = dword ptr -8
- .text:00535330 var_4 = dword ptr -4
- .text:00535330 arg_0 = dword ptr 4
- .text:00535330 arg_4 = dword ptr 8
- .text:00535330 arg_8 = dword ptr 0Ch
- .text:00535330
- .text:00535330 sub esp, 8
- .text:00535333 push ebx
- .text:00535334 push ebp
- .text:00535335 push esi
- .text:00535336 mov esi, [esp+14h+arg_8]
- .text:0053533A cmp esi, 0FFFFFFFFh
- .text:0053533D push edi
- .text:0053533E mov edi, ecx
- .text:00535340 jz short loc_535350
- .text:00535342 call sub_54BB00
- .text:00535347 cmp esi, eax
- .text:00535349 mov byte ptr [esp+18h+arg_8], 0
- .text:0053534E jnz short loc_535355
- .text:00535350
- .text:00535350 loc_535350: ; CODE XREF: sub_535330+10j
- .text:00535350 mov byte ptr [esp+18h+arg_8], 1
- .text:00535355
- .text:00535355 loc_535355: ; CODE XREF: sub_535330+1Ej
- .text:00535355 call ds:?SinglePlayer@@YA_NXZ ; SinglePlayer(void)
- .text:0053535B test al, al
- .text:0053535D jz short loc_53536B
- .text:0053535F mov al, byte ptr [esp+18h+arg_8]
- .text:00535363 test al, al
- .text:00535365 jz loc_535456
- .text:0053536B
- .text:0053536B loc_53536B: ; CODE XREF: sub_535330+2Dj
- .text:0053536B lea ebp, [edi-4]
- .text:0053536E test ebp, ebp
- .text:00535370 jz short loc_535391
- .text:00535372 lea eax, [ebp+0Ch]
- .text:00535375 test eax, eax
- .text:00535377 jz short loc_535391
- .text:00535379 mov eax, [eax+4]
- .text:0053537C test eax, eax
- .text:0053537E jz short loc_535391
- .text:00535380 mov ecx, [eax+4Ch]
- .text:00535383 and ecx, 103h
- .text:00535389 cmp ecx, 103h
- .text:0053538F jz short loc_535393
- .text:00535391
- .text:00535391 loc_535391: ; CODE XREF: sub_535330+40j
- .text:00535391 ; sub_535330+47j ...
- .text:00535391 xor eax, eax
- .text:00535393
- .text:00535393 loc_535393: ; CODE XREF: sub_535330+5Fj
- .text:00535393 mov edx, [esp+18h+arg_0]
- .text:00535397 xor ecx, ecx
- .text:00535399 mov cx, [edx]
- .text:0053539C push ecx
- .text:0053539D lea ecx, [eax+0E4h]
- .text:005353A3 call ds:?FindByID@CEquipManager@@QAEPAVCEquip@@G@Z ; CEquipManager::FindByID(ushort)
- .text:005353A9 mov esi, eax
- .text:005353AB test esi, esi
- .text:005353AD jz loc_535456
- .text:005353B3 mov edx, [esi]
- .text:005353B5 mov ecx, esi
- .text:005353B7 call dword ptr [edx+8]
- .text:005353BA test al, al
- .text:005353BC jnz loc_535456
- .text:005353C2 mov ebx, [esp+18h+arg_4]
- .text:005353C6 test bl, bl
- .text:005353C8 jnz short loc_535409
- .text:005353CA cmp dword ptr [esi+14h], 20000h
- .text:005353D1 jnz short loc_535409
- .text:005353D3 mov eax, [edi+0Ch]
- .text:005353D6 test eax, eax
- .text:005353D8 jz short loc_5353EF
- .text:005353DA mov ecx, [eax+4Ch]
- .text:005353DD and ecx, 503h
- .text:005353E3 cmp ecx, 503h
- .text:005353E9 jnz short loc_5353EF
- .text:005353EB mov edi, eax
- .text:005353ED jmp short loc_5353F1
- .text:005353EF ; ---------------------------------------------------------------------------
- .text:005353EF
- .text:005353EF loc_5353EF: ; CODE XREF: sub_535330+A8j
- .text:005353EF ; sub_535330+B9j
- .text:005353EF xor edi, edi
- .text:005353F1
- .text:005353F1 loc_5353F1: ; CODE XREF: sub_535330+BDj
- .text:005353F1 mov ecx, edi
- .text:005353F3 call ds:?get_strafe_dir@CShip@@QBE?AW4StrafeDir@@XZ ; CShip::get_strafe_dir(void)
- .text:005353F9 test eax, eax
- .text:005353FB jnz short loc_535456
- .text:005353FD mov ecx, edi
- .text:005353FF call ds:?any_thrusters_on@CShip@@QBE_NXZ ; CShip::any_thrusters_on(void)
- .text:00535405 test al, al
- .text:00535407 jnz short loc_535456
- .text:00535409
- .text:00535409 loc_535409: ; CODE XREF: sub_535330+98j
- .text:00535409 ; sub_535330+A1j
- .text:00535409 mov edx, [esi]
- .text:0053540B mov ecx, esi
- .text:0053540D call dword ptr [edx+4]
- .text:00535410 cmp al, bl
- .text:00535412 jz short loc_535456
- .text:00535414 mov eax, [esi]
- .text:00535416 push ebx
- .text:00535417 mov ecx, esi
- .text:00535419 call dword ptr [eax+30h]
- .text:0053541C mov al, byte ptr [esp+18h+arg_8]
- .text:00535420 test al, al
- .text:00535422 jz short loc_535456
- .text:00535424 mov edx, [ebp+0]
- .text:00535427 mov ecx, ebp
- .text:00535429 call dword ptr [edx+20h]
- .text:0053542C mov [esp+18h+var_8], eax
- .text:00535430 mov eax, [esp+18h+arg_0]
- .text:00535434 mov cx, [eax]
- .text:00535437 lea eax, [esp+18h+var_8]
- .text:0053543B mov word ptr [esp+18h+var_4], cx
- .text:00535440 mov ecx, dword_67ECD0
- .text:00535446 push eax
- .text:00535447 mov eax, dword_673344
- .text:0053544C mov byte ptr [esp+1Ch+var_4+2], bl
- .text:00535450 mov edx, [ecx]
- .text:00535452 push eax
- .text:00535453 call dword ptr [edx+4]
- .text:00535456
- .text:00535456 loc_535456: ; CODE XREF: sub_535330+35j
- .text:00535456 ; sub_535330+7Dj ...
- .text:00535456 pop edi
- .text:00535457 pop esi
- .text:00535458 pop ebp
- .text:00535459 xor eax, eax
- .text:0053545B pop ebx
- .text:0053545C add esp, 8
- .text:0053545F retn 0Ch
- .text:0053545F sub_535330 endp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement