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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5588a1
sub esp, 0x54
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
xor eax, eax
mov dword [esp + 0x50], eax
xor eax, eax
jmp 0x5586bf
inc edi
mov byte [esp + 0x3c], al
mov eax, dword [esp + 0x48]
mov dword [esp + 0x50], eax
mov eax, edi
mov edi, ebx
mov ebx, esi
mov esi, ebp
mov ebp, edx
mov edx, ecx
movzx ecx, byte [esp + 0x3c]
mov byte [esp + 0x22], cl
mov ecx, dword [esp + 0x5c]
cmp ecx, eax
jle 0x558881
mov dword [esp + 0x24], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], esi
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], edi
mov ecx, dword [esp + 0x58]
lea ebx, [ecx + eax*8]
mov ebp, dword [ebx + 4]
mov dword [esp + 0x44], ebp
mov ebx, dword [ebx]
mov dword [esp + 0x28], ebx
mov edx, dword [esp + 0x64]
mov esi, dword [edx]
mov dword [esp], ebx
mov dword [esp + 4], ebp
call esi
movzx eax, byte [esp + 8]
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x558724
movzx ebx, byte [esp + 0x22]
cmp bl, al
jne 0x5587d4
mov ebx, dword [esp + 0x38]
lea ebp, [ebx + 1]
mov esi, dword [esp + 0x30]
cmp esi, ebp
jb 0x558739
mov edx, dword [esp + 0x4c]
jmp 0x55877f
mov byte [esp + 0x23], al
lea eax, [0x63d4e0]
mov dword [esp], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.004484a0
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
inc eax
mov ecx, dword [esp + 0x24]
mov edx, ebp
mov ebp, eax
mov esi, ebx
movzx eax, byte [esp + 0x23]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x38], ebp
mov edi, ecx
lea ecx, [edx + ebx*8]
mov ebp, dword [esp + 0x28]
mov dword [ecx], ebp
mov ecx, dword [0x84d450]
lea ebx, [edx + ebx*8 + 4]
test ecx, ecx
jne 0x5587a4
mov ecx, dword [esp + 0x44]
mov dword [ebx], ecx
jmp 0x5587b7
mov ecx, edi
mov edi, ebx
mov ebp, eax
mov eax, dword [esp + 0x44]
call fcn.0045f3a0
mov eax, ebp
mov edi, ecx
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x38]
jmp 0x5586a1
mov ebp, dword [esp + 0x34]
lea esi, [ebp + 1]
mov eax, ecx
mov ecx, dword [esp + 0x2c]
cmp ecx, esi
jb 0x5587eb
mov edx, dword [esp + 0x50]
jmp 0x55882d
lea eax, [0x63d4e0]
mov dword [esp], eax
mov edx, dword [esp + 0x50]
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], esi
call fcn.004484a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
lea esi, [ecx + 1]
movzx ebx, byte [esp + 0x22]
mov ebp, dword [esp + 0x34]
mov edx, eax
mov ecx, edi
mov eax, dword [esp + 0x24]
mov edi, ecx
lea ecx, [edx + ebp*8]
mov ebx, dword [esp + 0x28]
mov dword [ecx], ebx
mov ecx, dword [0x84d450]
lea ebx, [edx + ebp*8 + 4]
test ecx, ecx
jne 0x55884e
mov ecx, dword [esp + 0x44]
mov dword [ebx], ecx
jmp 0x558861
mov ecx, edi
mov edi, ebx
mov ebp, eax
mov eax, dword [esp + 0x44]
call fcn.0045f3a0
mov eax, ebp
mov edi, ecx
mov ecx, dword [esp + 0x38]
mov ebx, edi
mov ebp, esi
mov dword [esp + 0x48], edx
mov edi, eax
movzx eax, byte [esp + 0x22]
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x4c]
jmp 0x5586a1
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x50]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], edi
add esp, 0x54
ret
call fcn.0045df90
jmp fcn.00558670