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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x18]
cmp eax, dword [ecx + 8]
jbe 0x53a190
sub esp, 0x98
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 4], eax
call fcn.0053d430
movzx eax, byte [esp + 8]
movzx ecx, byte [esp + 0x11]
mov edx, dword [esp + 0xc]
movzx ebx, byte [esp + 0x10]
test cl, cl
je 0x539daa
mov byte [esp + 0x42], al
mov dword [esp + 0x50], edx
mov byte [esp + 0x43], bl
xor ecx, ecx
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x539e2a
lea eax, [0x6c01c5]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 0x19
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0x19
call fcn.00408970
mov eax, dword [esp + 8]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
lea ecx, [0x895760]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], eax
add esp, 0x98
ret
mov esi, dword [esp + 0x48]
inc esi
mov eax, ecx
mov ecx, ebx
mov ebp, esi
mov esi, dword [esp + 0x58]
mov edi, edx
mov edx, dword [esp + 0x50]
movzx ebx, byte [esp + 0x43]
mov dword [esp + 0x58], esi
mov dword [esp + 0x48], ebp
mov esi, dword [esp + 0xa0]
cmp esi, ecx
jle 0x53a022
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], esi
mov edx, dword [esp + 0xa4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.00539730
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x64], edx
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
movzx edi, byte [esp + 0x1c]
mov edx, dword [esp + 0x28]
test ecx, ecx
jne 0x539fe8
cmp ebx, 0x14
jg 0x539ea6
cmp ebx, 0xc
je 0x539ec6
cmp ebx, 0x12
je 0x539ec6
cmp ebx, 0x14
je 0x539ec6
jmp 0x539ecb
cmp ebx, 0x18
jg 0x539ebc
cmp ebx, 0x16
je 0x539ec6
cmp ebx, 0x17
jl 0x539ecb
mov ebx, 0x17
jmp 0x539ecb
cmp ebx, 0x1b
je 0x539ec6
cmp ebx, 0x1e
jne 0x539ecb
mov ebx, 0x13
mov dword [esp + 0x58], ecx
movzx ecx, byte [esp + 0x42]
test cl, cl
je 0x539ee3
movzx ebp, byte [esp + 0x43]
mov edi, dword [esp + 0x50]
jmp 0x539f06
test ebp, ebp
jne 0x539f82
movzx ebp, byte [esp + 0x43]
xchg edi, eax
xchg ebp, ebx
cmp al, bl
xchg ebp, ebx
xchg edi, eax
jne 0x539f82
mov edi, dword [esp + 0x50]
cmp ebx, edi
jne 0x539f82
lea ebx, [esi + eax]
cmp eax, ebx
jg 0x539f1c
mov eax, dword [esp + 0xa0]
cmp eax, ebx
jge 0x539e10
lea eax, [0x6bc2c8]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0x12
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov dword [esp + 4], 0x12
call fcn.00408970
mov eax, dword [esp + 8]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
lea ecx, [0x895774]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], eax
add esp, 0x98
ret
lea eax, [0x6bdcca]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0x15
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov dword [esp + 4], 0x15
call fcn.00408970
mov eax, dword [esp + 8]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
lea ecx, [0x895760]
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], eax
add esp, 0x98
ret
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], edx
add esp, 0x98
ret
mov dword [esp + 0x64], edi
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebp
call fcn.004a5e90
mov eax, dword [esp + 0x10]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x54], edx
lea edi, [esp + 0x80]
mov ebx, eax
xor eax, eax
call fcn.0045f76a
xor eax, eax
xor ecx, ecx
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x64]
jmp 0x53a093
mov edi, dword [esp + 0x4c]
inc edi
mov edx, dword [esp + 0x54]
mov ebp, ecx
mov esi, ebx
mov ebx, dword [esp + 0x60]
mov ecx, eax
mov eax, edi
mov edi, dword [esp + 0x48]
cmp eax, edi
jge 0x53a162
mov dword [esp + 0x4c], eax
mov dword [esp + 0x44], ecx
mov dword [esp], ebx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call fcn.004a3e60
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x9c]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0xa4]
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x18], ebx
lea edi, [esp + 0x1c]
lea esi, [esp + 0x80]
call fcn.0045fc44
call fcn.0053a1a0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
test ecx, ecx
je 0x53a07e
mov eax, dword [esp + 0x60]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], ebx
add esp, 0x98
ret
mov dword [esp + 0xb8], ebx
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], edx
mov dword [esp + 0xc4], ebp
mov dword [esp + 0xc8], esi
add esp, 0x98
ret
call fcn.0045e260
jmp fcn.00539d40