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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5e9d49
sub esp, 0x58
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x64]
xor ecx, ecx
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x24], ecx
xor ecx, ecx
mov dword [esp + 0x28], ecx
xor ecx, ecx
jmp 0x5e9984
mov eax, dword [esp + 0x34]
inc eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], ebp
mov ebp, ecx
mov edx, dword [esp + 0x6c]
mov ecx, eax
mov eax, dword [esp + 0x68]
mov eax, edi
mov edi, esi
mov esi, eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x50], esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x54], ebp
cmp edx, ecx
jle 0x5e9b0c
mov dword [esp + 0x34], ecx
movzx eax, byte [eax + ecx]
mov dword [esp + 0x48], eax
lea edx, [0x9eda20]
movzx edx, byte [edx + eax]
mov byte [esp + 0x23], dl
and edx, 0x3f
cmp dl, 0x20
sbb ebx, ebx
lea ebp, [edx - 0x20]
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
sbb esi, esi
mov dword [esp + 0x44], esi
xchg ebp, ebx
neg ebx
xchg ebp, ebx
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
sbb eax, eax
movzx esi, byte [esp + 0x23]
xchg esi, eax
movzx eax, al
xchg esi, eax
add esi, edi
mov ecx, ebp
mov edi, dword [esp + 0x24]
mov ebp, edi
shr edi, cl
and edi, eax
mov ecx, edx
mov eax, dword [esp + 0x28]
shl eax, cl
and eax, ebx
or edi, eax
movzx ecx, byte [esp + 0x22]
mov eax, ebp
shl ebp, cl
mov ecx, esi
mov esi, dword [esp + 0x44]
and ebp, esi
or ebp, edi
mov esi, ecx
mov ecx, edx
shl eax, cl
and eax, ebx
mov edx, dword [esp + 0x48]
lea ebx, [0x9f5b20]
or eax, dword [ebx + edx*4]
cmp esi, 0x20
jb 0x5e9af9
mov dword [esp + 0x40], ebp
mov edx, esi
and esi, 0x1f
lea ecx, [esi - 0x20]
mov dword [esp + 0x44], ecx
cmp ecx, 0x20
sbb edi, edi
neg ecx
cmp ecx, 0x20
sbb ebx, ebx
shl ebp, cl
and ebp, ebx
mov ecx, edx
mov edx, eax
shr eax, cl
or eax, ebp
mov ecx, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
mov ebp, ebx
shr ebx, cl
and ebx, edi
or eax, ebx
mov dword [esp + 0x44], eax
mov ebx, dword [esp + 0x4c]
add ebx, 4
mov edi, dword [esp + 0x50]
cmp edi, ebx
jb 0x5e9a81
mov ecx, dword [esp + 0x54]
jmp 0x5e9acf
mov dword [esp + 0x30], esi
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x54]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 4
lea eax, [0x67e920]
mov dword [esp + 0x10], eax
call fcn.00447800
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x3c]
mov ecx, ebp
mov edi, esi
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x30]
shr eax, 0x18
mov byte [ebx + ecx - 4], al
mov eax, dword [esp + 0x44]
shr eax, 0x10
mov byte [ebx + ecx - 3], al
mov eax, dword [esp + 0x44]
shr eax, 8
mov byte [ebx + ecx - 2], al
mov eax, dword [esp + 0x44]
mov byte [ebx + ecx - 1], al
jmp 0x5e9961
mov edx, eax
mov ebx, dword [esp + 0x4c]
mov edi, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
jmp 0x5e9961
mov eax, edi
and edi, 7
test edi, edi
jbe 0x5e9b9e
mov dword [esp + 0x38], eax
lea ecx, [edi - 8]
neg ecx
mov dword [esp + 0x2c], ecx
cmp ecx, 0x20
sbb edx, edx
lea ebp, [ecx - 0x20]
mov dword [esp + 0x44], ebp
cmp ebp, 0x20
sbb esi, esi
xchg ebp, ebx
neg ebx
xchg ebp, ebx
cmp ebp, 0x20
sbb ebx, ebx
mov eax, dword [esp + 0x24]
shl eax, cl
and eax, edx
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x24]
shl eax, cl
and eax, esi
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
shl esi, cl
and esi, edx
mov ecx, ebp
mov edx, dword [esp + 0x24]
shr edx, cl
and edx, ebx
or edx, esi
or edx, eax
mov ecx, edi
mov eax, 0xff
shr eax, cl
mov ebx, dword [esp + 0x40]
or eax, ebx
mov ebx, dword [esp + 0x38]
sub ebx, ecx
lea edi, [ebx + 8]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
mov ecx, eax
mov eax, edi
jmp 0x5e9ba6
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x24], ecx
shr eax, 3
cmp eax, 1
ja 0x5e9c13
test eax, eax
je 0x5e9c03
lea eax, [ebx + 1]
cmp esi, eax
jae 0x5e9bef
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x67e920]
mov dword [esp + 0x10], eax
call fcn.00447800
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov byte [eax + ebp - 1], cl
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], esi
add esp, 0x58
ret
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], esi
add esp, 0x58
ret
cmp eax, 2
jne 0x5e9c6f
lea eax, [ebx + 2]
cmp esi, eax
jae 0x5e9c51
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], 2
lea eax, [0x67e920]
mov dword [esp + 0x10], eax
call fcn.00447800
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov edx, ecx
shr cx, 8
mov byte [eax + ebp - 2], cl
mov byte [eax + ebp - 1], dl
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], esi
add esp, 0x58
ret
cmp eax, 3
jne 0x5e9ce1
mov eax, ecx
shr ecx, 8
shl edx, 0x18
or edx, ecx
lea ecx, [ebx + 3]
cmp esi, ecx
jae 0x5e9cbf
mov dword [esp + 0x44], edx
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 3
lea eax, [0x67e920]
mov dword [esp + 0x10], eax
call fcn.00447800
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x44]
mov ebx, edx
shr dx, 8
mov byte [ecx + ebp - 3], dl
mov byte [ecx + ebp - 2], bl
mov byte [ecx + ebp - 1], al
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], esi
add esp, 0x58
ret
lea eax, [ebx + 4]
cmp esi, eax
jae 0x5e9d1a
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], 4
lea eax, [0x67e920]
mov dword [esp + 0x10], eax
call fcn.00447800
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov edx, ecx
shr ecx, 0x18
mov byte [eax + ebp - 4], cl
mov ecx, edx
shr edx, 0x10
mov byte [eax + ebp - 3], dl
mov edx, ecx
shr ecx, 8
mov byte [eax + ebp - 2], cl
mov byte [eax + ebp - 1], dl
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], esi
add esp, 0x58
ret
call fcn.0045e260
jmp fcn.005e9920