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

Disassembly:
sub esp, 0x7c
mov dword [esp + 4], ecx
push ebx
mov ecx, dword [esp + 0x84]
push ebp
push esi
lea eax, [esp + 0x2c]
mov ecx, dword [ecx + 0x24]
push edi
mov esi, edx
push eax
call fcn.00405ab0
mov ebx, dword [esp + 0x30]
mov eax, dword [esi]
cmp eax, ebx
jge 0x5e0ed1
mov eax, dword [esi + 8]
test eax, eax
jle 0x5e0ed1
mov edx, dword [esi + 4]
mov eax, dword [esp + 0x34]
cmp edx, eax
jge 0x5e0ed1
mov eax, dword [esi + 0xc]
cmp eax, 0xffffff01
jle 0x5e0ed1
mov ebp, dword [esi]
mov ecx, dword [esi + 8]
mov edi, edx
mov edx, dword [esp + 0x94]
test ebp, ebp
mov esi, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x3c], edx
jge 0x5e0bd6
sub esi, ebp
xor ebp, ebp
cmp edi, 0xffffff01
jge 0x5e0bf4
mov ebx, 0xffffff01
sub ebx, edi
mov edi, 0xffffff01
add edx, ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x3c], edx
cmp ecx, ebx
jle 0x5e0bfa
mov ecx, ebx
mov ebx, dword [esp + 0x34]
cmp eax, ebx
jle 0x5e0c04
mov eax, ebx
sub eax, edi
sub ecx, ebp
add eax, edx
add ecx, esi
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x4c], esi
mov ecx, dword [eax + 0x24]
mov dword [esp + 0x50], edx
call fcn.00405860
mov edx, dword [esp + 0x34]
mov ebx, eax
shl eax, 5
sub eax, edx
xor ecx, ecx
cdq
sub eax, edx
sar eax, 1
test edi, edi
setle cl
dec ecx
and ecx, edi
add eax, ecx
cdq
and edx, 0xf
add eax, edx
mov ecx, eax
mov eax, ebx
sar ecx, 4
dec ecx
mov edx, ecx
sub edx, ebx
mov ebx, dword [esp + 0x30]
inc edx
shl eax, 6
shl edx, 5
sub eax, ebx
mov ebx, edx
cdq
sub eax, edx
mov edx, ebp
sar eax, 1
add edx, ebx
mov ebx, dword [esp + 0x90]
add eax, edx
cdq
and edx, 0x3f
add eax, edx
sar eax, 6
sub ecx, eax
mov dword [esp + 0x24], eax
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x24], ecx
push ecx
mov ecx, dword [ebx + 0x24]
push eax
call fcn.00405bf0
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x28], esi
sub esi, ebp
add ecx, esi
sub eax, edi
mov edi, dword [esp + 0x1c]
sub ecx, 0x20
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x20]
add edi, eax
push ecx
mov ecx, dword [ebx + 0x24]
mov dword [esp + 0x20], edi
call fcn.00405ad0
test al, al
je 0x5e0ed1
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x28], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x38], ecx
cmp ecx, eax
jge 0x5e0e7c
lea ecx, [esp + 0x28]
push ecx
mov ecx, dword [ebx + 0x24]
call fcn.00405ad0
test al, al
je 0x5e0e7c
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov ecx, dword [ebx + 0x24]
sub esp, 0xc
mov dword [esp + 0x50], edx
mov ebp, esp
mov dword [esp + 0x4c], eax
mov dword [esp + 0x54], esi
mov edi, dword [ecx]
mov dword [ebp], eax
mov dword [ebp + 4], edx
lea edx, [esp + 0x88]
push edx
mov dword [ebp + 8], esi
call dword [edi + 0x40]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov esi, dword [eax + 8]
mov edi, dword [eax + 0xc]
xor eax, eax
mov ax, word [ecx]
mov ebp, eax
mov eax, dword [esp + 0x3c]
mov ecx, eax
sub ecx, ebp
xor ebp, ebp
mov bp, word [edx]
mov edx, eax
sub edx, ebp
xor ebp, ebp
mov bp, word [esi]
mov esi, eax
sub esi, ebp
xor ebp, ebp
mov bp, word [edi]
add ecx, 0x10
sub eax, ebp
add esi, 0x10
add eax, 0x20
cmp ecx, edx
jge 0x5e0d93
mov edx, ecx
jmp 0x5e0d99
cmp ecx, eax
jle 0x5e0d99
mov eax, ecx
cmp esi, edx
jge 0x5e0da1
mov edx, esi
jmp 0x5e0da7
cmp esi, eax
jle 0x5e0da7
mov eax, esi
cmp edx, dword [esp + 0x10]
jge 0x5e0db1
mov dword [esp + 0x10], edx
cmp edx, dword [esp + 0x58]
jge 0x5e0e53
cmp eax, dword [esp + 0x50]
jle 0x5e0e53
mov ecx, dword [esp + 0x40]
sub esp, 0xc
mov esi, dword [esp + 0xa8]
mov eax, esp
mov edx, dword [esi]
mov dword [eax], ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 8], ecx
lea eax, [esp + 0x68]
push eax
mov ecx, esi
call dword [edx + 0x40]
mov edi, dword [esp + 0x60]
xor eax, eax
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov ebp, dword [esp + 0x5c]
mov ax, word [ecx]
xor ecx, ecx
mov cx, word [edx]
xor edx, edx
mov dx, word [edi]
xor edi, edi
mov di, word [ebp]
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], ecx
lea eax, [esp + 0x4c]
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x38]
push eax
push ecx
lea eax, [esp + 0x74]
push edx
mov edx, dword [esp + 0xac]
lea ecx, [esp + 0x4c]
push eax
push ecx
mov ecx, esi
mov dword [esp + 0x80], edi
call fcn.005d45c0
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x38]
mov esi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x54]
dec edi
add eax, 0x40
inc esi
cmp eax, ecx
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x38], eax
jl 0x5e0d04
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x58]
cmp edx, eax
jge 0x5e0ed1
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x4c]
add eax, 0x20
cmp eax, ecx
jle 0x5e0ea9
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
inc ecx
sub eax, 0x20
mov dword [esp + 0x20], ecx
jmp 0x5e0ead
inc dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
lea ecx, [esp + 0x20]
add esi, 0x10
push ecx
mov ecx, dword [ebx + 0x24]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], esi
call fcn.00405ad0
test al, al
jne 0x5e0cd4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret 0x14