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

Disassembly:
mov ecx, dword [0x14a5898]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5982ec
sub esp, 0x64
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
lea eax, [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], 0x20
call fcn.004fa6a0
mov dword [esp + 0x25], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
xor edx, edx
jmp 0x598144
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], ebp
mov dword [esp + 0x60], esi
add ebx, esi
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0046f900
mov eax, dword [esp + 0x44]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x40]
lea edx, [eax + 1]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
cmp eax, edx
jle 0x598291
mov dword [esp + 0x40], edx
mov ebx, dword [ecx + edx*4]
test edx, edx
jle 0x5981de
mov ebp, dword [esp + 0x4c]
nop
nop
test ebp, ebp
je 0x598172
lea esi, [esp + 0x4c]
cmp ebp, esi
je 0x59817a
jmp 0x5982d3
lea ebp, [esp + 0x4c]
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x54]
inc esi
mov edi, dword [esp + 0x50]
cmp ebp, esi
jae 0x5981d5
mov dword [esp + 0x38], ebx
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0xc68900]
mov dword [esp + 0x10], eax
call fcn.00452510
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x58], eax
mov dword [esp + 0x50], edi
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x54], esi
mov byte [esi + edi - 1], 0x2e
lea eax, [esp + 0x25]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x13
mov dword [esp + 0xc], ebx
sar ebx, 0x1f
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0xa
call fcn.004b1110
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
nop
test eax, eax
je 0x59822b
lea ebx, [esp + 0x4c]
cmp eax, ebx
je 0x598233
jmp 0x5982bb
lea eax, [esp + 0x4c]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x58]
mov ebx, dword [esp + 0x54]
lea ebp, [ebx + edx]
mov esi, dword [esp + 0x50]
cmp eax, ebp
jae 0x5980ff
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x48], ebx
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [0xc68900]
mov dword [esp + 0x10], eax
call fcn.00452510
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x48]
jmp 0x5980ff
mov eax, dword [esp + 0x50]
mov ecx, eax
neg eax
mov edx, dword [esp + 0x54]
cmp edx, eax
ja 0x5982ad
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edx
add esp, 0x64
ret
test ecx, ecx
je 0x5982b6
call fcn.004658e0
call fcn.00465920
lea eax, [0xc68880]
mov dword [esp], eax
lea eax, [0xee9a20]
mov dword [esp + 4], eax
call fcn.0043b1a0
lea eax, [0xc68880]
mov dword [esp], eax
lea eax, [0xee9a20]
mov dword [esp + 4], eax
call fcn.0043b1a0
nop
call fcn.0046db70
jmp fcn.00598080