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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5084be
sub esp, 0x68
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x94]
mov ebx, edx
sub edx, ecx
lea eax, [ecx - 1]
cmp ecx, eax
jbe 0x5084b8
mov ebp, dword [esp + 0x90]
mov ebp, dword [ebp + ecx*4 - 4]
nop
nop
cmp ebp, 0x10000
jb 0x5080b5
shr ebp, 0x10
mov eax, 0x10
jmp 0x5080b7
xor eax, eax
cmp ebp, 0x100
jb 0x5080c5
shr ebp, 8
add eax, 8
cmp ebp, 0x100
jae 0x5084ac
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], eax
lea eax, [0x675b14]
movzx eax, byte [eax + ebp]
mov dword [esp + 0x54], eax
mov dword [esp], ecx
call fcn.00502fe0
mov eax, dword [esp + 4]
mov dword [esp + 0x60], eax
mov ecx, dword [eax]
mov dword [esp + 0x64], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x38], edx
mov ebx, dword [eax + 8]
mov dword [esp + 0x3c], ebx
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0x90]
mov dword [esp + 0xc], ebp
mov ebp, dword [esp + 0x94]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0x98]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x54]
lea esi, [edi + esi - 0x20]
xchg esi, ebx
neg ebx
xchg esi, ebx
mov dword [esp + 0x34], esi
mov dword [esp + 0x18], esi
call fcn.00509f70
mov ecx, dword [esp + 0x88]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x80]
cmp edx, eax
jl 0x508177
jb 0x5084a5
mov ebx, dword [esp + 0x78]
jmp 0x5081e8
test ecx, ecx
jne 0x5081b2
lea eax, [0x62ec80]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00447580
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x88]
mov edx, 1
mov ebx, eax
mov eax, 1
jmp 0x5081e8
mov dword [esp + 0x40], eax
lea edx, [0x62ec80]
mov dword [esp], edx
mov dword [esp + 4], eax
lea ebx, [ecx + 5]
mov dword [esp + 0x2c], ebx
mov dword [esp + 8], ebx
call fcn.00447580
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x2c]
mov ebx, eax
mov eax, dword [esp + 0x40]
cmp ecx, edx
ja 0x5084a0
mov dword [esp + 0x2c], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x58], ebx
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x84]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
call fcn.00509f70
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x24]
cmp ecx, edx
jae 0x508497
mov ebx, dword [esp + 0x58]
mov dword [ebx + ecx*4], eax
mov eax, dword [esp + 0x74]
test eax, eax
jle 0x508270
mov ebp, dword [esp + 0x6c]
lea esi, [ebp + eax*4 - 4]
mov edi, dword [esp + 0x2c]
mov ecx, edi
lea edi, [ebx + edi*4 - 4]
cmp edi, esi
jne 0x508278
xor eax, eax
xor ebp, ebp
jmp 0x508278
mov ecx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x4c]
lea edi, [esi + 1]
cmp eax, edi
jl 0x50828a
jae 0x508301
jmp 0x50848e
test esi, esi
jne 0x5082c8
lea eax, [0x62ec80]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00447580
mov ebp, dword [esp + 0xc]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x58]
mov edi, 1
mov eax, 1
jmp 0x508301
mov dword [esp + 0x44], edi
lea eax, [0x62ec80]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esi + 5]
mov dword [esp + 0x30], eax
mov dword [esp + 8], eax
call fcn.00447580
mov ebp, dword [esp + 0xc]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x28], edi
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x30], eax
mov esi, dword [esp + 0x94]
cmp esi, 0x64
jge 0x50834f
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov esi, dword [esp + 0x64]
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x38]
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x20], esi
call fcn.005084d0
jmp 0x508383
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov esi, dword [esp + 0x64]
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x38]
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x20], esi
call fcn.00508a10
nop
lea eax, [0x825840]
mov dword [esp], eax
lea eax, [0x65ec60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.00465b90
nop
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x5c]
mov edx, eax
jmp 0x5083b3
mov eax, ebx
test eax, eax
jle 0x5083ca
lea ebx, [eax - 1]
cmp edx, ebx
jbe 0x508485
mov ebp, dword [ecx + eax*4 - 4]
test ebp, ebp
je 0x5083b1
mov edx, dword [esp + 0x30]
cmp eax, edx
ja 0x50847e
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov ecx, dword [esp + 0x24]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x18], ebx
call fcn.00509fc0
nop
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x58]
mov edx, eax
jmp 0x508419
mov eax, ebx
test eax, eax
jle 0x50842c
lea ebx, [eax - 1]
cmp edx, ebx
jbe 0x508475
mov ebp, dword [ecx + eax*4 - 4]
test ebp, ebp
je 0x508417
mov edx, dword [esp + 0x2c]
cmp eax, edx
ja 0x50846e
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x9c], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], edx
add esp, 0x68
ret
mov ecx, eax
call fcn.0045e7d0
mov eax, ebx
mov ecx, edx
call fcn.0045e790
mov ecx, eax
call fcn.0045e7d0
mov eax, ebx
mov ecx, edx
call fcn.0045e790
mov ecx, edi
mov edx, eax
call fcn.0045e7d0
mov eax, ecx
mov ecx, edx
call fcn.0045e790
call fcn.0045e7d0
mov ecx, eax
call fcn.0045e7d0
mov eax, ebp
mov ecx, 0x100
call fcn.0045e7a0
call fcn.0045e790
nop
call fcn.0045d2d0
jmp fcn.00508060