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

Disassembly:
sub esp, 0x1c
mov edx, dword [esp + 0x20]
push ebx
push ebp
push esi
mov esi, ecx
lea eax, [esp + 0x14]
push edi
lea ecx, [esp + 0x1c]
lea edi, [esi + 8]
push eax
push ecx
push edx
mov ecx, edi
mov dword [esp + 0x20], edi
call fcn.0059aca0
test eax, eax
jne 0x5983e7
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x1c
ret 0x10
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x34]
lea ebp, [esi + 0x218]
push ecx
mov ecx, edi
mov dword [esp + 0x14], ebp
mov dword [ebp], eax
mov eax, dword [esp + 0x40]
mov dword [ebp + 4], 0
mov dword [esi + 0x1c], eax
mov dword [esi + 0x124], eax
call fcn.00598d30
test eax, eax
jne 0x59842b
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
add esp, 0x1c
ret 0x10
mov edx, dword [esp + 0x38]
lea ecx, [esi + 0x110]
push edx
mov dword [esp + 0x38], ecx
call fcn.00598d30
test eax, eax
jne 0x598452
pop edi
pop esi
pop ebp
mov eax, 0xfffffffd
pop ebx
add esp, 0x1c
ret 0x10
mov eax, dword [esi + 0x74]
mov ebx, 0x600000
test eax, eax
jg 0x598468
jl 0x598465
cmp dword [esi + 0x70], ebx
jae 0x598468
mov ebx, dword [esi + 0x70]
push ebx
call fcn.005e7a99
mov edi, eax
add esp, 4
test edi, edi
jne 0x598486
pop edi
pop esi
pop ebp
mov eax, 0xfffffffc
pop ebx
add esp, 0x1c
ret 0x10
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
push ebp
push ebx
push edi
push eax
call fcn.00598dc0
test eax, eax
je 0x5984af
mov ecx, dword [esi + 0x78]
mov eax, dword [esi + 0x70]
cmp ecx, eax
jne 0x598486
mov edx, dword [esi + 0x7c]
mov eax, dword [esi + 0x74]
cmp edx, eax
jne 0x598486
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
push ebp
push ebx
push edi
push eax
call fcn.00598dc0
test eax, eax
je 0x5984e4
mov ecx, dword [esi + 0x180]
mov eax, dword [esi + 0x178]
cmp ecx, eax
jne 0x5984af
mov edx, dword [esi + 0x184]
mov eax, dword [esi + 0x17c]
cmp edx, eax
jne 0x5984af
mov eax, dword [ebp]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
sub eax, ecx
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 4]
sbb eax, ebx
push edi
mov dword [esp + 0x2c], eax
call fcn.005e7026
mov eax, dword [esi + 0x24]
add esp, 4
test eax, eax
jne 0x59851d
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x1c
ret 0x10
mov eax, dword [esi + 0x12c]
test eax, eax
jne 0x598536
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x1c
ret 0x10
mov ebx, dword [esp + 0x14]
mov ecx, ebx
call fcn.00599c00
mov edi, dword [esp + 0x34]
mov ecx, edi
call fcn.00599c00
mov eax, dword [esi + 0x1a8]
mov ecx, ebx
push eax
call fcn.0059a0f0
mov ecx, dword [esi + 0xa0]
push ecx
mov ecx, edi
call fcn.0059a0f0
mov edx, dword [esi + 0x154]
mov eax, dword [esi + 0x150]
mov ecx, dword [esi + 0x140]
sub edx, eax
mov eax, dword [esi + 0x48]
sub edx, ecx
mov ecx, dword [esi + 0x38]
sub edx, eax
mov eax, dword [esi + 0x134]
sub edx, ecx
mov ecx, dword [esi + 0x4c]
add edx, eax
mov eax, dword [esi + 0x40]
add edx, ecx
add edx, eax
mov eax, dword [esi + 0x2c]
lea ecx, [edx + eax + 0x50]
mov edx, dword [esp + 0x30]
push ecx
push edx
mov ecx, ebx
call fcn.0059ab60
test eax, eax
jne 0x5985c1
pop edi
pop esi
pop ebp
mov eax, 0xfffffff9
pop ebx
add esp, 0x1c
ret 0x10
mov edx, dword [ebp]
mov eax, dword [esp + 0x3c]
add edx, 8
mov dword [ebp], edx
mov ecx, dword [ebp + 4]
adc ecx, 0
cmp eax, 0x40
mov dword [ebp + 4], ecx
je 0x5987b8
mov ebx, dword [esi + 0x118]
test ebx, ebx
je 0x59865a
mov eax, dword [esi + 0x10]
test eax, eax
mov dword [esp + 0x38], eax
je 0x59865a
mov ebp, dword [esi + 0x84]
test ebp, ebp
jne 0x598609
mov eax, dword [esi + 0x18c]
test eax, eax
je 0x598652
mov eax, dword [esi + 0x18c]
push 0
push 0x3e8
push 0
push eax
call fcn.005e9a70
push 0
push ebx
push edx
push eax
call fcn.005e9080
push 0
push 0x3e8
mov edi, eax
push 0
push ebp
inc edi
call fcn.005e9a70
mov ecx, dword [esp + 0x38]
push 0
push ecx
push edx
push eax
call fcn.005e9080
mov ebp, dword [esp + 0x10]
inc eax
jmp 0x5987ca
mov ebp, dword [esp + 0x10]
mov edi, dword [esp + 0x34]
cmp dword [esp + 0x3c], 0x80
je 0x5987b8
mov edi, dword [esi + 0x190]
test edi, edi
je 0x5986d0
test ebx, ebx
je 0x5986d0
mov eax, dword [esi + 0x88]
test eax, eax
mov dword [esp + 0x3c], eax
je 0x5986d0
mov ebp, dword [esi + 0x10]
test ebp, ebp
je 0x5986cc
push 0
push 0x3e8
push 0
push edi
call fcn.005e9a70
push 0
push ebx
push edx
push eax
call fcn.005e9080
mov edx, dword [esp + 0x3c]
push 0
push 0x3e8
push 0
push edx
mov edi, eax
call fcn.005e9a70
push 0
push ebp
push edx
push eax
call fcn.005e9080
mov ebp, dword [esp + 0x10]
jmp 0x5987ca
mov ebp, dword [esp + 0x10]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x59870c
mov eax, dword [esi + 0x11c]
test eax, eax
jne 0x5986ec
test ebx, ebx
je 0x59870c
test eax, eax
je 0x5986ee
mov ebx, eax
push 0
push 0x3e8
push 0
push ecx
call fcn.005e9a70
push 0
push ebx
push edx
push eax
call fcn.005e9080
mov edi, eax
inc edi
jmp 0x59873b
mov eax, dword [esi + 0x11c]
test eax, eax
jne 0x59871e
test ebx, ebx
je 0x59873b
test eax, eax
je 0x598720
mov ebx, eax
push 0
push 0x3e8
push 0
push edi
call fcn.005e9a70
push 0
push ebx
push edx
push eax
call fcn.005e9080
mov edi, eax
mov ecx, dword [esi + 0x84]
test ecx, ecx
je 0x59877a
mov eax, dword [esi + 0x14]
test eax, eax
jne 0x598757
mov edx, dword [esi + 0x10]
test edx, edx
je 0x59877a
test eax, eax
je 0x59875b
mov esi, eax
jmp 0x59875e
mov esi, dword [esi + 0x10]
push 0
push 0x3e8
push 0
push ecx
call fcn.005e9a70
push 0
push esi
push edx
push eax
call fcn.005e9080
inc eax
jmp 0x5987ca
mov ebx, dword [esi + 0x14]
test ebx, ebx
jne 0x598797
mov eax, dword [esi + 0x10]
test eax, eax
jne 0x598790
mov eax, dword [esi + 0x88]
jmp 0x5987ca
test ebx, ebx
jne 0x598797
mov ebx, dword [esi + 0x10]
mov eax, dword [esi + 0x88]
push 0
push 0x3e8
push 0
push eax
call fcn.005e9a70
push 0
push ebx
push edx
push eax
call fcn.005e9080
jmp 0x5987ca
mov ecx, edi
call fcn.0059a2e0
mov ecx, dword [esp + 0x14]
mov edi, eax
call fcn.0059a2e0
cmp edi, eax
jbe 0x5987d0
mov eax, edi
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x14]
push eax
push ebp
push esi
mov ecx, edi
call fcn.0059aa90
push ebp
push 1
push esi
mov ecx, edi
call fcn.0059a370
mov ecx, dword [esp + 0x34]
push ebp
push 2
push esi
call fcn.0059a370
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x20]
push edx
push eax
push ecx
push esi
mov ecx, edi
call fcn.0059abc0
neg eax
sbb eax, eax
pop edi
and eax, 9
pop esi
pop ebp
add eax, 0xfffffff8
pop ebx
add esp, 0x1c
ret 0x10