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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x5e1483
sub esp, 0x88
xor eax, eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x8c]
cmp ecx, edx
jne 0x5e0ab3
mov byte [esp + 0x94], 1
add esp, 0x88
ret
movzx ebp, byte [ecx + 0xf]
mov ebx, ebp
and ebx, 0x1f
movzx ebp, bl
mov eax, ebp
movzx ebp, byte [edx + 0xf]
mov ebx, ebp
and ebx, 0x1f
movzx ebp, bl
cmp ebp, eax
je 0x5e0ae0
mov byte [esp + 0x94], 0
add esp, 0x88
ret
cmp eax, 1
jb 0x5e0af9
cmp eax, 0x10
ja 0x5e0af9
mov byte [esp + 0x94], 1
add esp, 0x88
ret
cmp eax, 0x18
je 0x5e0aea
cmp eax, 0x1a
je 0x5e0aea
cmp eax, 0x14
ja 0x5e0fef
cmp eax, 0x12
ja 0x5e0d5b
cmp eax, 0x11
jne 0x5e0be8
mov dword [esp], ecx
call fcn.005dd4b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005dd4b0
mov edi, dword [esp + 0x80]
mov edx, dword [esp + 4]
mov esi, dword [esp + 8]
cmp edi, edx
jne 0x5e0be4
mov dword [esp], edi
mov ebp, dword [esp + 0x84]
mov dword [esp + 4], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 8], edx
mov dword [esp + 0x7c], esi
mov dword [esp + 0xc], esi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e0be4
mov eax, 1
cmp al, 0
je 0x5e0bda
mov ebx, dword [esp + 0x8c]
mov dword [esp], ebx
call fcn.005ddb30
mov ebx, dword [esp + 4]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005ddb30
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x24]
cmp ebx, eax
jne 0x5e0bda
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov byte [esp + 0x94], 0
jmp 0x5e0bd3
xor eax, eax
jmp 0x5e0b94
cmp eax, 0x12
jne 0x5e0d4c
mov dword [esp], edx
call fcn.005dd380
mov ebx, dword [esp + 4]
cmp ebx, 3
jne 0x5e0c89
mov ebx, dword [esp + 0x8c]
mov dword [esp], ebx
call fcn.005dd4b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005dd4b0
mov edi, dword [esp + 0x80]
mov edx, dword [esp + 4]
mov esi, dword [esp + 8]
cmp edi, edx
jne 0x5e0c89
mov dword [esp], edi
mov ebp, dword [esp + 0x84]
mov dword [esp + 4], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 8], edx
mov dword [esp + 0x7c], esi
mov dword [esp + 0xc], esi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e0c89
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005dd380
mov ebx, dword [esp + 4]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x8c]
mov dword [esp], ebx
call fcn.005dd380
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x1c]
cmp ebx, eax
jne 0x5e0d42
mov ebx, dword [esp + 0x8c]
mov dword [esp], ebx
call fcn.005dd4b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005dd4b0
mov edi, dword [esp + 0x80]
mov edx, dword [esp + 4]
mov esi, dword [esp + 8]
cmp edi, edx
jne 0x5e0d42
mov dword [esp], edi
mov ebp, dword [esp + 0x84]
mov dword [esp + 4], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 8], edx
mov dword [esp + 0x7c], esi
mov dword [esp + 0xc], esi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e0d42
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov byte [esp + 0x94], 0
jmp 0x5e0d3b
mov byte [esp + 0x94], 0
add esp, 0x88
ret
cmp eax, 0x13
jne 0x5e0fb8
mov dword [esp + 0x3c], ecx
mov ebx, dword [esp + 0x3c]
movzx ebp, word [ebx + 0x22]
mov ecx, ebp
movzx ebp, word [edx + 0x22]
cmp cx, bp
jne 0x5e0fa9
mov ebx, dword [esp + 0x3c]
movzx ebp, word [ebx + 0x20]
mov ecx, ebp
mov dword [esp + 0x30], edx
movzx ebp, word [edx + 0x20]
cmp cx, bp
jne 0x5e0fa9
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x3c]
mov dword [esp], ebx
cmp dword [esp], 0
je 0x5e0e6a
call fcn.005ddc50
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 4]
cmp ecx, eax
jge 0x5e0e9a
mov ebx, dword [esp + 0x3c]
mov dword [esp], ebx
cmp dword [esp], 0
je 0x5e0e8f
mov dword [esp + 4], ecx
call fcn.005dd980
mov ebx, dword [esp + 8]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp], ebx
cmp dword [esp], 0
je 0x5e0e84
mov ebx, dword [esp + 0x14]
mov dword [esp + 4], ebx
call fcn.005dd980
mov esi, dword [esp + 0x78]
mov edx, dword [esp + 8]
mov edi, dword [esp + 0xc]
cmp esi, edx
jne 0x5e0e75
mov dword [esp], esi
mov ebp, dword [esp + 0x7c]
mov dword [esp + 4], ebp
mov dword [esp + 0x80], edx
mov dword [esp + 8], edx
mov dword [esp + 0x84], edi
mov dword [esp + 0xc], edi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e0e75
mov ebx, dword [esp + 0x14]
inc ebx
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp], ebx
cmp dword [esp], 0
jne 0x5e0db3
mov dword [0], eax
jmp 0x5e0db3
mov byte [esp + 0x94], 0
add esp, 0x88
ret
mov dword [0], eax
jmp 0x5e0e03
mov dword [0], eax
jmp 0x5e0dd9
mov dword [esp + 0x18], 0
mov ebx, dword [esp + 0x3c]
mov dword [esp], ebx
cmp dword [esp], 0
je 0x5e0f6a
call fcn.005ddce0
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 4]
cmp ecx, eax
jge 0x5e0f9a
mov ebx, dword [esp + 0x3c]
mov dword [esp], ebx
cmp dword [esp], 0
je 0x5e0f8f
mov dword [esp + 4], ecx
call fcn.005dde00
mov ebx, dword [esp + 8]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp], ebx
cmp dword [esp], 0
je 0x5e0f84
mov ebx, dword [esp + 0x18]
mov dword [esp + 4], ebx
call fcn.005dde00
mov esi, dword [esp + 0x78]
mov edx, dword [esp + 8]
mov edi, dword [esp + 0xc]
cmp esi, edx
jne 0x5e0f75
mov dword [esp], esi
mov ebp, dword [esp + 0x7c]
mov dword [esp + 4], ebp
mov dword [esp + 0x80], edx
mov dword [esp + 8], edx
mov dword [esp + 0x84], edi
mov dword [esp + 0xc], edi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e0f75
mov ebx, dword [esp + 0x18]
inc ebx
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp], ebx
cmp dword [esp], 0
jne 0x5e0eb3
mov dword [0], eax
jmp 0x5e0eb3
mov byte [esp + 0x94], 0
add esp, 0x88
ret
mov dword [0], eax
jmp 0x5e0f03
mov dword [0], eax
jmp 0x5e0ed9
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov byte [esp + 0x94], 0
add esp, 0x88
ret
cmp eax, 0x14
jne 0x5e0d4c
mov ebp, dword [ecx + 0x28]
cmp ebp, 0
jne 0x5e0fe0
mov ebp, dword [edx + 0x28]
cmp ebp, 0
jne 0x5e0fe0
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov byte [esp + 0x94], 0
add esp, 0x88
ret
cmp eax, 0x16
ja 0x5e11a1
cmp eax, 0x15
jne 0x5e1118
mov dword [esp], ecx
call fcn.005dda80
mov ebx, dword [esp + 4]
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005dda80
mov edi, dword [esp + 0x80]
mov edx, dword [esp + 4]
mov esi, dword [esp + 8]
cmp edi, edx
jne 0x5e1111
mov dword [esp], edi
mov ebp, dword [esp + 0x84]
mov dword [esp + 4], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 8], edx
mov dword [esp + 0x7c], esi
mov dword [esp + 0xc], esi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e1111
mov eax, 1
cmp al, 0
je 0x5e1107
mov ebx, dword [esp + 0x8c]
mov dword [esp], ebx
call fcn.005dd4b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005dd4b0
mov edi, dword [esp + 0x80]
mov edx, dword [esp + 4]
mov esi, dword [esp + 8]
cmp edi, edx
jne 0x5e1107
mov dword [esp], edi
mov ebp, dword [esp + 0x84]
mov dword [esp + 4], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 8], edx
mov dword [esp + 0x7c], esi
mov dword [esp + 0xc], esi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e1107
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov byte [esp + 0x94], 0
jmp 0x5e1100
xor eax, eax
jmp 0x5e107b
cmp eax, 0x16
jne 0x5e0d4c
mov dword [esp], ecx
call fcn.005dd4b0
mov ebx, dword [esp + 4]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
call fcn.005dd4b0
mov esi, dword [esp + 0x78]
mov edx, dword [esp + 4]
mov edi, dword [esp + 8]
cmp esi, edx
jne 0x5e1197
mov dword [esp], esi
mov ebp, dword [esp + 0x7c]
mov dword [esp + 4], ebp
mov dword [esp + 0x80], edx
mov dword [esp + 8], edx
mov dword [esp + 0x84], edi
mov dword [esp + 0xc], edi
call fcn.0040e270
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e1197
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov byte [esp + 0x94], 0
jmp 0x5e1190
cmp eax, 0x17
je 0x5e1121
cmp eax, 0x19
jne 0x5e0d4c
mov dword [esp + 0x38], ecx
mov dword [esp + 0x2c], edx
mov ebx, dword [esp + 0x38]
mov eax, dword [ebx + 0x28]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [ebx + 0x28]
cmp eax, ebp
je 0x5e11dc
mov byte [esp + 0x94], 0
add esp, 0x88
ret
xor eax, eax
mov ebx, dword [esp + 0x38]
mov ebp, dword [ebx + 0x28]
mov dword [esp + 0x24], ebp
mov ebp, dword [esp + 0x24]
cmp eax, ebp
jge 0x5e137e
mov dword [esp + 0x20], eax
mov ebx, dword [esp + 0x38]
mov ebp, eax
mov esi, dword [ebx + 0x28]
cmp eax, esi
jae 0x5e147c
mov ecx, dword [ebx + 0x24]
imul ebp, ebp, 0xc
add ecx, ebp
mov ebx, dword [esp + 0x2c]
mov ebp, eax
mov esi, dword [ebx + 0x28]
cmp eax, esi
jae 0x5e1475
mov esi, dword [ebx + 0x24]
imul ebp, ebp, 0xc
add esi, ebp
mov dword [esp + 0x28], esi
mov dword [esp + 0x34], ecx
cmp ecx, 0
je 0x5e146e
mov ebp, dword [ecx]
xor ebx, ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x44], ebp
xor ebx, ebx
cmp ebp, ebx
jne 0x5e1410
mov ebx, dword [esp + 0x28]
cmp ebx, 0
je 0x5e1409
mov ebp, dword [ebx]
xor ebx, ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x40], ebp
xor ebx, ebx
cmp ebp, ebx
jne 0x5e13ab
mov edi, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
mov esi, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
cmp ecx, eax
jne 0x5e139c
mov dword [esp + 0x70], edi
mov dword [esp], edi
mov dword [esp + 0x74], ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x68], esi
mov dword [esp + 8], esi
mov dword [esp + 0x6c], eax
mov dword [esp + 0xc], eax
call fcn.004633f0
mov edx, dword [esp + 0x34]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e139c
mov ecx, dword [edx + 4]
mov ebx, dword [esp + 0x28]
mov ebp, dword [ebx + 4]
cmp ecx, ebp
je 0x5e12e8
mov byte [esp + 0x94], 0
add esp, 0x88
ret
cld
mov ecx, dword [edx]
mov dword [esp], ecx
call fcn.005db2f0
mov ebx, dword [esp + 4]
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x28]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
call fcn.005db2f0
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 4]
mov eax, dword [esp + 8]
cmp esi, eax
jne 0x5e138d
mov ebp, dword [esp + 0x68]
mov dword [esp], ebp
mov dword [esp + 4], esi
mov dword [esp + 0x70], edi
mov dword [esp + 8], edi
mov dword [esp + 0x74], eax
mov dword [esp + 0xc], eax
call fcn.004633f0
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5e138d
mov ebx, dword [esp + 0x34]
mov ecx, dword [ebx + 8]
mov ebx, dword [esp + 0x28]
mov ebp, dword [ebx + 8]
cmp ecx, ebp
je 0x5e136d
mov byte [esp + 0x94], 0
add esp, 0x88
ret
mov eax, dword [esp + 0x20]
inc eax
mov ebp, dword [esp + 0x24]
cmp eax, ebp
jl 0x5e11f5
mov byte [esp + 0x94], 1
add esp, 0x88
ret
mov byte [esp + 0x94], 0
add esp, 0x88
ret
mov byte [esp + 0x94], 0
add esp, 0x88
ret
mov eax, ebp
lea ebx, [esp + 0x60]
mov edx, ebx
mov dword [esp + 0x54], ebp
cmp ebp, 0
je 0x5e1404
add ebp, 3
mov dword [esp + 0x48], ebx
cmp ebx, 0
je 0x5e1400
cmp byte [0x8f7eb8], 0
jne 0x5e13ea
mov dword [ebx], ebp
movzx esi, byte [eax + 1]
mov ebx, esi
shl ebx, 8
movzx esi, byte [eax + 2]
or ebx, esi
mov dword [edx + 4], ebx
jmp 0x5e127d
mov dword [esp], ebx
mov dword [esp + 4], ebp
call fcn.0041b160
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x54]
jmp 0x5e13d3
mov dword [ebx], eax
jmp 0x5e13c8
mov dword [ebp], eax
jmp 0x5e13bc
mov dword [ebx], eax
jmp 0x5e1263
mov edx, ebp
lea ebx, [esp + 0x58]
mov edi, ebx
mov dword [esp + 0x50], ebp
cmp ebp, 0
je 0x5e1469
add ebp, 3
mov dword [esp + 0x4c], ebx
cmp ebx, 0
je 0x5e1465
cmp byte [0x8f7eb8], 0
jne 0x5e144f
mov dword [ebx], ebp
movzx esi, byte [edx + 1]
mov ebx, esi
shl ebx, 8
movzx esi, byte [edx + 2]
or ebx, esi
mov dword [edi + 4], ebx
jmp 0x5e1256
mov dword [esp], ebx
mov dword [esp + 4], ebp
call fcn.0041b160
mov edi, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
jmp 0x5e1438
mov dword [ebx], eax
jmp 0x5e142d
mov dword [ebp], eax
jmp 0x5e1421
mov dword [ecx], eax
jmp 0x5e123c
call fcn.00435970
ud2
call fcn.00435970
ud2
call fcn.004616d0
jmp fcn.005e0a60