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

Disassembly:
sub esp, 0x5c
mov ecx, dword [esp + 0x60]
mov eax, 1
push ebx
push ebp
push esi
mov esi, ecx
mov dword [esp + 0xc], 2
xorps xmm0, xmm0
lea ebx, [ecx + 2]
sub eax, ecx
not esi
mov ebp, 0xfffffffe
mov dword [esp + 0x14], esi
push edi
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x14], eax
sub ebp, ecx
movups xmmword [esp + 0x2c], xmm0
nop dword [eax]
lea edx, [ebx + ebp]
mov edi, 8
mov eax, edx
shr edx, 1
and eax, 1
shl eax, 3
sub edi, eax
movzx eax, byte [ebx - 2]
mov ecx, edi
shl eax, cl
mov ecx, 8
or dword [esp + edx*4 + 0x1c], eax
lea edx, [ebx + esi]
mov eax, edx
lea esi, [esp + 0x1c]
shr eax, 1
and edx, 1
lea esi, [esi + eax*4]
shl edx, 3
movzx eax, byte [ebx - 1]
sub ecx, edx
shl eax, cl
lea edx, [esp + 0x1c]
or dword [esi], eax
mov ecx, edi
mov eax, dword [esp + 0x10]
lea esi, [esp + 0x1c]
shr eax, 1
lea edx, [edx + eax*4]
add dword [esp + 0x10], 4
movzx eax, byte [ebx]
shl eax, cl
mov ecx, 8
or dword [edx], eax
mov edx, dword [esp + 0x14]
add edx, ebx
mov eax, edx
and edx, 1
shr eax, 1
lea esi, [esi + eax*4]
shl edx, 3
movzx eax, byte [ebx + 1]
sub ecx, edx
add ebx, 4
shl eax, cl
or dword [esi], eax
mov esi, dword [esp + 0x18]
lea eax, [ebx + ebp]
cmp eax, 0x10
jl 0x10144f00
or edi, 0xffffffff
xor ebp, ebp
or ecx, edi
xor edx, edx
xor esi, esi
cmp dword [esp + esi*4 + 0x1c], 0
mov ebx, ecx
mov eax, ecx
jne 0x10144fc5
cmp eax, 0xffffffff
mov ecx, esi
cmovne ecx, eax
lea eax, [edx + 1]
cmp ebx, 0xffffffff
mov edx, 1
cmovne edx, eax
jmp 0x10144fda
cmp ecx, 0xffffffff
je 0x10144fda
cmp edi, 0xffffffff
je 0x10144fd3
cmp edx, ebp
jle 0x10144fd7
mov edi, ecx
mov ebp, edx
or ecx, 0xffffffff
inc esi
cmp esi, 8
jl 0x10144fa2
cmp ecx, 0xffffffff
je 0x10144ff8
cmp edi, 0xffffffff
je 0x10144fee
cmp edx, ebp
jle 0x10144ff8
mov ebp, edx
mov edi, ecx
mov dword [esp + 0x10], ebp
jmp 0x10145001
mov dword [esp + 0x10], ebp
cmp edi, 0xffffffff
je 0x1014500a
or eax, 0xffffffff
cmp ebp, 2
cmovl edi, eax
lea esi, [esp + 0x3c]
xor ebx, ebx
cmp edi, 0xffffffff
je 0x1014502a
cmp ebx, edi
jl 0x1014502a
lea eax, [edi + ebp]
cmp ebx, eax
jge 0x1014502a
cmp ebx, edi
jne 0x1014506f
mov byte [esi], 0x3a
inc esi
jmp 0x1014506f
test ebx, ebx
je 0x10145056
mov byte [esi], 0x3a
lea ecx, [esi + 1]
mov dword [esp + 0x18], ecx
mov esi, ecx
cmp ebx, 6
jne 0x10145056
test edi, edi
jne 0x10145056
cmp ebp, ebx
je 0x101450b5
cmp ebp, 5
jne 0x10145056
cmp dword [esp + 0x30], 0xffff
je 0x101450b5
push dword [esp + ebx*4 + 0x1c]
push 0x101c5ef0
push 5
push esi
call fcn.10128120
add esp, 0x10
add esi, eax
lea eax, [edi + ebp]
inc ebx
cmp ebx, 8
jl 0x10145010
cmp edi, 0xffffffff
je 0x10145083
cmp eax, 8
jne 0x10145083
mov byte [esi], 0x3a
inc esi
mov byte [esi], 0
lea eax, [esp + 0x3c]
sub esi, eax
inc esi
cmp esi, dword [esp + 0x78]
ja 0x101450d1
mov edx, eax
mov eax, dword [esp + 0x74]
mov esi, eax
mov ecx, edx
sub esi, ecx
nop
mov cl, byte [edx]
lea edx, [edx + 1]
mov byte [esi + edx - 1], cl
test cl, cl
jne 0x101450a0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret
lea eax, [esp + 0x6a]
sub eax, ecx
push eax
mov eax, dword [esp + 0x74]
push ecx
add eax, 0xc
push eax
call fcn.10144e30
add esp, 0xc
test eax, eax
jne 0x101450e6
call fcn.10016659
pop edi
pop esi
pop ebp
mov dword [eax], 0x1c
xor eax, eax
pop ebx
add esp, 0x5c
ret
mov ecx, dword [esp + 0x18]
mov edx, ecx
lea esi, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x101450f0
mov eax, dword [esp + 0x10]
sub edx, esi
add eax, edi
lea esi, [edx + ecx]
jmp 0x1014507a