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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
and dword [ebp - 4], 0
and dword [ebp - 8], 0
push ebx
push esi
mov esi, dword [ebp + 0xc]
push dword [esi + 8]
call fcn.0058cfe0
push eax
push dword [ebp + 0x18]
push dword [esi + 0x50]
push 0x20000172
push 3
call fcn.0057cccd
add esp, 0x14
test byte [ebp + 0x18], 1
je 0x582402
push dword [ebp + 8]
mov eax, dword [ebp + 0x14]
add eax, 4
push eax
push dword [esi + 0x10]
push dword [esi + 0x48]
push dword [esi]
call fcn.00594f4a
mov ebx, eax
test ebx, ebx
jns 0x582402
push dword [ebp + 8]
push 0x43e2c0
push ebx
call 0x5ab1ed
add esp, 0xc
jmp 0x5828d8
lea eax, [ebp - 4]
push eax
push 0x20006
push dword [esi + 0x50]
push dword [esi + 0x4c]
call 0x5aee32
mov ebx, eax
test ebx, ebx
jns 0x58242e
push 0x43e29c
push ebx
call 0x5ab1ed
pop ecx
pop ecx
jmp 0x5828d8
test byte [ebp + 0x18], 2
push edi
je 0x58284d
push dword [esi + 0x54]
mov edi, 0x43ccc8
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
push dword [esi + 0x24]
mov edi, 0x43cc40
push dword [esi + 0x20]
push edi
push dword [ebp - 4]
call 0x5af351
mov ebx, eax
test ebx, ebx
js 0x58288d
push dword [esi + 0x2c]
mov edi, 0x43cca8
push dword [esi + 0x28]
push edi
push dword [ebp - 4]
call 0x5af351
mov ebx, eax
test ebx, ebx
js 0x58288d
push dword [esi + 0x1c]
mov edi, 0x43cc84
push dword [esi + 0x18]
push edi
push dword [ebp - 4]
call 0x5af351
mov ebx, eax
test ebx, ebx
js 0x58288d
push dword [esi + 0x34]
mov edi, 0x43cc64
push dword [esi + 0x30]
push edi
push dword [ebp - 4]
call 0x5af351
mov ebx, eax
test ebx, ebx
js 0x58288d
mov ecx, dword [esi + 0x38]
mov eax, dword [esi + 0x3c]
movzx edx, cx
push edx
mov edx, eax
shrd ecx, edx, 0x10
movzx ecx, cx
push ecx
movzx ecx, ax
push ecx
mov dword [ebp - 0xc], eax
shr eax, 0x10
push eax
push 0x43e27c
mov edi, 0x43cc0c
push edi
push dword [ebp - 4]
shr edx, 0x10
call 0x5af30f
mov ebx, eax
add esp, 0x1c
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x44]
test eax, eax
je 0x58252e
push eax
mov edi, 0x43cbcc
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x14]
test eax, eax
je 0x58254e
push eax
mov edi, 0x43cbb8
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
push 0x43abcc
push 0x43e274
mov edi, 0x43cbf0
push edi
push dword [ebp - 4]
call 0x5af30f
mov ebx, eax
add esp, 0x10
test ebx, ebx
js 0x58288d
push dword [esi + 0x54]
mov edi, 0x43cfcc
push 0x43e268
push edi
push dword [ebp - 4]
call 0x5af30f
mov ebx, eax
add esp, 0x10
test ebx, ebx
js 0x58288d
lea eax, [ebp - 8]
push eax
push dword [ebp + 0x10]
mov ebx, esi
call fcn.005812c1
test eax, eax
mov eax, dword [ebp - 8]
jns 0x5825ae
mov eax, dword [esi + 0x60]
push eax
mov edi, 0x43cc28
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5825e7
push eax
mov edi, 0x43cfac
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x68]
test eax, eax
je 0x582607
push eax
mov edi, 0x43cf7c
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x582627
push eax
mov edi, 0x43cf68
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x70]
test eax, eax
je 0x582647
push eax
mov edi, 0x43cf4c
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x74]
test eax, eax
je 0x582667
push eax
mov edi, 0x43cf30
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x78]
test eax, eax
je 0x582687
push eax
mov edi, 0x43cf14
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x5826c2
push eax
mov edi, 0x43cef0
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
push dword [esi + 0x7c]
mov edi, 0x43ced4
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x80]
test eax, eax
je 0x5826e5
push eax
mov edi, 0x43cec0
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x84]
test eax, eax
je 0x582708
push eax
mov edi, 0x43ceb0
push edi
push dword [ebp - 4]
call 0x5af269
mov ebx, eax
test ebx, ebx
js 0x58288d
mov eax, dword [esi + 0x88]
cmp eax, 1
jne 0x5827f8
mov edi, 0x43ce9c
push 1
push edi
push dword [ebp - 4]
call 0x5aed91
mov ebx, eax
test ebx, ebx
js 0x58288d
cmp dword [esi + 0x8c], 0
je 0x582758
push dword [esi + 0x90]
mov edi, 0x43ce4c
push edi
push dword [ebp - 4]
call 0x5aed91
mov ebx, eax
test ebx, ebx
js 0x58288d
cmp dword [esi + 4], 0
jne 0x582778
push 1
mov edi, 0x43ce2c
push edi
push dword [ebp - 4]
call 0x5aed91
mov ebx, eax
test ebx, ebx
js 0x58288d
push dword [esi + 0x54]
mov edi, 0x43ce00
push 0x43e238
push edi
push dword [ebp - 4]
call 0x5af30f
mov ebx, eax
add esp, 0x10
test ebx, ebx
js 0x58288d
cmp dword [esi + 0x88], 2
mov eax, 0x43e228
je 0x5827ae
mov eax, 0x43e210
push eax
push dword [esi + 0x54]
mov edi, 0x43cde0
push 0x43e1fc
push edi
push dword [ebp - 4]
call 0x5af30f
mov ebx, eax
add esp, 0x14
test ebx, ebx
js 0x58288d
cmp dword [esi + 0x98], 0
je 0x58282a
push dword [esi]
lea ebx, [esi + 0x94]
call fcn.00581626
mov ebx, eax
test ebx, ebx
jns 0x58282a
push 0x43e1dc
jmp 0x5828cf
cmp eax, 2
je 0x582731
push dword [esi + 0x54]
mov edi, 0x43ce84
push 0x43e1c0
push edi
push dword [ebp - 4]
call 0x5af30f
mov ebx, eax
add esp, 0x10
test ebx, ebx
js 0x58288d
mov edi, 0x43ce60
jmp 0x58271c
cmp dword [esi + 0x9c], 0
je 0x58284d
push dword [ebp + 0x10]
mov eax, esi
call fcn.0058220c
mov ebx, eax
test ebx, ebx
jns 0x58284d
push 0x43e198
jmp 0x5828cf
test byte [ebp + 0x18], 4
je 0x58289e
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
shrd ecx, eax, 0xa
shr eax, 0xa
test eax, eax
jb 0x58289e
ja 0x582875
test ecx, ecx
je 0x58289e
test eax, eax
jb 0x582878
ja 0x582875
cmp ecx, 0xffffffff
jbe 0x582878
or ecx, 0xffffffff
push ecx
mov edi, 0x43cf90
push edi
push dword [ebp - 4]
call 0x5aed91
mov ebx, eax
test ebx, ebx
jns 0x58289e
push edi
push 0x43d830
push ebx
call 0x5ab1ed
add esp, 0xc
jmp 0x5828d7
cmp dword [ebp + 0x1c], 1
jne 0x5828b7
push esi
call fcn.0059aef1
mov ebx, eax
test ebx, ebx
jns 0x5828b7
push 0x43e168
jmp 0x5828cf
push 0
push dword [ebp - 4]
xor eax, eax
inc eax
call fcn.00581ffa
mov ebx, eax
test ebx, ebx
jns 0x5828d7
push 0x43e148
push ebx
call 0x5ab1ed
pop ecx
pop ecx
pop edi
cmp dword [ebp - 8], 0
je 0x5828e6
push dword [ebp - 8]
call 0x5ab94f
cmp dword [ebp - 4], 0
je 0x5828f5
push dword [ebp - 4]
call dword [0x43a010]
pop esi
mov eax, ebx
pop ebx
leave
ret 0x20