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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x58d8e7
sub esp, 0x70
lea eax, [0x6b42e0]
mov dword [esp], eax
mov dword [esp + 4], 0x11e
mov dword [esp + 8], 0x11e
call fcn.00437440
mov eax, dword [esp + 0xc]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x38], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x34], edx
lea ebx, [0x6b42e0]
mov dword [esp], ebx
mov dword [esp + 4], 0x1e
mov dword [esp + 8], 0x1e
call fcn.00437440
mov eax, dword [esp + 0xc]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x30], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x2c], edx
lea ebx, [0x6b4b60]
mov dword [esp], ebx
mov dword [esp + 4], 0x13d
mov dword [esp + 8], 0x13d
call fcn.00437440
mov eax, dword [esp + 0xc]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x24], edx
lea ebx, [0x6c74a0]
mov dword [esp], ebx
mov dword [esp + 4], 0x11e
mov dword [esp + 8], 0x11e
call fcn.00437440
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x58], edx
lea ebx, [0x6dbca0]
mov dword [esp], ebx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x1c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x58d8ce
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
lea ecx, [0x6c74a0]
mov dword [esp], ecx
mov dword [esp + 4], 0x13
mov dword [esp + 8], 0x13
call fcn.00437440
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x1c], edx
lea ebx, [0x6dbca0]
mov dword [esp], ebx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x1c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x58d8b5
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
lea ecx, [0x6c74a0]
mov dword [esp], ecx
mov dword [esp + 4], 0x1e
mov dword [esp + 8], 0x1e
call fcn.00437440
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x58], edx
lea ebx, [0x6dbca0]
mov dword [esp], ebx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x1c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 8], ecx
mov ecx, dword [0x884700]
test ecx, ecx
jne 0x58d89c
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
lea ecx, [0x6efdc0]
mov dword [esp], ecx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x78]
mov dword [eax], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 4]
test ecx, ecx
jne 0x58d883
mov ecx, dword [esp + 0x7c]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 0x160], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 0x164], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0x15c]
test ecx, ecx
jne 0x58d86a
mov ecx, dword [esp + 0x64]
mov dword [eax + 0x15c], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 0x16c], ecx
mov ecx, dword [esp + 0x2c]
mov dword [eax + 0x170], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0x168]
test ecx, ecx
jne 0x58d851
mov ecx, dword [esp + 0x60]
mov dword [eax + 0x168], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x178], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x17c], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0x174]
test ecx, ecx
jne 0x58d838
mov ecx, dword [esp + 0x5c]
mov dword [eax + 0x174], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0x180]
test ecx, ecx
jne 0x58d81f
mov ecx, dword [esp + 0x44]
mov dword [eax + 0x180], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0x188]
test ecx, ecx
jne 0x58d806
mov ecx, dword [esp + 0x4c]
mov dword [eax + 0x188], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0x184]
test ecx, ecx
jne 0x58d7ed
mov ecx, dword [esp + 0x48]
mov dword [eax + 0x184], ecx
mov edi, dword [esp + 0x74]
test byte [edi], al
mov ecx, dword [0x884700]
lea edx, [edi + 0x18]
test ecx, ecx
jne 0x58d7d8
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x80]
test eax, eax
je 0x58d716
cmp eax, 0xfffffffe
je 0x58d654
cmp eax, 1
jne 0x58d3f1
mov ecx, dword [0x86e4c4]
mov edx, dword [0x86e4c0]
cmp eax, ecx
jae 0x58d3ea
lea eax, [eax + eax*2]
lea esi, [edx + eax*8]
call fcn.0044a854
lea eax, [0x6b4b60]
mov dword [esp], eax
mov dword [esp + 4], 0xffff
mov dword [esp + 8], 0xffff
call fcn.00437440
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0xa0040], ecx
mov dword [ebx + 0xa0044], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0xa003c]
test eax, eax
jne 0x58d3d5
mov dword [ebx + 0xa003c], edx
mov eax, dword [0x884700]
lea ecx, [ebx + 0x20]
test eax, eax
jne 0x58d3ba
lea eax, [0x7194cc]
mov dword [ebx + 0x20], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0x24]
test eax, eax
jne 0x58d39f
lea eax, [0x7194c4]
mov dword [ebx + 0x24], eax
lea eax, [0x6b4b60]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xffff
call fcn.00437440
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x54], edx
lea ebx, [0x6d1e80]
mov dword [esp], ebx
call fcn.0040cd70
mov eax, dword [esp + 4]
mov dword [esp + 0x50], eax
mov dword [eax + 0x2000c], 0xffff
test byte [eax], al
mov ecx, dword [esp + 0x34]
mov dword [eax + 0x20004], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 0x20008], ecx
mov ecx, dword [0x884700]
lea edx, [eax + 0x20000]
test ecx, ecx
jne 0x58d386
mov ecx, dword [esp + 0x54]
mov dword [eax + 0x20000], ecx
mov ecx, dword [0x884700]
mov edx, dword [esp + 0x74]
lea ebx, [edx + 0x2c]
test ecx, ecx
jne 0x58d371
mov dword [edx + 0x2c], eax
lea eax, [0x6cc760]
mov dword [esp], eax
mov dword [esp + 4], 0xffff
mov dword [esp + 8], 0xffff
call fcn.00437440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0xa0058], eax
mov dword [ebx + 0xa005c], edx
mov eax, dword [0x884700]
lea edx, [ebx + 0xa0054]
test eax, eax
jne 0x58d363
mov dword [ebx + 0xa0054], ecx
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x70
ret
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.0040d5a0
jmp 0x58d349
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edx, dword [esp + 0x74]
jmp 0x58d2f9
mov dword [esp], edx
mov ecx, dword [esp + 0x54]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x50]
jmp 0x58d2e5
mov dword [esp], ecx
lea eax, [0x7194c4]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d25b
mov dword [esp], ecx
lea eax, [0x7194cc]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d241
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d227
call fcn.00424680
ud2
cmp eax, 0xffffffff
jne 0x58d5c5
mov eax, 6
mov ecx, dword [0x86e4c4]
mov edx, dword [0x86e4c0]
cmp eax, ecx
jae 0x58d5be
lea eax, [eax + eax*2]
lea esi, [edx + eax*8]
call fcn.0044a854
lea eax, [0x6b4b60]
mov dword [esp], eax
mov dword [esp + 4], 0x10000
mov dword [esp + 8], 0x10000
call fcn.00437440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0xa0040], eax
mov dword [ebx + 0xa0044], ecx
mov eax, dword [0x884700]
lea ecx, [ebx + 0xa003c]
test eax, eax
jne 0x58d5a9
mov dword [ebx + 0xa003c], edx
mov dword [ebx + 0xa0034], 1
lea eax, [0x6cc760]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x4001
call fcn.00437440
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0xa0058], ecx
mov dword [ebx + 0xa005c], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0xa0054]
test eax, eax
jne 0x58d594
mov dword [ebx + 0xa0054], edx
mov dword [ebx + 0xa0060], 3
mov dword [ebx + 0xa0064], 0
mov byte [ebx + 0xa0050], 0
mov dword [ebx + 0xa0038], 0
mov dword [ebx + 0xa0068], 0
mov dword [ebx + 0x30], 0xffffffff
mov eax, dword [0x884700]
lea ecx, [ebx + 0x1c]
test eax, eax
jne 0x58d57c
lea eax, [0x7194e4]
mov dword [ebx + 0x1c], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0x20]
test eax, eax
jne 0x58d564
lea eax, [0x7194c8]
mov dword [ebx + 0x20], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0x24]
test eax, eax
jne 0x58d54d
lea eax, [0x7194c0]
mov dword [ebx + 0x24], eax
jmp 0x58d349
mov dword [esp], ecx
lea eax, [0x7194c0]
mov dword [esp + 4], eax
call fcn.0040d5a0
jmp 0x58d349
mov dword [esp], ecx
lea eax, [0x7194c8]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d532
mov dword [esp], ecx
lea eax, [0x7194e4]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d51c
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d4d0
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d472
call fcn.00424680
ud2
lea ecx, [eax - 2]
cmp ecx, 7
ja 0x58d5d2
jmp 0x58d3ff
mov dword [esp + 0x3c], eax
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
lea eax, [0x6b4260]
mov dword [esp], eax
lea eax, [esp + 0x3c]
mov dword [esp + 4], eax
call fcn.0040a880
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], eax
lea eax, [0x71778f]
mov dword [esp], eax
mov dword [esp + 4], 0x40
lea eax, [esp + 0x68]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.0049a940
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
add esp, 0x70
ret
lea eax, [0x6b4b60]
mov dword [esp], eax
mov dword [esp + 4], 0xffff
mov dword [esp + 8], 0xffff
call fcn.00437440
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0xa0040], ecx
mov dword [ebx + 0xa0044], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0xa003c]
test eax, eax
jne 0x58d704
mov dword [ebx + 0xa003c], edx
mov eax, dword [0x884700]
lea ecx, [ebx + 0x20]
test eax, eax
jne 0x58d6ec
lea eax, [0x7194cc]
mov dword [ebx + 0x20], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0x24]
test eax, eax
jne 0x58d6d5
lea eax, [0x7194d0]
mov dword [ebx + 0x24], eax
jmp 0x58d349
mov dword [esp], ecx
lea eax, [0x7194d0]
mov dword [esp + 4], eax
call fcn.0040d5a0
jmp 0x58d349
mov dword [esp], ecx
lea eax, [0x7194cc]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d6ba
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d6a4
lea eax, [0x6b4b60]
mov dword [esp], eax
mov dword [esp + 4], 0xffff
mov dword [esp + 8], 0xffff
call fcn.00437440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x74]
mov dword [ebx + 0xa0040], eax
mov dword [ebx + 0xa0044], edx
mov eax, dword [0x884700]
lea edx, [ebx + 0xa003c]
test eax, eax
jne 0x58d7c6
mov dword [ebx + 0xa003c], ecx
mov eax, dword [0x884700]
lea ecx, [ebx + 0x20]
test eax, eax
jne 0x58d7ae
lea eax, [0x7194cc]
mov dword [ebx + 0x20], eax
mov eax, dword [0x884700]
lea ecx, [ebx + 0x24]
test eax, eax
jne 0x58d797
lea eax, [0x7194d4]
mov dword [ebx + 0x24], eax
jmp 0x58d349
mov dword [esp], ecx
lea eax, [0x7194d4]
mov dword [esp + 4], eax
call fcn.0040d5a0
jmp 0x58d349
mov dword [esp], ecx
lea eax, [0x7194cc]
mov dword [esp + 4], eax
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d77c
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov ebx, dword [esp + 0x74]
jmp 0x58d766
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.0040d5a0
mov edi, dword [esp + 0x74]
jmp 0x58d193
mov dword [esp], edx
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x40]
jmp 0x58d179
mov dword [esp], edx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x40]
jmp 0x58d15b
mov dword [esp], edx
mov ecx, dword [esp + 0x44]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x40]
jmp 0x58d13d
mov dword [esp], edx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x40]
jmp 0x58d11f
mov dword [esp], edx
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x40]
jmp 0x58d0ed
mov dword [esp], edx
mov ecx, dword [esp + 0x64]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x40]
jmp 0x58d0bb
mov dword [esp], edx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x40]
jmp 0x58d089
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x48]
jmp 0x58d055
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x4c]
jmp 0x58cfe7
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
call fcn.0040d5a0
mov eax, dword [esp + 0x44]
jmp 0x58cf79
call fcn.004486b0
jmp fcn.0058ce50