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

Disassembly:
push ebp
mov eax, esp
sub esp, 4
and esp, 0xfffffff0
mov dword [esp], eax
mov ebp, esp
sub esp, 0x140
push ebx
push ecx
push esi
push edi
push ebp
mov esi, dword [eax + 8]
mov ebx, dword [esi + 8]
mov edi, dword [esi + 0xc]
push esi
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x10]
mov esi, dword [eax + 0xc]
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x118], edx
mov dword [esp + 0x120], esi
mov esi, dword [esp + 0x118]
movsx ecx, word [esi]
sub ecx, dword [eax + 0x14]
mov esi, ecx
mov edx, ecx
sar edx, 0x1f
xor ecx, edx
sub ecx, edx
add esi, edx
mov dword [esp + 0x124], esi
movzx edx, byte [ecx + 0x56e5e0]
mov dword [esp + 0x128], edx
mov ebp, dword [eax + 0x18]
mov eax, dword [ebp + edx*4]
movzx ecx, byte [ebp + edx + 0x400]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x418faa
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x418f8a
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x418fa3
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x128]
mov eax, 1
shl eax, cl
dec eax
and eax, dword [esp + 0x124]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x41900b
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x418feb
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419004
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
xor ecx, ecx
mov esi, dword [esp + 0x118]
pxor xmm4, xmm4
pxor xmm5, xmm5
pxor xmm6, xmm6
pxor xmm7, xmm7
pinsrw xmm0, word [esi + 2], 0
pinsrw xmm1, word [esi + 0x30], 0
pinsrw xmm2, word [esi + 0x26], 0
pinsrw xmm3, word [esi + 0x28], 0
pinsrw xmm0, word [esi + 0x10], 1
pinsrw xmm1, word [esi + 0x40], 1
pinsrw xmm2, word [esi + 0x34], 1
pinsrw xmm3, word [esi + 0x1a], 1
pinsrw xmm0, word [esi + 0x20], 2
pinsrw xmm1, word [esi + 0x32], 2
pinsrw xmm2, word [esi + 0x42], 2
pinsrw xmm3, word [esi + 0xc], 2
pinsrw xmm0, word [esi + 0x12], 3
pinsrw xmm1, word [esi + 0x24], 3
pinsrw xmm2, word [esi + 0x50], 3
pinsrw xmm3, word [esi + 0xe], 3
pinsrw xmm0, word [esi + 4], 4
pinsrw xmm1, word [esi + 0x16], 4
pinsrw xmm2, word [esi + 0x60], 4
pinsrw xmm3, word [esi + 0x1c], 4
pinsrw xmm0, word [esi + 6], 5
pinsrw xmm1, word [esi + 8], 5
pinsrw xmm2, word [esi + 0x52], 5
pinsrw xmm3, word [esi + 0x2a], 5
pinsrw xmm0, word [esi + 0x14], 6
pinsrw xmm1, word [esi + 0xa], 6
pinsrw xmm2, word [esi + 0x44], 6
pinsrw xmm3, word [esi + 0x38], 6
pinsrw xmm0, word [esi + 0x22], 7
pinsrw xmm1, word [esi + 0x18], 7
pinsrw xmm2, word [esi + 0x36], 7
pinsrw xmm3, word [esi + 0x46], 7
pcmpgtw xmm4, xmm0
pcmpgtw xmm5, xmm1
pcmpgtw xmm6, xmm2
pcmpgtw xmm7, xmm3
paddw xmm0, xmm4
paddw xmm1, xmm5
paddw xmm2, xmm6
paddw xmm3, xmm7
pxor xmm0, xmm4
pxor xmm1, xmm5
pxor xmm2, xmm6
pxor xmm3, xmm7
pxor xmm4, xmm0
pxor xmm5, xmm1
pxor xmm6, xmm2
pxor xmm7, xmm3
movdqa xmmword [esp + 0x18], xmm0
movdqa xmmword [esp + 0x28], xmm1
movdqa xmmword [esp + 0x38], xmm2
movdqa xmmword [esp + 0x48], xmm3
movdqa xmmword [esp + 0x98], xmm4
movdqa xmmword [esp + 0xa8], xmm5
movdqa xmmword [esp + 0xb8], xmm6
movdqa xmmword [esp + 0xc8], xmm7
pxor xmm4, xmm4
pxor xmm5, xmm5
pxor xmm6, xmm6
pxor xmm7, xmm7
pinsrw xmm0, word [esi + 0x54], 0
pinsrw xmm1, word [esi + 0x2c], 0
pinsrw xmm2, word [esi + 0x76], 0
pinsrw xmm3, word [esi + 0x78], 0
pinsrw xmm0, word [esi + 0x62], 1
pinsrw xmm1, word [esi + 0x1e], 1
pinsrw xmm2, word [esi + 0x68], 1
pinsrw xmm3, word [esi + 0x7a], 1
pinsrw xmm0, word [esi + 0x70], 2
pinsrw xmm1, word [esi + 0x2e], 2
pinsrw xmm2, word [esi + 0x5a], 2
pinsrw xmm3, word [esi + 0x6c], 2
pinsrw xmm0, word [esi + 0x72], 3
pinsrw xmm1, word [esi + 0x3c], 3
pinsrw xmm2, word [esi + 0x4c], 3
pinsrw xmm3, word [esi + 0x5e], 3
pinsrw xmm0, word [esi + 0x64], 4
pinsrw xmm1, word [esi + 0x4a], 4
pinsrw xmm2, word [esi + 0x3e], 4
pinsrw xmm3, word [esi + 0x6e], 4
pinsrw xmm0, word [esi + 0x56], 5
pinsrw xmm1, word [esi + 0x58], 5
pinsrw xmm2, word [esi + 0x4e], 5
pinsrw xmm3, word [esi + 0x7c], 5
pinsrw xmm0, word [esi + 0x48], 6
pinsrw xmm1, word [esi + 0x66], 6
pinsrw xmm2, word [esi + 0x5c], 6
pinsrw xmm3, word [esi + 0x7e], 6
pinsrw xmm0, word [esi + 0x3a], 7
pinsrw xmm1, word [esi + 0x74], 7
pinsrw xmm2, word [esi + 0x6a], 7
pinsrw xmm3, ecx, 7
pcmpgtw xmm4, xmm0
pcmpgtw xmm5, xmm1
pcmpgtw xmm6, xmm2
pcmpgtw xmm7, xmm3
paddw xmm0, xmm4
paddw xmm1, xmm5
paddw xmm2, xmm6
paddw xmm3, xmm7
pxor xmm0, xmm4
pxor xmm1, xmm5
pxor xmm2, xmm6
pxor xmm3, xmm7
pxor xmm4, xmm0
pxor xmm5, xmm1
pxor xmm6, xmm2
pxor xmm7, xmm3
movdqa xmmword [esp + 0x58], xmm0
movdqa xmmword [esp + 0x68], xmm1
movdqa xmmword [esp + 0x78], xmm2
movdqa xmmword [esp + 0x88], xmm3
movdqa xmmword [esp + 0xd8], xmm4
movdqa xmmword [esp + 0xe8], xmm5
movdqa xmmword [esp + 0xf8], xmm6
movdqa xmmword [esp + 0x108], xmm7
pxor xmm7, xmm7
movdqa xmm0, xmmword [esp + 0x18]
movdqa xmm1, xmmword [esp + 0x28]
movdqa xmm2, xmmword [esp + 0x38]
movdqa xmm3, xmmword [esp + 0x48]
pcmpeqw xmm0, xmm7
pcmpeqw xmm1, xmm7
pcmpeqw xmm2, xmm7
pcmpeqw xmm3, xmm7
packsswb xmm0, xmm1
packsswb xmm2, xmm3
pmovmskb edx, xmm0
pmovmskb ecx, xmm2
shl ecx, 0x10
or edx, ecx
not edx
lea esi, [esp + 0x18]
mov ebp, dword [esp + 0x11c]
bsf ecx, edx
je 0x419466
lea esi, [esi + ecx*2]
shr edx, cl
mov dword [esp + 0x12c], edx
cmp ecx, 0x10
jl 0x419385
sub ecx, 0x10
mov dword [esp + 0x124], ecx
mov eax, dword [ebp + 0x3c0]
movzx ecx, byte [ebp + 0x4f0]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x41937c
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x41935c
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419375
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x124]
jmp 0x419311
movsx eax, word [esi]
movzx eax, byte [eax + 0x56e5e0]
mov dword [esp + 0x128], eax
shl ecx, 4
add ecx, eax
mov eax, dword [ebp + ecx*4]
movzx ecx, byte [ebp + ecx + 0x400]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x4193f2
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x4193d2
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x4193eb
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
movsx edx, word [esi + 0x80]
mov ecx, dword [esp + 0x128]
mov eax, 1
shl eax, cl
dec eax
and eax, edx
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x419455
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419435
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x41944e
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov edx, dword [esp + 0x12c]
add esi, 2
shr edx, 1
jmp 0x4192fc
movdqa xmm0, xmmword [esp + 0x58]
movdqa xmm1, xmmword [esp + 0x68]
movdqa xmm2, xmmword [esp + 0x78]
movdqa xmm3, xmmword [esp + 0x88]
pcmpeqw xmm0, xmm7
pcmpeqw xmm1, xmm7
pcmpeqw xmm2, xmm7
pcmpeqw xmm3, xmm7
packsswb xmm0, xmm1
packsswb xmm2, xmm3
pmovmskb edx, xmm0
pmovmskb ecx, xmm2
shl ecx, 0x10
or edx, ecx
not edx
lea eax, [esp + 0x58]
sub eax, esi
shr eax, 1
bsf ecx, edx
je 0x419630
shr edx, cl
add ecx, eax
lea esi, [esi + ecx*2]
mov dword [esp + 0x12c], edx
jmp 0x4194de
bsf ecx, edx
je 0x419630
lea esi, [esi + ecx*2]
shr edx, cl
mov dword [esp + 0x12c], edx
cmp ecx, 0x10
jl 0x419552
sub ecx, 0x10
mov dword [esp + 0x124], ecx
mov eax, dword [ebp + 0x3c0]
movzx ecx, byte [ebp + 0x4f0]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x419549
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419529
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419542
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x124]
jmp 0x4194de
movsx eax, word [esi]
bsr eax, eax
inc eax
mov dword [esp + 0x128], eax
shl ecx, 4
add ecx, eax
mov eax, dword [ebp + ecx*4]
movzx ecx, byte [ebp + ecx + 0x400]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x4195bc
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x41959c
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x4195b5
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
movsx edx, word [esi + 0x80]
mov ecx, dword [esp + 0x128]
mov eax, 1
shl eax, cl
dec eax
and eax, edx
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x41961f
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x4195ff
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419618
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov edx, dword [esp + 0x12c]
add esi, 2
shr edx, 1
jmp 0x4194c9
lea edx, [esp + 0x96]
cmp edx, esi
je 0x419690
mov eax, dword [ebp]
movzx ecx, byte [ebp + 0x400]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x419690
mov eax, dword [esp + 0x120]
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419670
mov byte [eax], 0
add eax, 1
sub edi, 8
mov edx, ebx
mov ecx, edi
shr edx, cl
mov byte [eax], dl
add eax, 1
cmp dl, 0xff
jne 0x419689
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0x120]
pop esi
mov dword [esi + 8], ebx
mov dword [esi + 0xc], edi
pop ebp
pop edi
pop esi
pop ecx
pop ebx
mov esp, ebp
pop esp
pop ebp
ret