Function at 0x518390
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x8602c0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x518631
sub esp, 0x74
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 0xc]
test eax, eax
je 0x5183ec
mov ecx, dword [edx + 4]
cmp ecx, eax
jbe 0x51862b
mov ebx, dword [edx]
lea ebp, [eax + eax*2]
lea eax, [ebx + ebp*8]
cmp byte [eax], 3
jne 0x5183e0
lea ebp, [ebx + ebp*8 + 8]
mov ebp, dword [ebp]
xchg ebp, eax
test al, 4
xchg ebp, eax
je 0x5183e0
mov dword [esp + 0x10], ecx
xor eax, eax
jmp 0x518400
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
add ebx, 0x18
inc eax
mov ecx, dword [esp + 0x10]
cmp eax, ecx
jge 0x5184a6
lea edi, [esp + 0x38]
mov esi, ebx
call fcn.004683c4
mov ecx, dword [edx + 4]
mov ebp, dword [esp + 0x3c]
cmp ecx, ebp
jbe 0x518624
mov esi, dword [edx]
lea ebp, [ebp + ebp*2]
lea ebp, [esi + ebp*8]
movzx edi, byte [esp + 0x38]
movzx ebp, byte [ebp]
xchg edi, eax
cmp al, 1
xchg edi, eax
ja 0x51845c
xchg ebp, eax
cmp al, 4
xchg ebp, eax
je 0x518482
mov ebp, dword [esp + 0x40]
cmp ebp, ecx
jae 0x51861d
lea ecx, [ebp + ebp*2]
lea ecx, [esi + ecx*8]
cmp byte [ecx], 4
jne 0x5183f8
jmp 0x518482
xchg edi, eax
cmp al, 3
xchg edi, eax
jne 0x518475
xchg ebp, eax
cmp al, 4
xchg ebp, eax
jne 0x5183f8
mov ecx, dword [esp + 0x40]
test cl, 8
jne 0x5183f8
jmp 0x51848e
xchg ebp, eax
cmp al, 4
xchg ebp, eax
jne 0x5183f8
jmp 0x51849a
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp], edx
call fcn.00516890
mov eax, dword [esp + 4]
mov dword [esp], eax
call fcn.00516c50
mov eax, dword [esp + 4]
test eax, eax
je 0x5184d8
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
nop
mov ecx, dword [ecx + 4]
mov dword [esp + 0x10], ecx
xor ebx, ebx
jmp 0x5184e8
mov dword [esp + 0x7c], eax
add esp, 0x74
ret
add edx, 0x18
inc ebx
mov ecx, dword [esp + 0x10]
cmp ebx, ecx
jge 0x5184d8
lea edi, [esp + 0x20]
mov esi, edx
call fcn.004683c4
movzx ecx, byte [esp + 0x20]
cmp cl, 6
ja 0x518545
cmp cl, 1
jbe 0x5184e0
mov ecx, dword [eax + 4]
cmp ebx, ecx
jae 0x518616
mov ecx, dword [eax]
lea ebp, [ebx + ebx*8]
mov dword [ecx + ebp*4 + 0x1c], 0
mov dword [ecx + ebp*4 + 0x20], 0
mov esi, dword [0x860560]
test esi, esi
je 0x51853b
mov esi, dword [ecx + ebp*4 + 0x18]
call fcn.00467c40
mov dword [edi], esi
mov dword [ecx + ebp*4 + 0x18], 0
jmp 0x5184e0
cmp cl, 7
je 0x5184e0
cmp cl, 0xa
ja 0x5184e0
mov ecx, dword [eax + 4]
cmp ebx, ecx
jae 0x51860f
mov ecx, dword [eax]
lea ebp, [ebx + ebx*8]
mov dword [ecx + ebp*4 + 0x1c], 0
mov dword [ecx + ebp*4 + 0x20], 0
mov esi, dword [0x860560]
test esi, esi
je 0x518584
mov esi, dword [ecx + ebp*4 + 0x18]
call fcn.00467c40
mov dword [edi], esi
mov dword [ecx + ebp*4 + 0x18], 0
lea edi, [esp + 0x50]
xor eax, eax
call fcn.00467ee7
lea edi, [esp + 0x50]
lea esi, [esp + 0x20]
call fcn.004683c4
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 4]
cmp ebx, eax
jae 0x518606
mov eax, dword [ecx]
mov esi, dword [0x860560]
lea edi, [eax + ebp*4]
test esi, esi
je 0x5185f4
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], edi
lea eax, [0x61b1c0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x50]
mov dword [esp + 8], eax
call fcn.00411510
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0xc]
mov edi, dword [esp + 0x18]
lea esi, [esp + 0x50]
call fcn.004683a6
mov eax, dword [esp + 0x14]
jmp 0x5184e0
mov ecx, eax
mov eax, ebx
call fcn.00467cb0
mov eax, ebx
call fcn.00467cb0
mov eax, ebx
call fcn.00467cb0
mov eax, ebp
call fcn.00467cc0
mov eax, ebp
call fcn.00467cc0
call fcn.00467cb0
nop
call fcn.00466840
jmp fcn.00518390