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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x50e8f8
push eax
mov dword fs:[0], esp
sub esp, 0x38
lea eax, [esp + 0x10]
lea edx, [esp + 0xc]
push ebx
push ebp
mov ebx, ecx
push esi
push edi
lea ecx, [esp + 0x10]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.005826dc
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
cmp eax, ecx
mov edi, eax
jg 0x5828ce
mov ebp, dword [fcn.00518614]
mov eax, dword [ebx + 0x70]
mov ecx, dword [eax + 0x80]
mov esi, dword [ecx + edi*4]
mov edx, esi
shr edx, 0x10
je 0x5828c5
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc8]
test eax, eax
je 0x5828c5
push esi
mov ecx, ebx
call fcn.005827ec
test eax, eax
jge 0x5828c5
mov edx, dword [esi + 0x1c]
lea ecx, [esp + 0x24]
push ecx
push edx
call ebp
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x5828ae
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
jmp 0x5828b6
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x58]
sub eax, edx
sub eax, 2
sub ecx, eax
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0x10]
inc edi
cmp edi, eax
jle 0x582864
lea ecx, [esp + 0x34]
call fcn.00606b35
xor esi, esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x34], 0x525818
lea eax, [esp + 0x34]
mov ecx, ebx
push eax
mov dword [esp + 0x54], 1
call fcn.0058275c
mov ebp, dword [esp + 0x3c]
xor edx, edx
cmp ebp, esi
mov dword [esp + 0x14], esi
mov edi, 2
jle 0x582985
mov esi, dword [esp + 0x38]
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x5c]
mov ecx, dword [esi]
test eax, eax
je 0x582923
mov eax, dword [ecx + 0x78]
jmp 0x582929
mov eax, dword [ecx + 0x84]
mov ebp, dword [esp + 0x14]
sub eax, 2
add ebp, eax
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x5c]
test ebp, ebp
je 0x582946
mov eax, dword [ecx + 0x98]
jmp 0x58294c
mov eax, dword [ecx + 0x9c]
sub eax, 2
add edi, eax
test ebp, ebp
je 0x58295a
mov eax, dword [ecx + 0x7c]
jmp 0x582960
mov eax, dword [ecx + 0x80]
cmp edx, eax
jg 0x582973
test ebp, ebp
je 0x58296d
mov edx, dword [ecx + 0x7c]
jmp 0x582973
mov edx, dword [ecx + 0x80]
mov eax, dword [esp + 0x18]
add esi, 4
dec eax
mov dword [esp + 0x18], eax
jne 0x582914
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x58]
cmp edi, esi
jle 0x5829f0
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
cmp eax, ecx
mov eax, dword [esp + 0x10]
jl 0x5829a1
cmp ecx, eax
jge 0x5829d8
mov ecx, dword [ebx + 0x70]
push 1
inc eax
push ebx
push eax
add ecx, 0x7c
call fcn.00606a4e
mov ecx, dword [esp + 0x10]
push 1
inc ecx
push 0
push ecx
mov ecx, dword [ebx + 0x70]
add ecx, 0x7c
call fcn.00606a4e
mov edx, dword [esp + 0x20]
mov ecx, dword [ebx + 0x70]
push 1
push edx
add ecx, 0x7c
call fcn.00606cd5
lea ecx, [esp + 0x34]
mov dword [esp + 0x50], 0xffffffff
call fcn.00606b68
xor eax, eax
jmp 0x582af0
xor eax, eax
test ebp, ebp
jle 0x582a19
mov ecx, dword [esp + 0x5c]
test ecx, ecx
mov ecx, dword [esp + 0x38]
mov ecx, dword [ecx + eax*4]
je 0x582a0a
mov dword [ecx + 0x7c], edx
jmp 0x582a10
mov dword [ecx + 0x80], edx
mov ebp, dword [esp + 0x3c]
inc eax
cmp eax, ebp
jl 0x5829f6
mov eax, dword [esp + 0x14]
cmp eax, esi
jne 0x582a26
jmp 0x582ada
sub esi, eax
je 0x582ada
xor ebx, ebx
mov dword [esp + 0x58], esi
test ebp, ebp
jle 0x582ab3
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 0x5c]
test edi, edi
mov eax, dword [edx + ebx*4]
je 0x582a52
mov edx, dword [eax + 0x98]
mov ecx, dword [eax + 0x78]
jmp 0x582a5e
mov edx, dword [eax + 0x9c]
mov ecx, dword [eax + 0x84]
cmp ecx, edx
jne 0x582a66
test esi, esi
jl 0x582aa0
mov ecx, dword [eax + 0xc4]
test ecx, ecx
jne 0x582aa0
test esi, esi
jne 0x582a78
xor ecx, ecx
jmp 0x582a84
xor ecx, ecx
test esi, esi
setge cl
dec ecx
and ecx, 0xfffffffe
inc ecx
test edi, edi
je 0x582a8d
add eax, 0x78
jmp 0x582a92
add eax, 0x84
mov edx, dword [eax]
add edx, ecx
sub esi, ecx
mov dword [eax], edx
mov ebp, dword [esp + 0x3c]
je 0x582aa5
inc ebx
cmp ebx, ebp
jl 0x582a38
cmp dword [esp + 0x58], esi
je 0x582ab3
test esi, esi
jne 0x582a2e
xor ecx, ecx
xor eax, eax
cmp ebp, ecx
jle 0x582ad2
mov edx, dword [esp + 0x38]
inc eax
mov edx, dword [edx + eax*4 - 4]
mov dword [edx + 0xc4], ecx
mov ebp, dword [esp + 0x3c]
cmp eax, ebp
jl 0x582abb
cmp esi, ecx
jne 0x582a2e
lea ecx, [esp + 0x34]
mov dword [esp + 0x50], 0xffffffff
call fcn.00606b68
mov eax, 1
mov ecx, dword [esp + 0x48]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x44
ret 8