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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5808f4
sub esp, 0x6c
call fcn.00580360
mov eax, dword [esp + 0xc]
mov ecx, dword [esp]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0x10]
test eax, eax
jne 0x5808ca
mov dword [esp + 0x2c], edx
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x70]
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x580654
inc ebx
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x2c]
cmp ebx, edx
jge 0x5808bf
mov ecx, dword [ecx + ebx*4]
mov edx, dword [ecx + 4]
test edx, edx
jne 0x580669
mov edx, dword [ecx + 0x48]
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], edi
mov dword [esp + 0x28], ebp
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], edx
test eax, eax
je 0x580685
cmp eax, edx
jne 0x58064b
mov dword [esp + 0x44], ecx
mov eax, dword [ecx + 0x28]
mov dword [esp], eax
call fcn.00496bb0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x34], ecx
lea edi, [esp + 0x4c]
mov edx, eax
xor eax, eax
call fcn.00460de8
mov eax, dword [esp + 0x20]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x54], edx
mov eax, dword [esp + 0x34]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x44]
cmp dword [eax + 0x44], 1
jne 0x5806d3
mov dword [esp + 0x68], 1
mov ecx, dword [eax + 0x40]
cmp ecx, 0x18
ja 0x580884
cmp ecx, 9
ja 0x580862
cmp ecx, 6
jne 0x580854
or dword [esp + 0x68], 0x12
mov ecx, dword [eax + 0x3c]
cmp ecx, 0xffffffff
jne 0x58084b
mov dword [esp + 0x50], 0xffffffff
mov ecx, dword [eax + 0x34]
test ecx, ecx
ja 0x5807f4
mov eax, dword [esp + 0x24]
lea ecx, [eax + 1]
mov edx, dword [esp + 0x28]
cmp edx, ecx
jb 0x5807ba
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x34], ecx
mov ebp, dword [0x10fd360]
shl eax, 5
lea edi, [ebx + eax]
test ebp, ebp
jne 0x58078e
lea esi, [esp + 0x4c]
call fcn.004612b0
mov eax, dword [esp + 0x70]
cmp dword [esp + 0x4c], eax
je 0x580764
mov ebp, edx
mov esi, dword [esp + 0x34]
mov edi, ebx
mov ebx, dword [esp + 0x38]
jmp 0x58064b
mov eax, dword [esp + 0x34]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
add esp, 0x6c
ret
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], edx
lea eax, [0xb26680]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x4c]
mov dword [esp + 8], eax
call fcn.00411810
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x48]
jmp 0x580749
lea ebx, [0xb26680]
mov dword [esp], ebx
mov ebp, dword [esp + 0x3c]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.00447080
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + 1]
mov eax, dword [esp + 0x24]
jmp 0x58072c
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00446f30
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 0x34]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
cmp edx, 8
jle 0x58082b
mov edx, 8
add ecx, 0x2c
cmp eax, ecx
je 0x580715
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004614f0
jmp 0x580715
mov dword [esp + 0x50], ecx
jmp 0x58070a
cmp ecx, 9
je 0x5806f1
jmp 0x5806f6
cmp ecx, 0x17
jne 0x580871
or dword [esp + 0x68], 0x18
jmp 0x5806f6
cmp ecx, 0x18
jne 0x5806f6
or dword [esp + 0x68], 0x14
jmp 0x5806f6
cmp ecx, 0x47
ja 0x5808a6
cmp ecx, 0x25
jne 0x580898
or dword [esp + 0x68], 0x1a
jmp 0x5806f6
cmp ecx, 0x47
je 0x5806f1
jmp 0x5806f6
cmp ecx, 0x83
je 0x580867
cmp ecx, 0x90
je 0x5806f1
jmp 0x5806f6
mov edx, ebp
mov eax, esi
mov ebx, edi
jmp 0x580768
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ebx
add esp, 0x6c
ret
call fcn.0045f5f0
jmp fcn.00580600