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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5ba6f3
sub esp, 0x68
lea edi, [esp + 0x78]
xor eax, eax
call fcn.00465fea
lea edi, [esp + 0x50]
call fcn.00465fea
mov ecx, dword [esp + 0x70]
cmp ecx, 5
jl 0x5ba429
mov edx, dword [esp + 0x6c]
movzx ebx, byte [edx]
mov byte [esp + 0x50], bl
lea ebx, [ecx - 1]
cmp ebx, 3
jbe 0x5ba6e6
movzx eax, byte [edx + 4]
movzx ebx, byte [edx + 3]
shl ebx, 8
or eax, ebx
movzx ebx, byte [edx + 2]
shl ebx, 0x10
or eax, ebx
movzx ebx, byte [edx + 1]
shl ebx, 0x18
or ebx, eax
mov dword [esp + 0x54], ebx
lea eax, [ebx + ebx*2]
shl eax, 1
lea ebp, [eax + 5]
cmp ecx, ebp
jl 0x5ba369
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], ebp
lea eax, [0x6b3220]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.0044bce0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
xor ebp, ebp
jmp 0x5ba4de
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp], ebp
call fcn.00409720
mov eax, dword [esp + 4]
lea ecx, [0x69b600]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.00409720
mov eax, dword [esp + 4]
lea ecx, [0x69b600]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
lea eax, [0x703140]
mov dword [esp], eax
mov dword [esp + 4], 0x33
lea eax, [esp + 0x40]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004cde70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], ecx
lea edi, [esp + 0x78]
lea esi, [esp + 0x50]
call fcn.004664c4
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x98], eax
add esp, 0x68
ret
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp], ecx
call fcn.00409720
mov eax, dword [esp + 4]
lea ecx, [0x69b600]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], eax
lea eax, [0x7029e5]
mov dword [esp], eax
mov dword [esp + 4], 0x32
lea eax, [esp + 0x38]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004cde70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], ecx
lea edi, [esp + 0x78]
lea esi, [esp + 0x50]
call fcn.004664c4
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x98], eax
add esp, 0x68
ret
mov edx, dword [esp + 0x30]
lea edx, [edx + esi*8 + 4]
movzx ebp, byte [ecx + ebx + 5]
movzx ebx, byte [ecx + ebx + 4]
shl ebx, 8
or ebp, ebx
mov word [edx], bp
lea ebp, [esi + 1]
mov ebx, dword [esp + 0x74]
mov edx, edi
cmp ebp, eax
jge 0x5ba584
mov esi, ebp
lea ebp, [ebp + ebp*2]
shl ebp, 1
mov edi, ebx
lea ebx, [ebp + 5]
cmp edx, ebx
jb 0x5ba6dd
mov edx, dword [esp + 0x58]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x20], edx
sub edi, ebp
lea edx, [edi - 5]
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x70]
mov edi, edx
sub edx, ebp
mov ebp, dword [esp + 0x20]
cmp esi, ebp
jae 0x5ba6d4
lea ebp, [edx - 5]
cmp ebp, 5
jbe 0x5ba6c8
mov dword [esp + 0x20], edx
mov ebp, dword [esp + 0x30]
lea ebp, [ebp + esi*8]
mov dword [esp + 0x2c], ebp
movzx edx, byte [ebx + ecx + 3]
movzx ebp, byte [ebx + ecx + 2]
shl ebp, 8
or edx, ebp
movzx ebp, byte [ebx + ecx + 1]
shl ebp, 0x10
or ebp, edx
movzx edx, byte [ebx + ecx]
shl edx, 0x18
or ebp, edx
mov edx, dword [esp + 0x2c]
mov dword [edx], ebp
mov edx, dword [esp + 0x20]
add edx, 0xfffffff7
cmp edx, 1
ja 0x5ba4bb
jmp 0x5ba6bc
mov ebp, dword [esp + 0x28]
mov eax, ebx
lea ebx, [ebp + 9]
cmp edx, ebx
jl 0x5ba615
mov esi, ebx
mov ebx, dword [esp + 0x24]
cmp edx, ebx
jb 0x5ba6b3
sub eax, ebp
mov edi, edx
lea edx, [eax - 5]
neg edx
sar edx, 0x1f
and ebx, edx
sub edi, ebp
lea edx, [edi - 5]
cmp edx, 3
jbe 0x5ba6a7
movzx eax, byte [ebx + ecx + 3]
movzx edx, byte [ebx + ecx + 2]
shl edx, 8
or edx, eax
movzx eax, byte [ebx + ecx + 1]
shl eax, 0x10
or eax, edx
movzx ecx, byte [ebx + ecx]
shl ecx, 0x18
or eax, ecx
mov dword [esp + 0x64], eax
lea edi, [esp + 0x78]
mov eax, esi
lea esi, [esp + 0x50]
call fcn.004664c4
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
add esp, 0x68
ret
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp], edx
call fcn.00409720
mov eax, dword [esp + 4]
lea ecx, [0x69b600]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], eax
lea eax, [0x7049a6]
mov dword [esp], eax
mov dword [esp + 4], 0x36
lea eax, [esp + 0x38]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004cde70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], ecx
lea edi, [esp + 0x78]
lea esi, [esp + 0x50]
call fcn.004664c4
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x98], eax
add esp, 0x68
ret
mov eax, 3
mov ecx, edx
call fcn.00465e00
mov eax, ebx
mov ecx, edx
call fcn.00465e60
mov eax, 1
mov ecx, edx
call fcn.00465e00
mov eax, 5
mov ecx, ebp
call fcn.00465e00
mov eax, esi
mov ecx, ebp
call fcn.00465e00
mov eax, ebx
mov ecx, edx
call fcn.00465e60
mov eax, 3
mov ecx, ebx
call fcn.00465e00
nop
call fcn.004649b0
jmp fcn.005ba2a0