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

Disassembly:
jmp 0x1005a900
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 + 0x100dfc80]
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 0x1005a9ca
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 0x1005a9aa
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 0x1005a9c3
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 0x1005aa2b
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 0x1005aa0b
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 0x1005aa24
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 0x1005ae86
lea esi, [esi + ecx*2]
shr edx, cl
mov dword [esp + 0x12c], edx
cmp ecx, 0x10
jl 0x1005ada5
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 0x1005ad9c
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 0x1005ad7c
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 0x1005ad95
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x124]
jmp 0x1005ad31
movsx eax, word [esi]
movzx eax, byte [eax + 0x100dfc80]
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 0x1005ae12
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 0x1005adf2
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 0x1005ae0b
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 0x1005ae75
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 0x1005ae55
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 0x1005ae6e
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov edx, dword [esp + 0x12c]
add esi, 2
shr edx, 1
jmp 0x1005ad1c
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 0x1005b050
shr edx, cl
add ecx, eax
lea esi, [esi + ecx*2]
mov dword [esp + 0x12c], edx
jmp 0x1005aefe
bsf ecx, edx
je 0x1005b050
lea esi, [esi + ecx*2]
shr edx, cl
mov dword [esp + 0x12c], edx
cmp ecx, 0x10
jl 0x1005af72
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 0x1005af69
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 0x1005af49
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 0x1005af62
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov ecx, dword [esp + 0x124]
jmp 0x1005aefe
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 0x1005afdc
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 0x1005afbc
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 0x1005afd5
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 0x1005b03f
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 0x1005b01f
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 0x1005b038
mov byte [eax], 0
add eax, 1
mov dword [esp + 0x120], eax
mov edx, dword [esp + 0x12c]
add esi, 2
shr edx, 1
jmp 0x1005aee9
lea edx, [esp + 0x96]
cmp edx, esi
je 0x1005b0b0
mov eax, dword [ebp]
movzx ecx, byte [ebp + 0x400]
add edi, ecx
shl ebx, cl
or ebx, eax
cmp edi, 0x10
jl 0x1005b0b0
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 0x1005b090
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 0x1005b0a9
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