Function at 0x100adc00
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, 0x4178
call fcn.101a2b80
mov eax, dword [0x1020f0c0]
xor eax, esp
mov dword [esp + 0x4174], eax
mov eax, dword [0x1022ee74]
push esi
push edi
cmp dword [eax], 0
jne 0x100adc48
mov ecx, 0x1033e7c4
call fcn.100b11c0
pop edi
pop esi
mov ecx, dword [esp + 0x4174]
xor ecx, esp
call fcn.101a1d25
mov esp, ebp
pop ebp
ret
cmp dword [0x1033e7d4], 0
je 0x100b04a6
mov ecx, dword [0x1033e7cc]
mov eax, dword [0x1033e7c8]
dec ecx
and ecx, dword [0x1033e7d0]
mov ecx, dword [eax + ecx*4]
movss xmm0, dword [ecx + 0x3f10]
ucomiss xmm0, dword [0x10201264]
lahf
test ah, 0x44
jnp 0x100b04a6
push ecx
lea ecx, [esp + 0x24]
call fcn.100b04d0
call fcn.100b0eb0
mov eax, dword [0x1022ee74]
mov ecx, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 0x270]
call eax
test al, al
je 0x100add24
mov eax, dword [0x1022ee74]
mov ecx, dword [0x1022e69c]
mov esi, dword [eax]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10456884]
cmp eax, dword [ecx + 4]
jle 0x100add08
push 0x10456884
call fcn.101a22b8
add esp, 4
cmp dword [0x10456884], 0xffffffff
jne 0x100add08
mov edx, 0xc60bf9f2
mov ecx, 0x101f20b5
call fcn.1007ea30
mov ecx, eax
call fcn.100d5410
push 0x10456884
mov dword [0x1045687c], eax
call fcn.101a2267
add esp, 4
mov eax, dword [0x1045687c]
movd xmm0, dword [esi + eax]
mov eax, dword [0x1022ccc4]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x10]
mulss xmm0, dword [eax + 0x20]
jmp 0x100add31
mov eax, dword [0x1022ccc4]
mov eax, dword [eax + 0x10]
movss xmm0, dword [eax + 0x10]
subss xmm0, dword [esp + 0x3f30]
andps xmm0, xmmword [0x102017f0]
comiss xmm0, dword [0x10200e78]
jbe 0x100ae227
xor edx, edx
mov dword [esp + 0x1c], edx
cmp byte [esp + 0x3f2c], dl
je 0x100adfa1
cmp dword [0x1022e690], 2
movups xmm0, xmmword [0x101f23d0]
mov eax, dword [0x101f23f0]
mov dword [esp + 0x4020], eax
mov ax, word [0x101f23f4]
movups xmmword [esp + 0x4000], xmm0
mov word [esp + 0x4024], ax
movups xmm0, xmmword [0x101f23e0]
movups xmmword [esp + 0x4010], xmm0
jl 0x100adee4
movaps xmm0, xmmword [0x10201560]
lea esi, [esp + 0x4004]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
nop dword [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x4000]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x4000], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + esi]
xorps xmm1, xmm0
movd dword [edx + esi], xmm1
add edx, 8
cmp edx, 0x20
jl 0x100adde0
mov dword [esp + 0x1c], edx
cmp edx, 0x26
jge 0x100adf17
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x1c]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x4000], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 0x26
jl 0x100adee4
xorps xmm0, xmm0
mov dword [esp + 0x3f50], 0
lea ecx, [esp + 0x4000]
movaps xmmword [esp + 0x3f40], xmm0
mov dword [esp + 0x3f54], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100adf42
sub ecx, edx
lea eax, [esp + 0x4000]
push ecx
push eax
lea ecx, [esp + 0x3f48]
call fcn.10028880
cmp dword [esp + 0x3f54], 0xf
lea edx, [esp + 0x3f40]
xorps xmm0, xmm0
cmova edx, dword [esp + 0x3f40]
sub esp, 0x18
mov esi, esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100adf95
jmp 0x100ae1cc
cmp dword [0x1022e690], 2
movups xmm0, xmmword [0x101f23ac]
mov eax, dword [0x101f23cc]
mov dword [esp + 0x4020], eax
movups xmmword [esp + 0x4000], xmm0
movups xmm0, xmmword [0x101f23bc]
movups xmmword [esp + 0x4010], xmm0
jl 0x100ae114
movaps xmm0, xmmword [0x10201560]
lea esi, [esp + 0x4004]
movaps xmm4, xmmword [0x10201400]
xor edx, edx
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
nop dword [eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x4000]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x4000], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + esi]
xorps xmm1, xmm0
movd dword [edx + esi], xmm1
add edx, 8
cmp edx, 0x20
jl 0x100ae010
mov dword [esp + 0x1c], edx
cmp edx, 0x24
jge 0x100ae147
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x1c]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x4000], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 0x24
jl 0x100ae114
xorps xmm0, xmm0
mov dword [esp + 0x3f50], 0
lea ecx, [esp + 0x4000]
movaps xmmword [esp + 0x3f40], xmm0
mov dword [esp + 0x3f54], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ae172
sub ecx, edx
lea eax, [esp + 0x4000]
push ecx
push eax
lea ecx, [esp + 0x3f48]
call fcn.10028880
cmp dword [esp + 0x3f54], 0xf
lea edx, [esp + 0x3f40]
xorps xmm0, xmm0
cmova edx, dword [esp + 0x3f40]
sub esp, 0x18
mov esi, esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ae1c5
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.10028880
call fcn.100d3030
mov ecx, dword [esp + 0x3f54]
cmp ecx, 0xf
jbe 0x100ae218
mov edx, dword [esp + 0x3f40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ae20e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, 0x1033e7c4
call fcn.100b11c0
jmp 0x100b0471
cmp byte [esp + 0x3ee4], 0
je 0x100b0471
mov eax, dword [0x1022ccd0]
push dword [esp + 0x3f34]
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov dword [esp + 0x1c], eax
test eax, eax
je 0x100b0471
mov edx, dword [esp + 0x3f10]
test edx, edx
je 0x100b0471
mov ecx, dword [0x1022ccd0]
push edx
mov ecx, dword [ecx + 0x40]
mov eax, dword [ecx]
mov eax, dword [eax + 0x80]
call eax
mov ecx, eax
test ecx, ecx
je 0x100b0471
cmp dword [ecx + 0xac], 0
jle 0x100b0471
mov eax, dword [ecx + 0xb0]
add eax, ecx
mov dword [esp + 0x18], eax
je 0x100b0471
movss xmm0, dword [esp + 0x3f20]
lea eax, [esp + 0x3f70]
subss xmm0, dword [esp + 0x3f14]
push eax
lea ecx, [esp + 0x3f44]
movss dword [esp + 0x3f44], xmm0
movss xmm0, dword [esp + 0x3f28]
subss xmm0, dword [esp + 0x3f1c]
movss dword [esp + 0x3f48], xmm0
movss xmm0, dword [esp + 0x3f2c]
subss xmm0, dword [esp + 0x3f20]
movss dword [esp + 0x3f4c], xmm0
call fcn.1008b730
xorps xmm1, xmm1
lea ecx, [esp + 0x3f40]
movss xmm0, dword [eax]
subss xmm0, xmm1
movss dword [esp + 0x3f40], xmm0
movss xmm0, dword [eax + 4]
subss xmm0, xmm1
movss dword [esp + 0x3f44], xmm0
movss xmm0, dword [eax + 8]
subss xmm0, xmm1
movss dword [esp + 0x3f48], xmm0
call fcn.1008b820
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [esp + 0x3fe0], xmm0
movss xmm0, dword [esp + 0x3fe0]
mulss xmm0, dword [0x10200d6c]
mov dword [esp + 0x3fe8], eax
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x3f40], xmm0
call fcn.101c8d70
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x14], xmm0
movss xmm0, dword [esp + 0x3fe4]
mulss xmm0, dword [0x10200d6c]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x3fe0], xmm0
call fcn.101c8d70
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movsd xmm0, qword [esp + 0x3fe0]
mulss xmm1, dword [esp + 0x14]
mulss xmm1, dword [0x10201208]
addss xmm1, dword [esp + 0x3f20]
movss dword [esp + 0x3f70], xmm1
call fcn.101c9ff0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movsd xmm0, qword [esp + 0x3f40]
mulss xmm1, dword [esp + 0x14]
mulss xmm1, dword [0x10201208]
addss xmm1, dword [esp + 0x3f24]
movss dword [esp + 0x3f74], xmm1
call fcn.101c9ff0
mov ecx, dword [esp + 0x3f38]
cvtsd2ss xmm0, xmm0
xorps xmm0, xmmword [0x10201820]
mulss xmm0, dword [0x10201208]
addss xmm0, dword [esp + 0x3f28]
movss dword [esp + 0x3f78], xmm0
cmp ecx, 0xffffffff
jg 0x100ae455
lea edi, [esp + 0x8bc]
jmp 0x100ae48b
cmp dword [esp + 0x8b8], ecx
jbe 0x100b04ba
mov edx, dword [esp + 0x8b4]
mov eax, dword [esp + 0x8a8]
add edx, ecx
test eax, eax
je 0x100ae47a
mov eax, dword [eax]
jmp 0x100ae47c
xor eax, eax
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
dec ecx
and ecx, edx
mov edi, dword [eax + ecx*4]
add edi, 0x68
xor esi, esi
nop dword [eax]
lea eax, [esp + 0x3f70]
mov edx, esi
push eax
lea eax, [esp + 0x3f18]
mov ecx, edi
push eax
push dword [esp + 0x20]
call fcn.1008ce30
test al, al
jne 0x100ae6c3
inc esi
cmp esi, 0x13
jl 0x100ae490
movups xmm0, xmmword [str.UPIHYY]
mov ax, word [0x101f243c]
mov word [esp + 0x4018], ax
movups xmmword [esp + 0x4000], xmm0
movq xmm0, qword [0x101f2434]
movq qword [esp + 0x4010], xmm0
test ah, ah
je 0x100ae677
xor edx, edx
cmp dword [0x1022e690], 2
mov dword [esp + 0x1c], edx
jl 0x100ae644
movaps xmm0, xmmword [0x10201560]
lea esi, [esp + 0x4004]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x4000]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x4000], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + esi]
xorps xmm1, xmm0
movd dword [edx + esi], xmm1
add edx, 8
cmp edx, 0x18
jl 0x100ae540
mov dword [esp + 0x1c], edx
cmp edx, 0x1a
jge 0x100ae677
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x1c]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x4000], cl
inc edx
mov dword [esp + 0x1c], edx
cmp edx, 0x1a
jl 0x100ae644
sub esp, 0x18
lea ecx, [esp + 0x4018]
mov edx, esp
lea esi, [ecx + 1]
xorps xmm0, xmm0
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ae6a0
sub ecx, esi
lea eax, [esp + 0x4018]
push ecx
push eax
mov ecx, edx
call fcn.10028880
call fcn.100d3030
jmp 0x100b0471
movups xmm0, xmmword [0x101f2458]
mov al, byte [0x101f2468]
xor edx, edx
mov esi, dword [0x1022e690]
mov byte [esp + 0x3f50], al
mov dword [esp + 0x14], edx
movups xmmword [esp + 0x3f40], xmm0
cmp esi, 2
jl 0x100ae834
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + edi]
xorps xmm1, xmm0
movd dword [edx + edi], xmm1
add edx, 8
cmp edx, 0x10
jl 0x100ae730
mov dword [esp + 0x14], edx
cmp edx, 0x11
jge 0x100ae867
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x11
jl 0x100ae834
xorps xmm0, xmm0
mov dword [esp + 0x3fb0], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3fa0], xmm0
mov dword [esp + 0x3fb4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ae892
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3fa8]
call fcn.10028880
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x40f8]
push eax
call fcn.10195840
xorps xmm0, xmm0
mov dword [esp + 0x3f90], 0
lea ecx, [esp + 0x40f8]
movaps xmmword [esp + 0x3f80], xmm0
mov dword [esp + 0x3f94], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ae8f0
sub ecx, edx
lea eax, [esp + 0x40f8]
push ecx
push eax
lea ecx, [esp + 0x3f88]
call fcn.10028880
movups xmm0, xmmword [0x101f23f8]
movups xmmword [esp + 0x3f40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100aeaa3
xor edx, edx
mov dword [esp + 0x14], edx
cmp esi, 2
jl 0x100aea70
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
xor ecx, ecx
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov edx, dword [esp + 0x3f70]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ecx + edi]
xorps xmm1, xmm0
movd dword [ecx + edi], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100ae971
jmp 0x100aeaa3
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x10
jl 0x100aea70
xorps xmm0, xmm0
mov dword [esp + 0x3ff0], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3fe0], xmm0
mov dword [esp + 0x3ff4], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100aead0
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3fe8]
call fcn.10028880
lea eax, [esp + 0x3f80]
push eax
lea eax, [esp + 0x3fe4]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x3fcc]
call fcn.1002a870
lea eax, [esp + 0x3fa0]
push eax
lea eax, [esp + 0x3fc4]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x40d4]
call fcn.1002a870
mov ecx, dword [esp + 0x3fd4]
cmp ecx, 0xf
jbe 0x100aeb6a
mov edx, dword [esp + 0x3fc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100aeb60
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3ff4]
cmp ecx, 0xf
jbe 0x100aeba6
mov edx, dword [esp + 0x3fe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100aeb9c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3f94]
cmp ecx, 0xf
jbe 0x100aebe2
mov edx, dword [esp + 0x3f80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100aebd8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fb4]
cmp ecx, 0xf
jbe 0x100aec1e
mov edx, dword [esp + 0x3fa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100aec14
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov edx, dword [esp + 0x3f38]
lea ecx, [esp + 0x4030]
call fcn.10003fe0
movups xmm0, xmmword [0x101f248c]
mov cl, byte [0x101f24ac]
xor edx, edx
mov byte [esp + 0x3f60], cl
mov edi, eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edx
movups xmmword [esp + 0x3f40], xmm0
movups xmm0, xmmword [0x101f249c]
movups xmmword [esp + 0x3f50], xmm0
cmp esi, 2
jl 0x100aedb0
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + edi]
xorps xmm1, xmm0
movd dword [edx + edi], xmm1
add edx, 8
cmp edx, 0x20
jl 0x100aeca3
mov edi, dword [esp + 0x18]
mov dword [esp + 0x14], edx
cmp edx, 0x21
jge 0x100aede3
nop dword [eax + eax]
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x21
jl 0x100aedb0
xorps xmm0, xmm0
mov dword [esp + 0x3fd0], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3fc0], xmm0
mov dword [esp + 0x3fd4], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100aee10
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3fc8]
call fcn.10028880
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x40f8]
push eax
call fcn.10195840
xorps xmm0, xmm0
mov dword [esp + 0x3f90], 0
lea ecx, [esp + 0x40f8]
movaps xmmword [esp + 0x3f80], xmm0
mov dword [esp + 0x3f94], 0
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100aee70
sub ecx, edx
lea eax, [esp + 0x40f8]
push ecx
push eax
lea ecx, [esp + 0x3f88]
call fcn.10028880
movups xmm0, xmmword [0x101f23f8]
movups xmmword [esp + 0x3f40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100af025
xor edx, edx
mov dword [esp + 0x14], edx
cmp esi, 2
jl 0x100aeff2
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
xor ecx, ecx
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov edx, dword [esp + 0x3f70]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [edi + ecx]
xorps xmm1, xmm0
movd dword [edi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100aeef1
mov edi, dword [esp + 0x18]
jmp 0x100af025
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x10
jl 0x100aeff2
xorps xmm0, xmm0
mov dword [esp + 0x3fb0], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3fa0], xmm0
mov dword [esp + 0x3fb4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100af050
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3fa8]
call fcn.10028880
lea eax, [esp + 0x3f80]
push eax
lea eax, [esp + 0x3fa4]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x4064]
call fcn.1002a870
lea eax, [esp + 0x3fc0]
push eax
lea eax, [esp + 0x405c]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x40a4]
call fcn.1002a870
push edi
lea eax, [esp + 0x409c]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x3fec]
call fcn.1002a870
cmp dword [esp + 0x3ff4], 0xf
lea ecx, [esp + 0x3fe0]
mov eax, dword [esp + 0x3ff0]
cmova ecx, dword [esp + 0x3fe0]
mov byte [eax + ecx], 0
movaps xmm0, xmmword [esp + 0x3fe0]
mov ecx, dword [esp + 0x40ac]
movaps xmmword [esp + 0x4070], xmm0
movq xmm0, qword [esp + 0x3ff0]
movq qword [esp + 0x4080], xmm0
mov dword [esp + 0x3ff0], 0
mov dword [esp + 0x3ff4], 0xf
mov byte [esp + 0x3fe0], 0
cmp ecx, 0xf
jbe 0x100af165
mov edx, dword [esp + 0x4098]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af15b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04bf
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x406c]
cmp ecx, 0xf
jbe 0x100af1a1
mov edx, dword [esp + 0x4058]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af197
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04bf
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fb4]
cmp ecx, 0xf
jbe 0x100af1dd
mov edx, dword [esp + 0x3fa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af1d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04bf
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3f94]
cmp ecx, 0xf
jbe 0x100af219
mov edx, dword [esp + 0x3f80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af20f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04bf
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fd4]
cmp ecx, 0xf
jbe 0x100af255
mov edx, dword [esp + 0x3fc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af24b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04bf
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x4044]
cmp ecx, 0xf
jbe 0x100af291
mov edx, dword [esp + 0x4030]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af287
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04bf
push ecx
push edx
call fcn.101a201e
add esp, 8
movups xmm0, xmmword [0x101f2408]
mov al, byte [0x101f2420]
xor edx, edx
mov byte [esp + 0x4048], al
mov dword [esp + 0x14], edx
movups xmmword [esp + 0x4030], xmm0
movq xmm0, qword [0x101f2418]
movq qword [esp + 0x4040], xmm0
cmp esi, 2
jl 0x100af404
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x4034]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
nop
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x4030]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x4030], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + edi]
xorps xmm1, xmm0
movd dword [edx + edi], xmm1
add edx, 8
cmp edx, 0x18
jl 0x100af300
mov dword [esp + 0x14], edx
cmp edx, 0x19
jge 0x100af437
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x4030], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x19
jl 0x100af404
xorps xmm0, xmm0
mov dword [esp + 0x3f90], 0
lea ecx, [esp + 0x4030]
movaps xmmword [esp + 0x3f80], xmm0
mov dword [esp + 0x3f94], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100af462
sub ecx, edx
lea eax, [esp + 0x4030]
push ecx
push eax
lea ecx, [esp + 0x3f88]
call fcn.10028880
mov edi, dword [esp + 0x1c]
lea eax, [esp + 0x40f8]
push eax
mov ecx, edi
call fcn.10195840
xorps xmm0, xmm0
mov dword [esp + 0x3fb0], 0
lea ecx, [esp + 0x40f8]
movaps xmmword [esp + 0x3fa0], xmm0
mov dword [esp + 0x3fb4], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100af4c0
sub ecx, edx
lea eax, [esp + 0x40f8]
push ecx
push eax
lea ecx, [esp + 0x3fa8]
call fcn.10028880
movups xmm0, xmmword [0x101f23f8]
movups xmmword [esp + 0x3f40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100af675
xor edx, edx
mov dword [esp + 0x18], edx
cmp esi, 2
jl 0x100af642
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
xor ecx, ecx
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov edx, dword [esp + 0x3f70]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ecx + edi]
xorps xmm1, xmm0
movd dword [ecx + edi], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100af541
mov edi, dword [esp + 0x1c]
jmp 0x100af675
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x10
jl 0x100af642
xorps xmm0, xmm0
mov dword [esp + 0x3fd0], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3fc0], xmm0
mov dword [esp + 0x3fd4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100af6a0
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3fc8]
call fcn.10028880
lea eax, [esp + 0x3fa0]
push eax
lea eax, [esp + 0x3fc4]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x4064]
call fcn.1002a870
lea eax, [esp + 0x3f80]
push eax
lea eax, [esp + 0x405c]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x400c]
call fcn.1002a870
mov ecx, dword [esp + 0x406c]
cmp ecx, 0xf
jbe 0x100af73a
mov edx, dword [esp + 0x4058]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af730
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fd4]
cmp ecx, 0xf
jbe 0x100af776
mov edx, dword [esp + 0x3fc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af76c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fb4]
cmp ecx, 0xf
jbe 0x100af7b2
mov edx, dword [esp + 0x3fa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af7a8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3f94]
cmp ecx, 0xf
jbe 0x100af7ee
mov edx, dword [esp + 0x3f80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100af7e4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov eax, dword [0x101f2450]
xor edx, edx
mov dword [esp + 0x3f50], eax
mov al, byte [0x101f2454]
mov byte [esp + 0x3f54], al
mov dword [esp + 0x14], edx
movups xmm0, xmmword [0x101f2440]
movups xmmword [esp + 0x3f40], xmm0
cmp esi, 2
jl 0x100af970
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + edi]
xorps xmm1, xmm0
movd dword [edx + edi], xmm1
add edx, 8
cmp edx, 0x10
jl 0x100af860
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], edx
cmp edx, 0x15
jge 0x100af9a3
nop dword [eax + eax]
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x15
jl 0x100af970
xorps xmm0, xmm0
mov dword [esp + 0x3f90], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3f80], xmm0
mov dword [esp + 0x3f94], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100af9d0
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3f88]
call fcn.10028880
lea eax, [esp + 0x40f8]
mov ecx, edi
push eax
call fcn.10195840
xorps xmm0, xmm0
mov dword [esp + 0x3fb0], 0
lea ecx, [esp + 0x40f8]
movaps xmmword [esp + 0x3fa0], xmm0
mov dword [esp + 0x3fb4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100afa28
sub ecx, edx
lea eax, [esp + 0x40f8]
push ecx
push eax
lea ecx, [esp + 0x3fa8]
call fcn.10028880
movups xmm0, xmmword [0x101f23f8]
movups xmmword [esp + 0x3f40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100afbe4
xor edx, edx
mov dword [esp + 0x18], edx
cmp esi, 2
jl 0x100afbb1
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
xor ecx, ecx
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov edx, dword [esp + 0x3f70]
nop dword [eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ecx + edi]
xorps xmm1, xmm0
movd dword [ecx + edi], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100afab0
mov edi, dword [esp + 0x1c]
jmp 0x100afbe4
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x10
jl 0x100afbb1
xorps xmm0, xmm0
mov dword [esp + 0x3fd0], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3fc0], xmm0
mov dword [esp + 0x3fd4], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100afc10
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3fc8]
call fcn.10028880
lea eax, [esp + 0x3fa0]
push eax
lea eax, [esp + 0x3fc4]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x4064]
call fcn.1002a870
lea eax, [esp + 0x3f80]
push eax
lea eax, [esp + 0x405c]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x40bc]
call fcn.1002a870
mov ecx, dword [esp + 0x406c]
cmp ecx, 0xf
jbe 0x100afcaa
mov edx, dword [esp + 0x4058]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100afca0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fd4]
cmp ecx, 0xf
jbe 0x100afce6
mov edx, dword [esp + 0x3fc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100afcdc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fb4]
cmp ecx, 0xf
jbe 0x100afd22
mov edx, dword [esp + 0x3fa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100afd18
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3f94]
cmp ecx, 0xf
jbe 0x100afd5e
mov edx, dword [esp + 0x3f80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100afd54
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
movups xmm0, xmmword [0x101f246c]
mov eax, dword [0x101f2484]
xor edx, edx
mov dword [esp + 0x4048], eax
mov al, byte [0x101f2488]
mov byte [esp + 0x404c], al
mov dword [esp + 0x14], edx
movups xmmword [esp + 0x4030], xmm0
movq xmm0, qword [0x101f247c]
movq qword [esp + 0x4040], xmm0
cmp esi, 2
jl 0x100afef0
movaps xmm0, xmmword [0x10201560]
lea edi, [esp + 0x4034]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov ecx, dword [esp + 0x3f70]
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x4030]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x4030], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + edi]
xorps xmm1, xmm0
movd dword [edx + edi], xmm1
add edx, 8
cmp edx, 0x18
jl 0x100afde0
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x14], edx
cmp edx, 0x1d
jge 0x100aff23
nop dword [eax + eax]
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x4030], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x1d
jl 0x100afef0
xorps xmm0, xmm0
mov dword [esp + 0x3f90], 0
lea ecx, [esp + 0x4030]
movaps xmmword [esp + 0x3f80], xmm0
mov dword [esp + 0x3f94], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100aff50
sub ecx, edx
lea eax, [esp + 0x4030]
push ecx
push eax
lea ecx, [esp + 0x3f88]
call fcn.10028880
lea eax, [esp + 0x40f8]
mov ecx, edi
push eax
call fcn.10195840
xorps xmm0, xmm0
mov dword [esp + 0x3fb0], 0
lea ecx, [esp + 0x40f8]
movaps xmmword [esp + 0x3fa0], xmm0
mov dword [esp + 0x3fb4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100affa8
sub ecx, edx
lea eax, [esp + 0x40f8]
push ecx
push eax
lea ecx, [esp + 0x3fa8]
call fcn.10028880
movups xmm0, xmmword [0x101f23f8]
movups xmmword [esp + 0x3f40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100b0163
xor edx, edx
mov dword [esp + 0x18], edx
cmp esi, 2
jl 0x100b0130
movaps xmm0, xmmword [0x10201560]
lea esi, [esp + 0x3f44]
movaps xmm4, xmmword [0x10201400]
xor ecx, ecx
movaps xmm3, xmmword [0x102017d0]
movaps xmm5, xmmword [0x10201480]
movaps xmmword [esp + 0x3f70], xmm0
mov edx, dword [esp + 0x3f70]
nop dword [eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x3f40]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x3f40], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ecx + esi]
xorps xmm1, xmm0
movd dword [ecx + esi], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100b0030
jmp 0x100b0163
mov eax, 0x4bda12f7
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x36
sub cl, al
add cl, 0x38
xor byte [esp + edx + 0x3f40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x10
jl 0x100b0130
xorps xmm0, xmm0
mov dword [esp + 0x3fd0], 0
lea ecx, [esp + 0x3f40]
movaps xmmword [esp + 0x3fc0], xmm0
mov dword [esp + 0x3fd4], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100b0190
sub ecx, edx
lea eax, [esp + 0x3f40]
push ecx
push eax
lea ecx, [esp + 0x3fc8]
call fcn.10028880
lea eax, [esp + 0x3fa0]
push eax
lea eax, [esp + 0x3fc4]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x4064]
call fcn.1002a870
lea eax, [esp + 0x3f80]
push eax
lea eax, [esp + 0x405c]
push eax
push dword [esp + 0x20]
lea ecx, [esp + 0x40ec]
call fcn.1002a870
mov ecx, dword [esp + 0x406c]
cmp ecx, 0xf
jbe 0x100b022a
mov edx, dword [esp + 0x4058]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b0220
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fd4]
cmp ecx, 0xf
jbe 0x100b0266
mov edx, dword [esp + 0x3fc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b025c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3fb4]
cmp ecx, 0xf
jbe 0x100b02a2
mov edx, dword [esp + 0x3fa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b0298
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x3f94]
cmp ecx, 0xf
jbe 0x100b02de
mov edx, dword [esp + 0x3f80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b02d4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
cmp dword [esp + 0x3f38], 1
jne 0x100b02ff
mov eax, dword [0x1022ccc8]
cmp byte [eax + 0x100c], 0
je 0x100b0316
lea eax, [esp + 0x40b0]
jmp 0x100b031d
jle 0x100b0316
mov eax, dword [0x1022ccc8]
cmp byte [eax + 0x100c], 0
lea eax, [esp + 0x4070]
jne 0x100b031d
lea eax, [esp + 0x40c8]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.10021970
call fcn.100d3030
mov eax, dword [esp + 0x3f34]
cmp eax, 0x41
jae 0x100b04c4
mov ecx, dword [esp + 0x40f4]
imul eax, eax, 0x3ef0
inc dword [eax + 0x10236720]
cmp ecx, 0xf
jbe 0x100b0385
mov edx, dword [esp + 0x40e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b037b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x40c4]
cmp ecx, 0xf
jbe 0x100b03c1
mov edx, dword [esp + 0x40b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b03b7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x4014]
cmp ecx, 0xf
jbe 0x100b03fd
mov edx, dword [esp + 0x4000]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b03f3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x4084]
cmp ecx, 0xf
jbe 0x100b0439
mov edx, dword [esp + 0x4070]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b042f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x40dc]
cmp ecx, 0xf
jbe 0x100b0471
mov edx, dword [esp + 0x40c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b0467
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b04c9
push ecx
push edx
call fcn.101a201e
add esp, 8
lea ecx, [esp + 0x3e6c]
call fcn.1002cf30
lea ecx, [esp + 0x8a8]
call fcn.10092110
mov eax, dword [esp + 0x8a8]
push 8
push eax
mov dword [esp + 0x8b0], 0
call fcn.101a201e
add esp, 8
mov ecx, dword [esp + 0x417c]
pop edi
pop esi
xor ecx, esp
call fcn.101a1d25
mov esp, ebp
pop ebp
ret
call fcn.10096270
call fcn.101a7156
call fcn.10092100
call fcn.101a7156
int3