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

Disassembly:
sub esp, 0x80
push ebx
push ebp
mov ebp, dword [esp + 0x8c]
xor eax, eax
push esi
push edi
mov edi, edx
mov dword [esp + 0x1c], ecx
mov bl, byte [ebp]
mov dword [esp + 0x24], edi
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
cmp bl, 2
jne 0x1006a474
push dword [ebp + 8]
mov ebx, ecx
push dword [ebp + 4]
call fcn.10069a00
add esp, 8
test al, al
je 0x1006a369
mov eax, dword [edi]
and eax, 0xff000fff
cmp eax, 0x2000599
jne 0x1006a9cf
push 0
push ebp
lea ecx, [ebx + 4]
call fcn.10070f50
cmp al, 0x11
jne 0x1006a356
push 0
lea eax, [esp + 0x7c]
push eax
lea ecx, [ebx + 4]
call fcn.10070f50
cmp al, 8
jne 0x1006a356
movups xmm0, xmmword [edi]
movups xmmword [esp + 0x68], xmm0
mov eax, dword [esp + 0x68]
mov dword [esp + 0x38], eax
jmp 0x1006a47f
mov eax, dword [ebp + 4]
mov dword [ebx + 0xc], eax
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
mov esi, dword [ebp + 8]
mov edx, esi
mov edi, dword [ebp + 4]
mov ecx, edi
call fcn.10069da0
mov dword [esp + 0x3c], eax
test eax, eax
je 0x1006a459
push 0
push ebp
lea ecx, [ebx + 4]
call fcn.10070f50
cmp al, 2
jne 0x1006a3f3
cmp dword [ebp + 8], 3
jne 0x1006a3ff
mov edx, dword [ebp + 4]
mov edi, 0x19
movzx ecx, byte [edx]
lea eax, [ecx - 0x41]
cmp edi, eax
sbb eax, eax
and eax, 0xffffffe0
add eax, 0x20
xor eax, ecx
cmp eax, 0x70
jne 0x1006a3ff
movzx ecx, byte [edx + 1]
lea eax, [ecx - 0x41]
cmp edi, eax
sbb eax, eax
and eax, 0xffffffe0
add eax, 0x20
xor eax, ecx
cmp eax, 0x74
jne 0x1006a3ff
movzx ecx, byte [edx + 2]
lea eax, [ecx - 0x41]
cmp edi, eax
sbb eax, eax
and eax, 0xffffffe0
add eax, 0x20
xor eax, ecx
cmp eax, 0x72
jne 0x1006a3ff
push 0
push ebp
lea ecx, [ebx + 4]
call fcn.10070f50
cmp al, 8
je 0x1006a47f
cmp al, 2
jne 0x1006a449
push dword [ebp + 8]
lea edx, [esp + 0x6c]
mov ecx, ebx
push dword [ebp + 4]
call fcn.10069a00
add esp, 8
test al, al
je 0x1006a449
mov eax, dword [esp + 0x68]
mov dword [esp + 0x38], eax
and eax, 0xff000fff
cmp eax, 0x2000599
jne 0x1006a449
push 0
push ebp
lea ecx, [ebx + 4]
call fcn.10070f50
cmp al, 0x11
jne 0x1006a449
push 0
push ebp
lea ecx, [ebx + 4]
call fcn.10070f50
cmp al, 8
je 0x1006a47f
mov eax, 0x2b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
mov edx, dword [esp + 0x24]
mov ecx, ebx
push esi
push edi
call fcn.10069f90
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
cmp bl, 8
jne 0x1006a96e
mov ebx, ecx
xor eax, eax
lea ecx, [ebx + 4]
push eax
xorps xmm0, xmm0
mov dword [esp + 0x24], eax
xor edi, edi
movlpd qword [esp + 0x2c], xmm0
xor esi, esi
mov dword [esp + 0x80], edi
push ebp
mov dword [esp + 0x54], esi
mov dword [esp + 0x3c], eax
call fcn.10070f50
mov dh, al
cmp dh, 2
jne 0x1006a55c
cmp dword [ebp + 8], 3
jne 0x1006a55c
mov ecx, dword [ebp + 4]
mov ah, 0x19
mov al, byte [ecx + 2]
mov bl, byte [ecx]
sub al, 0x41
mov dl, byte [ecx + 1]
cmp ah, al
sbb eax, eax
and eax, 0xffffffe0
add eax, 0x20
mov dword [esp + 0x18], eax
movzx eax, byte [ecx + 2]
mov ecx, dword [esp + 0x18]
xor ecx, eax
mov al, dl
shl ecx, 8
sub al, 0x41
mov dword [esp + 0x18], ecx
mov cl, 0x19
cmp cl, al
movzx eax, dl
sbb ecx, ecx
and ecx, 0xffffffe0
add ecx, 0x20
xor ecx, eax
mov eax, dword [esp + 0x18]
or eax, ecx
mov cl, 0x19
shl eax, 8
mov dword [esp + 0x18], eax
mov al, bl
sub al, 0x41
cmp cl, al
movzx eax, bl
sbb ecx, ecx
and ecx, 0xffffffe0
add ecx, 0x20
xor ecx, eax
mov eax, dword [esp + 0x18]
or eax, ecx
cmp eax, 0x736261
jne 0x1006a53c
mov dword [esp + 0x34], 0x4000
jmp 0x1006a54b
cmp eax, 0x6c6572
jne 0x1006a55c
mov dword [esp + 0x34], 0x8000
mov ecx, dword [esp + 0x1c]
push 0
push ebp
lea ecx, [ecx + 4]
call fcn.10070f50
mov dh, al
mov eax, dword [esp + 0x2c]
xor bh, bh
mov ecx, dword [esp + 0x28]
mov bl, 0xc
mov byte [esp + 0x17], bh
mov dword [esp + 0x18], eax
mov dword [esp + 0x28], ecx
cmp dh, 2
jne 0x1006a6f5
cmp bl, 0xc
jne 0x1006a449
push dword [ebp + 8]
mov ebx, dword [esp + 0x20]
lea edx, [esp + 0x5c]
push dword [ebp + 4]
mov ecx, ebx
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.10069a00
add esp, 8
test al, al
jne 0x1006a5e6
test edi, edi
jne 0x1006a449
push dword [ebp + 8]
lea edx, [esp + 0x5c]
mov ecx, ebx
push dword [ebp + 4]
call fcn.10069f90
add esp, 8
test eax, eax
jne 0x1006a9d1
push 0
push ebp
lea ecx, [ebx + 4]
call fcn.10070f50
mov dh, al
mov bl, 0x13
cmp dh, 0xe
je 0x1006a644
mov bh, byte [esp + 0x17]
test edi, edi
jne 0x1006a621
test bh, bh
jne 0x1006a621
movups xmm0, xmmword [esp + 0x58]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x18]
movups xmmword [esp + 0x78], xmm0
mov edi, dword [esp + 0x78]
jmp 0x1006a574
test esi, esi
jne 0x1006a449
movups xmm0, xmmword [esp + 0x58]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x18]
movups xmmword [esp + 0x48], xmm0
mov esi, dword [esp + 0x48]
jmp 0x1006a574
mov eax, edi
and al, 7
cmp al, 4
je 0x1006a449
test esi, esi
jne 0x1006a449
mov ecx, dword [esp + 0x1c]
movups xmm0, xmmword [esp + 0x58]
push esi
push ebp
lea ecx, [ecx + 4]
movups xmmword [esp + 0x50], xmm0
call fcn.10070f50
cmp al, 4
jne 0x1006a796
mov edx, dword [ebp + 0x10]
mov ecx, edx
mov eax, dword [ebp + 0x14]
add ecx, 0xffffffff
adc eax, 0xffffffff
test eax, eax
ja 0x1006a796
jb 0x1006a699
cmp ecx, 7
ja 0x1006a796
lea eax, [edx - 1]
jmp dword [eax*4 + 0x1006a9dc]
cmp dh, 4
jne 0x1006a72c
cmp bl, 0xc
jne 0x1006a711
add ecx, dword [ebp + 0x10]
mov bl, 0x13
mov dword [esp + 0x28], ecx
adc eax, dword [ebp + 0x14]
mov dword [esp + 0x18], eax
jmp 0x1006a778
cmp bl, 0xd
jne 0x1006a449
sub ecx, dword [ebp + 0x10]
mov bl, 0x13
mov dword [esp + 0x28], ecx
sbb eax, dword [ebp + 0x14]
mov dword [esp + 0x18], eax
jmp 0x1006a778
cmp dh, 0xc
jne 0x1006a741
cmp bl, 0x13
movzx eax, bl
movzx ecx, dh
cmovne ecx, eax
mov bl, cl
jmp 0x1006a778
cmp dh, 0xd
jne 0x1006a75a
cmp bl, 0x13
jne 0x1006a74f
mov bl, dh
jmp 0x1006a778
cmp bl, 0xd
setne bl
add bl, 0xc
jmp 0x1006a778
cmp dh, 9
je 0x1006a7a6
cmp dh, 0x10
jne 0x1006a449
test bh, bh
jne 0x1006a449
mov bh, 1
mov bl, 0xc
mov byte [esp + 0x17], bh
mov ecx, dword [esp + 0x1c]
push 0
push ebp
lea ecx, [ecx + 4]
call fcn.10070f50
mov ecx, dword [esp + 0x28]
mov dh, al
mov eax, dword [esp + 0x18]
jmp 0x1006a574
mov eax, 0x2d
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
cmp bl, 0x13
jne 0x1006a449
mov eax, edi
and eax, 0xf07
cmp eax, 0x101
jne 0x1006a7d9
mov eax, esi
and al, 7
cmp al, 1
je 0x1006a449
mov ebp, dword [esp + 0x7c]
mov eax, edi
mov ebx, dword [esp + 0x4c]
mov edi, esi
mov esi, eax
jmp 0x1006a7e1
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x4c]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x28], ebp
test edi, edi
je 0x1006a8db
mov ebp, ecx
mov eax, edx
add ebp, 0x80000000
adc eax, 0
jne 0x1006a805
cmp ebp, 0xffffffff
jbe 0x1006a849
test edx, edx
jg 0x1006a8cb
jl 0x1006a8cb
cmp ecx, 0xffffffff
ja 0x1006a8cb
test edx, edx
jl 0x1006a8cb
jg 0x1006a82e
test ecx, ecx
jb 0x1006a8cb
mov eax, edi
and eax, 0xf8
cmp al, 0x38
jne 0x1006a849
mov eax, 0x2f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
mov eax, edi
mov dword [esp + 0x7c], ebx
and al, 7
cmp al, 4
jne 0x1006a86d
mov dword [esp + 0x78], 0xa
mov dword [esp + 0x80], 0
jmp 0x1006a91c
mov edx, dword [esp + 0x24]
mov eax, esi
shr edi, 3
and al, 7
and edi, 0x1f
mov dword [esp + 0x84], ecx
cmp al, 1
je 0x1006a8a0
shl edi, 3
or edi, 2
mov dword [esp + 0x80], 0
mov dword [esp + 0x78], edi
jmp 0x1006a927
mov eax, dword [esp + 0x20]
shr esi, 3
and esi, 0x1f
shl eax, 8
or esi, eax
mov eax, dword [esp + 0x28]
shl esi, 5
or esi, edi
mov dword [esp + 0x80], eax
shl esi, 3
or esi, 2
mov dword [esp + 0x78], esi
jmp 0x1006a927
mov eax, 0x2e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
mov eax, esi
mov dword [esp + 0x7c], edx
and al, 7
cmp al, 1
je 0x1006a8fc
mov dword [esp + 0x78], 2
mov dword [esp + 0x80], 0
jmp 0x1006a91c
mov eax, dword [esp + 0x20]
shr esi, 3
and esi, 0x1f
shl eax, 8
or esi, eax
mov dword [esp + 0x80], ebp
shl esi, 8
or esi, 2
mov dword [esp + 0x78], esi
mov edx, dword [esp + 0x24]
mov dword [esp + 0x84], ecx
movups xmm0, xmmword [esp + 0x78]
mov eax, dword [esp + 0x3c]
shl eax, 0x18
movups xmmword [edx], xmm0
mov ecx, dword [edx]
and ecx, 0xffffff
or ecx, eax
mov eax, dword [esp + 0x38]
or ecx, dword [esp + 0x34]
and al, 7
mov dword [edx], ecx
cmp al, 1
jne 0x1006a9cf
mov eax, dword [esp + 0x6c]
and ecx, 0xffe3ffff
shl eax, 0x12
or eax, ecx
mov dword [edx], eax
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
cmp bl, 4
je 0x1006a997
cmp bl, 0xd
jne 0x1006a987
push 0
push ebp
add ecx, 4
call fcn.10070f50
cmp al, 4
je 0x1006a997
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
cmp bl, 0xd
jne 0x1006a9a9
neg ecx
adc eax, 0
neg eax
mov dword [esp + 0x78], 3
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
movups xmm0, xmmword [esp + 0x78]
movups xmmword [edi], xmm0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret