Function at 0x10102fc0
Capabilities:
Create process on windows
Encode data using xor
Get number of processors
Self delete

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, 0x1a48
call fcn.101b5a80
mov eax, dword [0x102220c0]
xor eax, esp
mov dword [esp + 0x1a44], eax
mov edx, dword [0x10468550]
push esi
push edi
mov edi, ecx
mov eax, dword [edx + 0x1bec]
mov dword [esp + 0x14], edi
mov byte [eax + 0xa8], 1
mov eax, dword [edx + 0x1bec]
mov eax, dword [eax + 0x1d0]
test eax, eax
je 0x1010301a
cmp dword [eax + 0x10], 2
jne 0x10103015
cmp dword [eax + 4], 1
je 0x10103028
call fcn.100c8040
push 1
mov edx, 2
xor ecx, ecx
call fcn.100c7760
movss xmm0, dword [0x10214560]
mov ecx, 1
call fcn.100c7390
movss xmm0, dword [0x10214554]
call fcn.10177580
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10240d9c]
mov esi, dword [0x1023fc80]
add esi, 0x3974
mov dword [esp + 0x30], esi
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10533af4]
cmp eax, dword [ecx + 4]
jle 0x101030a3
push 0x10533af4
call fcn.101b51bd
add esp, 4
cmp dword [0x10533af4], 0xffffffff
jne 0x101030a3
push 0x101e1850
call fcn.101b4f09
add esp, 4
push 0x10533af4
call fcn.101b516c
add esp, 4
mov eax, dword [0x10468550]
xorps xmm1, xmm1
movss xmm0, dword [edi + 0x60]
subss xmm0, dword [eax + 0x5c]
comiss xmm1, xmm0
movss dword [edi + 0x60], xmm0
jb 0x10103146
mov ecx, dword [0x1023fc80]
call fcn.1001df10
mov edi, dword [esi + 4]
mov eax, dword [esi]
mov esi, eax
mov dword [esp + 0x18], eax
cmp esi, edi
je 0x10103137
nop dword [eax]
cmp dword [0x1023f394], 0xf
mov eax, 0x1023f380
mov ecx, esi
cmova eax, dword [0x1023f380]
cmp dword [esi + 0x14], 0xf
jbe 0x101030fd
mov ecx, dword [esi]
push dword [0x1023f390]
mov edx, dword [esi + 0x10]
push eax
call fcn.1002f5b0
test al, al
jne 0x10103117
add esi, 0x18
cmp esi, edi
jne 0x101030e0
mov eax, dword [esp + 0x18]
cmp esi, edi
je 0x10103137
sub esi, eax
mov eax, 0x2aaaaaab
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [0x1023f728], eax
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x30]
mov dword [eax + 0x60], 0x3dcccccd
mov ecx, dword [esi + 4]
mov eax, 0x2aaaaaab
sub ecx, dword [esi]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [0x1023f728], eax
jb 0x1010316e
mov dword [0x1023f728], 0xffffffff
mov ecx, dword [esi + 4]
mov eax, 0x2aaaaaab
sub ecx, dword [esi]
imul ecx
push 5
sar edx, 2
mov ecx, 0x101eb4ee
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x1023f728
push eax
push esi
push 0x101071e0
call fcn.10197ec0
test al, al
je 0x101031d0
mov eax, dword [0x1023f728]
cmp eax, 0xffffffff
je 0x101031d0
lea ecx, [eax + eax*2]
mov eax, dword [esi]
lea eax, [eax + ecx*8]
cmp eax, 0x1023f380
je 0x101031d0
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x101031c4
mov eax, dword [eax]
push ecx
push eax
mov ecx, 0x1023f380
call fcn.10022b70
xor ecx, ecx
call fcn.10177110
cmp byte [0x1020a517], 0
movq xmm0, qword [str.wZXQQ]
mov eax, dword [0x1020a514]
mov edi, dword [0x10240d90]
movq qword [esp + 0x50], xmm0
mov dword [esp + 0x58], eax
je 0x10103335
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103306
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm3, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov dword [esp + 0x18], edx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
movd xmm0, dword [str.wZXQQ]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214950]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x50], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
movd xmm0, dword [esp + 0x54]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214950]
xorps xmm1, xmm0
movd dword [esp + 0x54], xmm1
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x50], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xc
jl 0x10103306
mov eax, dword [0x1023f394]
mov edx, 0x1023f380
cmp eax, 0xf
mov dword [esp + 0x40], 0x1023f380
mov ecx, 0x101eb4ee
mov dword [esp + 0x44], 0
cmova edx, dword [0x1023f380]
lea esi, [eax + 1]
mov dword [esp + 0x48], 0
lea eax, [esp + 0x40]
mov dword [esp + 0x28], 0
push eax
push 0x100c1940
push 0x40020
lea eax, [esp + 0x34]
mov dword [esp + 0x38], 0
push eax
push esi
push edx
lea edx, [esp + 0x68]
call fcn.1018e650
test al, al
je 0x10103506
mov eax, dword [0x1023f728]
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
je 0x10103506
cmp dword [0x1023f394], 0xf
mov esi, 0x1023f380
mov eax, dword [0x1023fc80]
cmova esi, dword [0x1023f380]
mov ecx, esi
mov dword [esp + 0x18], eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101033d3
sub ecx, edx
mov edx, 0xfde9
push ecx
push esi
lea ecx, [esp + 0x88]
call fcn.10003f20
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xc8]
add eax, 0x395c
push eax
mov dword [esp + 0x3c], eax
call fcn.100206c0
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0xcc]
call fcn.10004130
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
lea eax, [eax + eax*2]
mov edx, dword [edx + 0x3974]
shl eax, 3
add edx, eax
mov dword [esp + 0x20], eax
cmp dword [edx + 0x14], 0xf
jbe 0x1010343f
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x14], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10103448
sub ecx, dword [esp + 0x14]
push ecx
push edx
mov edx, 0xfde9
lea ecx, [esp + 0xe8]
call fcn.10003f20
push dword [esp + 0x38]
lea ecx, [esp + 0x64]
call fcn.100206c0
lea eax, [esp + 0xe0]
push eax
lea ecx, [esp + 0x64]
call fcn.10004130
cmp dword [esp + 0xdc], 7
lea ecx, [esp + 0xc8]
lea eax, [esp + 0x60]
cmova ecx, dword [esp + 0xc8]
cmp dword [esp + 0x74], 7
push ecx
cmova eax, dword [esp + 0x64]
push eax
call fcn.101b3711
lea ecx, [esp + 0x60]
call fcn.100021e0
lea ecx, [esp + 0xe0]
call fcn.100021e0
lea ecx, [esp + 0xc8]
call fcn.100021e0
lea ecx, [esp + 0x80]
call fcn.100021e0
mov eax, dword [esp + 0x18]
mov edx, esi
mov ecx, dword [eax + 0x3974]
lea eax, [edx + 1]
add ecx, dword [esp + 0x20]
mov dword [esp + 0x20], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x101034f4
sub edx, dword [esp + 0x20]
push edx
push esi
call fcn.10022b70
mov eax, dword [0x10468550]
movups xmm0, xmmword [str.ESY]
mov eax, dword [eax + 0x1bec]
mov dword [esp + 0x28], 0x437a0000
mov dword [esp + 0x2c], 0x41c80000
movups xmmword [esp + 0x60], xmm0
dec dword [eax + 0xe0]
mov eax, dword [0x1020a58c]
mov dword [esp + 0x70], eax
mov ax, word [0x1020a590]
mov word [esp + 0x74], ax
test ah, ah
je 0x101036bf
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103690
movaps xmm0, xmmword [0x10214950]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x102147a0]
movaps xmm3, xmmword [0x10214900]
movaps xmm5, xmmword [0x10214850]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x60]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x60], 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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esi + edx]
xorps xmm1, xmm0
movd dword [esi + edx], xmm1
add edx, 8
cmp edx, 0x10
jl 0x10103590
mov dword [esp + 0x18], edx
cmp edx, 0x16
jge 0x101036bf
nop
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x16
jl 0x10103690
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x68]
call fcn.10186480
test al, al
je 0x10103734
mov esi, dword [0x1023fc80]
add esi, 0x395c
mov eax, esi
cmp dword [esi + 0x14], 7
jbe 0x101036ea
mov eax, dword [esi]
push eax
call fcn.101b31fa
push esi
lea ecx, [esp + 0xcc]
call fcn.100206c0
cmp dword [esp + 0xdc], 7
lea eax, [esp + 0xc8]
push 1
cmova eax, dword [esp + 0xcc]
push 0
push 0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [esp + 0xc8]
call fcn.100021e0
mov eax, dword [0x10209f30]
movq xmm0, qword [str.wGSVL_]
mov dword [esp + 0x48], eax
mov ax, word [0x10209f34]
mov dword [esp + 0x28], 0x437a0000
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x101038af
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103880
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.wGSVL_]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x10103880
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x48]
call fcn.10186480
test al, al
je 0x1010391d
cmp dword [0x1023f394], 0xf
mov esi, 0x1023f380
mov eax, dword [0x1023fc80]
xorps xmm0, xmm0
cmova esi, dword [0x1023f380]
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x50], eax
mov edx, esi
movups xmmword [ecx], xmm0
lea eax, [edx + 1]
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
mov dword [esp + 0x38], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x10103902
sub edx, dword [esp + 0x38]
push edx
push esi
call fcn.10027870
mov ecx, dword [esp + 0x50]
call fcn.1001b390
cmp dword [0x1023f728], 0xffffffff
je 0x10104e85
mov eax, dword [0x10209ba4]
movq xmm0, qword [0x10209b9c]
mov dword [esp + 0x48], eax
mov ax, word [0x10209ba8]
mov dword [esp + 0x28], 0x437a0000
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10103a9f
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103a70
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209b9c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x10103a70
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x48]
call fcn.10186480
test al, al
je 0x10103b02
mov eax, dword [0x1023f728]
mov ecx, dword [0x1023fc80]
lea edx, [eax + eax*2]
mov eax, dword [ecx + 0x3974]
cmp dword [eax + edx*8 + 0x14], 0xf
lea eax, [eax + edx*8]
jbe 0x10103ad4
mov eax, dword [eax]
push ecx
push eax
call fcn.10010d00
mov eax, dword [0x1023fc88]
push str.cl_fullupdate
mov ecx, dword [eax + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
mov eax, dword [eax + 0x18]
call eax
mov cl, 1
mov byte [0x1046ad08], 1
call fcn.1011f670
mov eax, dword [0x10468550]
xor edx, edx
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ecx, dword [esi]
push dword [eax + ecx*4 - 4]
mov ecx, str.SAVE
call fcn.1016be30
mov ecx, dword [esi]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x10103b59
inc ecx
test eax, eax
je 0x10103b47
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x10103b4c
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bbfa0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x20]
movq xmm0, qword [0x1020a964]
mov dword [esp + 0x28], 0x437a0000
mov dword [eax + ecx*4], edx
mov eax, dword [0x1020a96c]
inc dword [esi]
mov dword [esp + 0x58], eax
mov ax, word [0x1020a970]
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x50], xmm0
mov word [esp + 0x5c], ax
test ah, ah
je 0x10103cdf
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103cb0
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1020a964]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x50], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x54]
xorps xmm1, xmm0
movd dword [esp + 0x54], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x50], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x10103cb0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x58]
call fcn.10186480
test al, al
je 0x10103e9e
mov eax, dword [0x10209530]
xor edx, edx
movq xmm0, qword [0x10209528]
mov dword [esp + 0x48], eax
mov al, byte [0x10209534]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4c], al
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103e22
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209528]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xd
jl 0x10103e22
mov esi, dword [0x10468550]
xor edx, edx
mov eax, dword [esi + 0x1bec]
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
lea ecx, [esp + 0x44]
call fcn.1016be30
cmp dword [esi + 0x1c24], eax
jne 0x10103e86
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10103e95
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10178350
mov eax, dword [0x10209530]
xor edx, edx
movq xmm0, qword [0x10209528]
mov dword [esp + 0x48], eax
mov al, byte [0x10209534]
mov byte [esp + 0x4c], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103fd0
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209528]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xd
jl 0x10103fd0
mov esi, dword [0x10468550]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x10104022
mov dword [esi + 0x1c74], 0
jmp 0x101043ca
mov eax, dword [esi + 0x1bec]
xor edx, edx
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
lea ecx, [esp + 0x44]
call fcn.1016be30
cmp dword [esi + 0x1c24], eax
jne 0x10104051
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10104060
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.10178690
test al, al
je 0x101043ca
mov eax, dword [0x102090b4]
xor edx, edx
movq xmm0, qword [0x102090ac]
mov dword [esp + 0x48], eax
mov ax, word [0x102090b8]
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x101041e1
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101041b0
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x102090ac]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x101041b0
xor edx, edx
push 1
lea ecx, [esp + 0x44]
call fcn.10185650
mov ax, word [0x1020965c]
xor edx, edx
mov word [esp + 0x14], ax
mov al, byte [0x1020965e]
mov byte [esp + 0x16], al
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0x42340000
mov dword [esp + 0x18], edx
nop word [eax + eax]
mov eax, 0x29e4129f
mul edx
mov eax, dword [esp + 0x18]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x18]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 3
jl 0x10104220
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x1c]
call fcn.10186480
test al, al
je 0x1010426d
call fcn.10178600
movss xmm1, dword [0x1021462c]
xorps xmm0, xmm0
call fcn.101774c0
cmp byte [0x102095d7], 0
mov eax, dword [str.mPE7pGW_]
mov dword [esp + 0x28], 0x42340000
mov dword [esp + 0x2c], 0
mov dword [esp + 0x14], eax
je 0x1010435f
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104330
movaps xmm3, xmmword [0x102147a0]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x10214900]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x10214900]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 1
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x10214850]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214950]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x1010435f
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 4
jl 0x10104330
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x1c]
call fcn.10186480
test al, al
je 0x1010438a
push dword [0x1023f728]
mov ecx, dword [0x1023fc80]
call fcn.10019d30
call fcn.10178600
mov esi, dword [0x10468550]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x101043ae
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x101043be
mov byte [esi + 0x1b9e], 1
call fcn.10176710
mov byte [esi + 0x1b9e], 0
mov ecx, dword [0x10468550]
xor edx, edx
mov eax, dword [ecx + 0x1bec]
dec dword [eax + 0xe0]
mov esi, dword [ecx + 0x1bec]
mov ecx, dword [esi + 0xe0]
add esi, 0xe0
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.DELETE
call fcn.1016be30
mov ecx, dword [esi]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x1010442f
inc ecx
test eax, eax
je 0x1010441d
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x10104422
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bbfa0
movups xmm0, xmmword [str.pPZRL_]
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x20]
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0x28], 0x437a0000
mov dword [eax + ecx*4], edx
inc dword [esi]
psrldq xmm0, 0xf
movd eax, xmm0
mov dword [esp + 0x2c], 0x41c80000
test al, al
je 0x101045cf
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101045a0
movaps xmm0, xmmword [0x10214950]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x102147a0]
xor ecx, ecx
movaps xmm3, xmmword [0x10214900]
movaps xmm5, xmmword [0x10214850]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x60]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x60], 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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x101044a4
jmp 0x101045cf
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x10
jl 0x101045a0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x68]
call fcn.10186480
test al, al
je 0x1010479c
mov eax, dword [0x10209a5c]
xor edx, edx
movq xmm0, qword [0x10209a54]
mov dword [esp + 0x48], eax
mov ax, word [0x10209a60]
mov word [esp + 0x4c], ax
mov al, byte [0x10209a62]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4e], al
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104720
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209a54]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xf
jl 0x10104720
mov esi, dword [0x10468550]
xor edx, edx
mov eax, dword [esi + 0x1bec]
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
lea ecx, [esp + 0x44]
call fcn.1016be30
cmp dword [esi + 0x1c24], eax
jne 0x10104784
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10104793
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10178350
mov eax, dword [0x10209a5c]
xor edx, edx
movq xmm0, qword [0x10209a54]
mov dword [esp + 0x48], eax
mov ax, word [0x10209a60]
mov word [esp + 0x4c], ax
mov al, byte [0x10209a62]
mov byte [esp + 0x4e], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101048d1
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209a54]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xf
jl 0x101048d1
mov esi, dword [0x10468550]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x10104923
mov dword [esi + 0x1c74], 0
jmp 0x10104e74
mov eax, dword [esi + 0x1bec]
xor edx, edx
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
lea ecx, [esp + 0x44]
call fcn.1016be30
cmp dword [esi + 0x1c24], eax
jne 0x10104952
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10104961
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.10178690
test al, al
je 0x10104e74
mov eax, dword [0x102090b4]
xor edx, edx
movq xmm0, qword [0x102090ac]
mov dword [esp + 0x48], eax
mov ax, word [0x102090b8]
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10104ae1
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104ab0
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x102090ac]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x10104ab0
xor edx, edx
push 1
lea ecx, [esp + 0x44]
call fcn.10185650
mov ax, word [0x1020965c]
xor edx, edx
mov word [esp + 0x14], ax
mov al, byte [0x1020965e]
mov byte [esp + 0x16], al
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0x42340000
mov dword [esp + 0x18], edx
nop word [eax + eax]
mov eax, 0x29e4129f
mul edx
mov eax, dword [esp + 0x18]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x18]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 3
jl 0x10104b20
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x1c]
call fcn.10186480
test al, al
je 0x10104b6d
call fcn.10178600
movss xmm1, dword [0x1021462c]
xorps xmm0, xmm0
call fcn.101774c0
cmp byte [0x102095d7], 0
mov eax, dword [str.mPE7pGW_]
mov dword [esp + 0x28], 0x42340000
mov dword [esp + 0x2c], 0
mov dword [esp + 0x14], eax
je 0x10104c5f
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104c30
movaps xmm3, xmmword [0x102147a0]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x10214900]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x10214900]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 1
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x10214850]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214950]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x10104c5f
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 4
jl 0x10104c30
push 0
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x1c]
call fcn.10186480
test al, al
je 0x10104e34
mov eax, dword [0x1023f728]
mov ecx, dword [0x1023fc80]
mov dword [esp + 0x18], ecx
lea eax, [eax + eax*2]
mov esi, dword [ecx + 0x3974]
shl eax, 3
add esi, eax
mov dword [esp + 0x20], eax
cmp dword [esi + 0x14], 0xf
jbe 0x10104ca1
mov esi, dword [esi]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10104ca6
sub ecx, edx
mov edx, 0xfde9
push ecx
push esi
lea ecx, [esp + 0x88]
call fcn.10003f20
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xc8]
add eax, 0x395c
push eax
call fcn.100206c0
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0xcc]
call fcn.10004130
cmp dword [esp + 0xdc], 7
lea eax, [esp + 0xc8]
cmova eax, dword [esp + 0xc8]
push eax
call fcn.101b3571
lea ecx, [esp + 0xc8]
call fcn.100021e0
lea ecx, [esp + 0x80]
call fcn.100021e0
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x3974]
add esi, dword [esp + 0x20]
mov ecx, dword [eax + 0x3978]
mov dword [esp + 0x20], esi
add esi, 0x18
mov dword [esp + 0x38], ecx
cmp esi, ecx
je 0x10104d6c
mov edi, dword [esp + 0x20]
sub edi, esi
nop word [eax + eax]
push esi
lea ecx, [edi + esi]
call fcn.100208a0
add esi, 0x18
cmp esi, dword [esp + 0x38]
jne 0x10104d50
mov edi, dword [0x10240d90]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x3978]
mov ecx, dword [esi - 4]
cmp ecx, 0xf
jbe 0x10104daa
mov eax, dword [esi - 0x18]
inc ecx
cmp ecx, 0x1000
jb 0x10104d9c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x101071a3
mov eax, edx
push ecx
push eax
call fcn.101b4f23
mov eax, dword [esp + 0x20]
add esp, 8
mov ecx, dword [esp + 0x30]
mov dword [esi - 8], 0
mov dword [esi - 4], 0xf
mov byte [esi - 0x18], 0
add dword [eax + 0x3978], 0xffffffe8
mov eax, 0x2aaaaaab
mov esi, dword [ecx]
mov ecx, dword [ecx + 4]
sub ecx, esi
imul ecx
mov ecx, dword [0x1023f728]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x10104e0f
lea eax, [ecx + ecx*2]
lea eax, [esi + eax*8]
cmp eax, 0x1023f380
je 0x10104e2f
cmp dword [eax + 0x14], 0xf
mov edx, dword [eax + 0x10]
jbe 0x10104e01
mov eax, dword [eax]
push edx
push eax
mov ecx, 0x1023f380
call fcn.10022b70
jmp 0x10104e2f
cmp dword [0x1023f394], 0xf
mov eax, 0x1023f380
mov dword [0x1023f390], 0
cmova eax, dword [0x1023f380]
mov byte [eax], 0
call fcn.10178600
mov esi, dword [0x10468550]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10104e58
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10104e68
mov byte [esi + 0x1b9e], 1
call fcn.10176710
mov byte [esi + 0x1b9e], 0
mov eax, dword [0x10468550]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x1020a3b0]
xor edx, edx
movq xmm0, qword [str.fPERL]
mov dword [esp + 0x48], eax
mov ax, word [0x1020a3b4]
mov word [esp + 0x4c], ax
mov al, byte [0x1020a3b6]
mov byte [esp + 0x4e], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x24], 0x41c80000
mov dword [esp + 0x20], 0x437a0000
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104fd0
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.fPERL]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop word [eax + eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xf
jl 0x10104fd0
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x48]
call fcn.10186480
test al, al
je 0x101051e3
movups xmm0, xmmword [0x1020978c]
movups xmmword [esp + 0x60], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x10105196
xor edx, edx
mov dword [esp + 0x30], edx
cmp edi, 2
jl 0x10105167
movaps xmm0, xmmword [0x10214950]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x102147a0]
xor ecx, ecx
movaps xmm3, xmmword [0x10214900]
movaps xmm5, xmmword [0x10214850]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
nop
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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x60]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x60], 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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x10105070
jmp 0x10105196
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x30]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x30], edx
cmp edx, 0x10
jl 0x10105167
mov esi, dword [0x10468550]
xor edx, edx
mov eax, dword [esi + 0x1bec]
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
lea ecx, [esp + 0x64]
call fcn.1016be30
cmp dword [esi + 0x1c24], eax
jne 0x101051cb
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101051da
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10178350
movups xmm0, xmmword [0x1020978c]
movups xmmword [esp + 0x60], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x10105366
xor edx, edx
mov dword [esp + 0x30], edx
cmp edi, 2
jl 0x10105337
movaps xmm0, xmmword [0x10214950]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x102147a0]
xor ecx, ecx
movaps xmm3, xmmword [0x10214900]
movaps xmm5, xmmword [0x10214850]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
nop word [eax + 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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x60]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x60], 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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x10105240
jmp 0x10105366
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x30]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x30], edx
cmp edx, 0x10
jl 0x10105337
mov esi, dword [0x10468550]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x10105389
mov dword [esi + 0x1c74], 0
jmp 0x10106a45
mov eax, dword [esi + 0x1bec]
xor edx, edx
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
lea ecx, [esp + 0x64]
call fcn.1016be30
cmp dword [esi + 0x1c24], eax
jne 0x101053b8
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101053c7
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.10178690
test al, al
je 0x10106a45
xor edi, edi
mov dword [esp + 0x14], edi
cmp edi, 1
jne 0x1010540c
mov eax, dword [0x10468550]
mov ecx, dword [eax + 0x1bec]
cmp byte [ecx + 0xab], 0
jne 0x1010540c
mov ecx, dword [ecx + 0x1dc]
neg ecx
sbb ecx, ecx
add ecx, 6
call fcn.10188640
mov ecx, dword [edi*4 + 0x1020aa78]
lea eax, [esp + 0x28]
push eax
push 0
xor dl, dl
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
call fcn.101972a0
test al, al
je case.default.0x10105442
cmp edi, 0xc
ja case.default.0x10105442
jmp dword [edi*4 + 0x101071a8]
mov ecx, dword [0x1023fc80]
call fcn.1001b540
mov cl, 1
call fcn.1011f670
mov eax, dword [0x1023fc88]
push str.cl_fullupdate
mov ecx, dword [eax + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
mov eax, dword [eax + 0x18]
call eax
mov byte [0x1046ad08], 1
inc edi
jmp 0x101053dd
push 0x500
lea eax, [esp + 0xfc]
push 0
push eax
call fcn.101b69d0
add esp, 0xc
lea eax, [esp + 0xfc]
mov ecx, 0x28
nop dword [eax]
nop dword [eax + eax]
mov byte [eax - 4], 0
lea eax, [eax + 0x20]
mov dword [eax - 0x20], 0x64
mov dword [eax - 0x1c], 0x3f800000
mov dword [eax - 0x18], 0
mov dword [eax - 0x14], 0x32
mov dword [eax - 0x10], 1
mov byte [eax - 0xc], 1
mov dword [eax - 8], 0
sub ecx, 1
jne 0x101054b0
mov edi, dword [0x1023fc80]
lea esi, [esp + 0xf8]
add edi, 0x2d8
mov ecx, 0x140
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x1023fc80]
mov dword [eax + 0x2b4], 0
mov dword [eax + 0x2b8], 0x101
mov word [eax + 0x2bc], 0
mov dword [eax + 0x2be], 0x3f800000
mov dword [eax + 0x2c2], 0x3f800000
mov dword [eax + 0x2c6], 0x3f800000
mov dword [eax + 0x2ca], 0x3e800000
mov dword [eax + 0x2ce], 0x3f19999a
mov word [eax + 0x2d2], 0
mov byte [eax + 0x2d4], 1
mov eax, dword [0x1023fc80]
mov edi, dword [esp + 0x14]
inc edi
mov dword [eax + 0xef8], 0x42
jmp 0x101053dd
mov eax, dword [0x1023fc80]
mov dword [esp + 0x80], 0
mov word [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov byte [esp + 0x8c], 0
movups xmm0, xmmword [esp + 0x80]
mov dword [esp + 0x90], 0x437f0000
mov dword [esp + 0x94], 0
movups xmmword [eax], xmm0
mov eax, dword [0x1023fc80]
mov dword [esp + 0x98], 0
mov word [esp + 0x9c], 0
movups xmm0, xmmword [esp + 0x90]
push 0x294
push 0
movups xmmword [eax + 0x10], xmm0
lea eax, [esp + 0x100]
push eax
call fcn.101b69d0
add esp, 0xc
lea ecx, [esp + 0xf8]
mov edx, 0xb
call fcn.10026af0
mov edi, dword [0x1023fc80]
lea esi, [esp + 0xf8]
add edi, 0x20
mov ecx, 0xa5
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x1023fc80]
mov edi, dword [esp + 0x14]
inc edi
mov dword [eax + 0xa74], 0x42
jmp 0x101053dd
push 0x210
lea eax, [esp + 0xfc]
push 0
push eax
call fcn.101b69d0
add esp, 0xc
lea ecx, [esp + 0xf8]
mov edx, 6
call fcn.10026b70
mov edi, dword [0x1023fc80]
lea esi, [esp + 0xf8]
movaps xmm0, xmmword [0x102149e0]
xor eax, eax
add edi, 0xb28
mov word [esp + 0x9e], ax
mov ecx, 0x84
mov dword [esp + 0xa4], eax
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x14]
movups xmmword [esp + 0x87], xmm0
mov dword [esp + 0xac], eax
inc edi
mov eax, dword [0x1023fc80]
mov dword [esp + 0x80], 0
mov word [esp + 0x84], 0
mov byte [esp + 0x86], 0
movups xmm0, xmmword [esp + 0x80]
mov dword [esp + 0x97], 0x3f19999a
mov word [esp + 0x9b], 0
movups xmmword [eax + 0xaf4], xmm0
mov byte [esp + 0x9d], 1
movups xmm0, xmmword [esp + 0x90]
mov dword [esp + 0xa0], 0x42c80000
mov dword [esp + 0xa8], 0x420c0000
movups xmmword [eax + 0xb04], xmm0
movups xmm0, xmmword [esp + 0xa0]
movups xmmword [eax + 0xb14], xmm0
mov dword [eax + 0xb24], 0
jmp 0x101053dd
mov ecx, dword [0x1023fc80]
inc edi
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 1
movq xmm0, qword [esp + 0x50]
mov word [esp + 0x58], 0
mov eax, dword [esp + 0x58]
movq qword [ecx + 0xae8], xmm0
mov dword [ecx + 0xaf0], eax
jmp 0x101053dd
mov eax, dword [0x1023fc80]
inc edi
mov byte [esp + 0x80], 0
mov dword [esp + 0x84], 0xc8
mov byte [esp + 0x88], 0
mov dword [esp + 0x8c], 0xc8
movups xmm0, xmmword [esp + 0x80]
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
movups xmmword [eax + 0xf24], xmm0
mov dword [esp + 0x98], 0
mov byte [esp + 0x9c], 0
movups xmm0, xmmword [esp + 0x90]
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], 0
movups xmmword [eax + 0xf34], xmm0
movq xmm0, qword [esp + 0xa0]
movq qword [eax + 0xf44], xmm0
jmp 0x101053dd
mov eax, dword [0x1023fc80]
inc edi
mov dword [eax + 0xf1c], 0x42
jmp 0x101053dd
mov ecx, dword [0x1023fc80]
xor esi, esi
add ecx, 0xf8c
call fcn.10030c20
mov ecx, dword [0x1023fc80]
add ecx, 0xf6c
call fcn.10030c80
inc edi
jmp 0x101053dd
mov ecx, dword [0x1023fc80]
xor esi, esi
add ecx, 0xf4c
call fcn.10022720
inc edi
jmp 0x101053dd
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0xfc], xmm0
mov byte [esp + 0xf8], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x118], xmm0
mov dword [esp + 0x10c], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x12e], xmm0
mov word [esp + 0x110], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x144], xmm0
mov dword [esp + 0x114], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x15a], xmm0
mov dword [esp + 0x128], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x170], xmm0
mov word [esp + 0x12c], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x186], xmm0
mov dword [esp + 0x13e], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x19f], xmm0
mov word [esp + 0x142], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x1b5], xmm0
mov dword [esp + 0x154], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x1ca], xmm0
mov word [esp + 0x158], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x1df], xmm0
mov dword [esp + 0x16a], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x1fb], xmm0
mov word [esp + 0x16e], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x211], xmm0
mov dword [esp + 0x180], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x226], xmm0
mov word [esp + 0x184], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x23b], xmm0
mov dword [esp + 0x196], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x26c], xmm0
mov dword [esp + 0x19a], 0x1000000
movaps xmm0, xmmword [0x10214b80]
mov byte [esp + 0x19e], 1
mov dword [esp + 0x1af], 0x3f19999a
mov word [esp + 0x1b3], 0
mov dword [esp + 0x1c5], 0x3f19999a
mov byte [esp + 0x1c9], 0
mov dword [esp + 0x1da], 0x3f19999a
mov byte [esp + 0x1de], 0
mov dword [esp + 0x1ef], 0x3f19999a
mov byte [esp + 0x1f3], 0
mov dword [esp + 0x1f4], 0
mov word [esp + 0x1f8], 0x100
mov byte [esp + 0x1fa], 1
mov dword [esp + 0x20b], 0x3f19999a
mov word [esp + 0x20f], 0
mov dword [esp + 0x221], 0x3f19999a
mov byte [esp + 0x225], 0
mov dword [esp + 0x236], 0x3f19999a
mov byte [esp + 0x23a], 0
mov dword [esp + 0x24b], 0x3f19999a
mov byte [esp + 0x24f], 0
mov dword [esp + 0x250], 0
mov byte [esp + 0x254], 0
mov dword [esp + 0x258], 0x40a00000
mov dword [esp + 0x25c], 0x1010101
mov dword [esp + 0x260], 0x1010101
mov word [esp + 0x264], 0x100
mov byte [esp + 0x268], 0
mov dword [esp + 0x27c], 0x3f19999a
mov word [esp + 0x280], 0
mov dword [esp + 0x284], 0
movups xmmword [esp + 0x288], xmm0
mov dword [esp + 0x298], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x29e], xmm0
mov word [esp + 0x29c], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x2b4], xmm0
mov dword [esp + 0x2ae], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x2ca], xmm0
mov word [esp + 0x2b2], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x2e0], xmm0
mov dword [esp + 0x2c4], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x2f6], xmm0
mov word [esp + 0x2c8], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x30f], xmm0
mov dword [esp + 0x2da], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x325], xmm0
mov word [esp + 0x2de], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x33a], xmm0
mov dword [esp + 0x2f0], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x34f], xmm0
mov word [esp + 0x2f4], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x36b], xmm0
mov dword [esp + 0x306], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x381], xmm0
mov dword [esp + 0x30a], 0x1000000
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x396], xmm0
mov byte [esp + 0x30e], 1
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x3ab], xmm0
mov dword [esp + 0x31f], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x3dc], xmm0
mov word [esp + 0x323], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x3f8], xmm0
mov dword [esp + 0x335], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x40e], xmm0
mov byte [esp + 0x339], 0
movaps xmm0, xmmword [0x10214b80]
mov dword [esp + 0x34a], 0x3f19999a
mov byte [esp + 0x34e], 0
mov dword [esp + 0x35f], 0x3f19999a
mov byte [esp + 0x363], 0
mov dword [esp + 0x364], 0
mov word [esp + 0x368], 0x100
mov byte [esp + 0x36a], 1
mov dword [esp + 0x37b], 0x3f19999a
mov word [esp + 0x37f], 0
mov dword [esp + 0x391], 0x3f19999a
mov byte [esp + 0x395], 0
mov dword [esp + 0x3a6], 0x3f19999a
mov byte [esp + 0x3aa], 0
mov dword [esp + 0x3bb], 0x3f19999a
mov byte [esp + 0x3bf], 0
mov dword [esp + 0x3c0], 0
mov byte [esp + 0x3c4], 0
mov dword [esp + 0x3c8], 0x40a00000
mov dword [esp + 0x3cc], 0x1010101
mov dword [esp + 0x3d0], 0x1010101
mov word [esp + 0x3d4], 0x100
mov byte [esp + 0x3d8], 0
mov dword [esp + 0x3ec], 0x3f19999a
mov word [esp + 0x3f0], 0
mov dword [esp + 0x3f4], 0
mov dword [esp + 0x408], 0x3f19999a
mov word [esp + 0x40c], 0
mov dword [esp + 0x41e], 0x3f19999a
mov word [esp + 0x422], 0
movups xmmword [esp + 0x424], xmm0
mov dword [esp + 0x434], 0x3f19999a
mov word [esp + 0x438], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x43a], xmm0
mov dword [esp + 0x44a], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x450], xmm0
mov word [esp + 0x44e], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x466], xmm0
mov dword [esp + 0x460], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x47f], xmm0
mov word [esp + 0x464], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x495], xmm0
mov dword [esp + 0x476], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x4aa], xmm0
mov dword [esp + 0x47a], 0x1000000
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x4bf], xmm0
mov byte [esp + 0x47e], 1
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x4db], xmm0
mov dword [esp + 0x48f], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x4f1], xmm0
mov word [esp + 0x493], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x506], xmm0
mov dword [esp + 0x4a5], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x51b], xmm0
mov byte [esp + 0x4a9], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x54c], xmm0
mov dword [esp + 0x4ba], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x568], xmm0
mov byte [esp + 0x4be], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x57e], xmm0
mov dword [esp + 0x4cf], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x594], xmm0
mov byte [esp + 0x4d3], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x5ac], xmm0
mov dword [esp + 0x4d4], 0
movaps xmm0, xmmword [0x10214b80]
mov word [esp + 0x4d8], 0x100
mov byte [esp + 0x4da], 1
mov dword [esp + 0x4eb], 0x3f19999a
mov word [esp + 0x4ef], 0
mov dword [esp + 0x501], 0x3f19999a
mov byte [esp + 0x505], 0
mov dword [esp + 0x516], 0x3f19999a
mov byte [esp + 0x51a], 0
mov dword [esp + 0x52b], 0x3f19999a
mov byte [esp + 0x52f], 0
mov dword [esp + 0x530], 0
mov byte [esp + 0x534], 0
mov dword [esp + 0x538], 0x40a00000
mov dword [esp + 0x53c], 0x1010101
mov dword [esp + 0x540], 0x1010101
mov word [esp + 0x544], 0x100
mov byte [esp + 0x548], 0
mov dword [esp + 0x55c], 0x3f19999a
mov word [esp + 0x560], 0
mov dword [esp + 0x564], 0
mov dword [esp + 0x578], 0x3f19999a
mov word [esp + 0x57c], 0
mov dword [esp + 0x58e], 0x3f19999a
mov word [esp + 0x592], 0
mov dword [esp + 0x5a4], 0x3f19999a
mov word [esp + 0x5a8], 0
mov dword [esp + 0x5bc], 0x3f19999a
mov word [esp + 0x5c0], 0
mov byte [esp + 0x5c4], 0
movups xmmword [esp + 0x5c8], xmm0
mov dword [esp + 0x5d8], 0x3f19999a
mov word [esp + 0x5dc], 0
movaps xmm0, xmmword [0x10214b80]
lea esi, [esp + 0xf8]
mov edi, dword [0x1023fc80]
mov ecx, 0x152
movups xmmword [esp + 0x5e4], xmm0
add edi, 0xfac
mov dword [esp + 0x5e0], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x5fa], xmm0
mov dword [esp + 0x5f4], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x610], xmm0
mov word [esp + 0x5f8], 0
movaps xmm0, xmmword [0x10214b80]
mov dword [esp + 0x60a], 0x3f19999a
mov word [esp + 0x60e], 0
mov dword [esp + 0x620], 0x3f19999a
mov word [esp + 0x624], 0
movups xmmword [esp + 0x628], xmm0
mov dword [esp + 0x638], 0x3f19999a
mov word [esp + 0x63c], 0
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x14]
inc edi
jmp 0x101053dd
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0xf9], xmm0
push 1
movaps xmm0, xmmword [0x10214b80]
sub esp, 0x18
movups xmmword [esp + 0x134], xmm0
mov byte [esp + 0x114], 0
mov ecx, esp
xorps xmm0, xmm0
mov dword [esp + 0x125], 0x3f19999a
movups xmmword [esp + 0x154], xmm0
mov word [esp + 0x129], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x16d], xmm0
mov byte [esp + 0x12b], 0
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x183], xmm0
mov dword [esp + 0x12c], 0xfa
movaps xmm0, xmmword [0x10214a50]
movups xmmword [esp + 0x19c], xmm0
mov dword [esp + 0x130], 2
xorps xmm0, xmm0
mov dword [esp + 0x144], 0x3f19999a
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 4
mov dword [ecx + 0x14], 0xf
mov eax, dword [str.Zoom]
mov dword [ecx], eax
mov byte [ecx + 4], 0
lea ecx, [esp + 0x1dc]
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0xfa
mov dword [esp + 0x150], 2
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0xf
mov byte [esp + 0x154], 0
mov byte [esp + 0x16c], 0
mov dword [esp + 0x17d], 0x3f19999a
mov word [esp + 0x181], 0
mov dword [esp + 0x193], 0x3f19999a
mov dword [esp + 0x197], 0
mov byte [esp + 0x19b], 0
mov dword [esp + 0x1ac], 0x3f800000
mov dword [esp + 0x1b0], 0x3f800000
mov dword [esp + 0x1b4], 0x3f19999a
mov dword [esp + 0x1b8], 0
mov dword [esp + 0x1bc], 0
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1c4], 0
mov word [esp + 0x1c8], 0
mov byte [esp + 0x1ca], 0
mov byte [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
mov dword [esp + 0x1d4], 0
mov word [esp + 0x1d8], 0
call fcn.100c86e0
push 1
sub esp, 0x18
mov byte [esp + 0x200], 0
mov ecx, esp
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 7
mov dword [ecx + 0x14], 0xf
mov eax, dword [str.Freecam]
mov dword [ecx], eax
movzx eax, word [0x101eb774]
mov word [ecx + 4], ax
mov al, byte [0x101eb776]
mov byte [ecx + 6], al
mov byte [ecx + 7], 0
lea ecx, [esp + 0x204]
call fcn.100c86e0
xorps xmm0, xmm0
mov dword [esp + 0x20c], 2
movups xmmword [esp + 0x214], xmm0
mov byte [esp + 0x210], 0
movaps xmm0, xmmword [0x10214ba0]
mov byte [esp + 0x224], 1
mov word [esp + 0x228], 0
movups xmmword [esp + 0x22c], xmm0
movaps xmm0, xmmword [0x10214a30]
lea eax, [esp + 0x28c]
push 0x100
movups xmmword [esp + 0x254], xmm0
push 0
movaps xmm0, xmmword [0x10214a60]
push eax
mov dword [esp + 0x248], 0x3f800000
mov dword [esp + 0x24c], 0
mov dword [esp + 0x250], 0
mov dword [esp + 0x254], 0x3f19999a
mov dword [esp + 0x258], 0
mov dword [esp + 0x26c], 0
movups xmmword [esp + 0x270], xmm0
mov dword [esp + 0x280], 0x3f000000
mov dword [esp + 0x284], 0x3f19999a
mov dword [esp + 0x288], 0
mov dword [esp + 0x28c], 0x40800000
mov dword [esp + 0x290], 0
mov dword [esp + 0x294], 0
call fcn.101b69d0
movaps xmm0, xmmword [0x10214b60]
add esp, 0xc
movups xmmword [esp + 0x38d], xmm0
xor eax, eax
mov byte [esp + 0x38c], 0
movaps xmm0, xmmword [0x10214740]
movups xmmword [esp + 0x3b0], xmm0
mov dword [esp + 0x39d], 0x3f19999a
movaps xmm0, xmmword [0x102149a0]
movups xmmword [esp + 0x3ca], xmm0
mov word [esp + 0x3a1], 0
movaps xmm0, xmmword [0x102149c0]
movups xmmword [esp + 0x3e1], xmm0
mov dword [esp + 0x3a4], 0x3f0ccccd
movaps xmm0, xmmword [0x102149d0]
movups xmmword [esp + 0x3f7], xmm0
mov dword [esp + 0x3a8], 0
xorps xmm0, xmm0
mov dword [esp + 0x3ac], 0
movups xmmword [esp + 0x418], xmm0
mov dword [esp + 0x3c0], 0x3e99999a
movaps xmm0, xmmword [0x10214a40]
movups xmmword [esp + 0x428], xmm0
mov dword [esp + 0x3c4], 0x3f19999a
movaps xmm0, xmmword [0x102149f0]
movups xmmword [esp + 0x43e], xmm0
mov word [esp + 0x3c8], 0
movaps xmm0, xmmword [0x10214a00]
movups xmmword [esp + 0x450], xmm0
mov dword [esp + 0x3da], 0x3f19999a
movaps xmm0, xmmword [0x10214a30]
movups xmmword [esp + 0x462], xmm0
mov word [esp + 0x3de], 0
movaps xmm0, xmmword [0x102149b0]
movups xmmword [esp + 0x47d], xmm0
mov byte [esp + 0x3e0], 1
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x492], xmm0
mov dword [esp + 0x3f1], 0x3f19999a
movaps xmm0, xmmword [0x10214b80]
mov word [esp + 0x3f5], 0
mov dword [esp + 0x407], 0x3f19999a
mov dword [esp + 0x40b], 0
mov word [esp + 0x40f], ax
mov dword [esp + 0x414], eax
mov dword [esp + 0x438], 0x3f19999a
mov word [esp + 0x43c], ax
mov word [esp + 0x44e], ax
mov word [esp + 0x460], ax
mov word [esp + 0x472], ax
mov dword [esp + 0x474], 0x64
mov dword [esp + 0x478], 0x64
mov byte [esp + 0x47c], al
mov dword [esp + 0x48d], 0x3f19999a
mov byte [esp + 0x491], al
mov dword [esp + 0x4a2], 0x3f19999a
mov byte [esp + 0x4a6], al
movups xmmword [esp + 0x4a7], xmm0
mov dword [esp + 0x4b7], 0x3f19999a
mov word [esp + 0x4bb], ax
movaps xmm0, xmmword [0x102149b0]
movups xmmword [esp + 0x4bd], xmm0
push 1
movaps xmm0, xmmword [0x10214b80]
sub esp, 0x18
movups xmmword [esp + 0x4ee], xmm0
mov ecx, esp
mov byte [esp + 0x4ed], al
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x503], xmm0
mov byte [esp + 0x502], al
movaps xmm0, xmmword [0x10214990]
movups xmmword [esp + 0x518], xmm0
mov byte [esp + 0x517], al
movaps xmm0, xmmword [0x10214a30]
movups xmmword [esp + 0x52f], xmm0
mov word [esp + 0x52c], ax
xorps xmm0, xmm0
mov byte [esp + 0x52e], al
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0xb
mov dword [ecx + 0x14], 0xf
movq xmm0, qword [str.Thirdperson]
movq qword [ecx], xmm0
mov word [esp + 0x53f], ax
mov byte [esp + 0x541], al
mov dword [esp + 0x544], eax
mov dword [esp + 0x548], eax
mov dword [esp + 0x54c], eax
mov byte [esp + 0x550], al
movzx eax, word [0x101eb764]
mov word [ecx + 8], ax
mov al, byte [0x101eb766]
mov byte [ecx + 0xa], al
mov byte [ecx + 0xb], 0
lea ecx, [esp + 0x554]
mov dword [esp + 0x4e9], 0x3f19999a
mov dword [esp + 0x4fe], 0x3f19999a
mov dword [esp + 0x513], 0x3f19999a
mov dword [esp + 0x528], 0x3f19999a
call fcn.100c86e0
movaps xmm0, xmmword [0x10214b70]
xor eax, eax
mov ecx, dword [0x1023fc80]
movups xmmword [esp + 0x564], xmm0
mov word [esp + 0x5be], ax
movaps xmm0, xmmword [0x10214b80]
movups xmmword [esp + 0x580], xmm0
mov word [esp + 0x5d8], ax
movaps xmm0, xmmword [0x10214b40]
movups xmmword [esp + 0x5a9], xmm0
mov byte [esp + 0x5da], al
movaps xmm0, xmmword [0x10214b90]
movups xmmword [esp + 0x5c0], xmm0
mov byte [esp + 0x5eb], al
movaps xmm0, xmmword [0x10214a10]
movups xmmword [esp + 0x5db], xmm0
mov byte [esp + 0x5fc], al
movaps xmm0, xmmword [0x10214a20]
mov word [esp + 0x5fd], ax
mov byte [esp + 0x5ff], al
lea eax, [esp + 0xf8]
mov dword [esp + 0x55c], 0x64
mov word [esp + 0x560], 1
mov byte [esp + 0x562], 0
mov dword [esp + 0x574], 0x3f800000
mov dword [esp + 0x578], 0x3f19999a
mov dword [esp + 0x57c], 0
mov dword [esp + 0x590], 0x3f19999a
mov word [esp + 0x594], 0x100
mov dword [esp + 0x598], 0xa
mov dword [esp + 0x59c], 0x32
mov dword [esp + 0x5a0], 0
mov dword [esp + 0x5a4], 0
mov byte [esp + 0x5a8], 0
mov dword [esp + 0x5b9], 0x3f19999a
mov byte [esp + 0x5bd], 0
mov dword [esp + 0x5d0], 0x3f800000
mov dword [esp + 0x5d4], 0x3f19999a
movups xmmword [esp + 0x5ec], xmm0
push eax
lea ecx, [ecx + 0x14f4]
call fcn.1001cbf0
lea ecx, [esp + 0xf8]
call fcn.100028c0
inc edi
jmp 0x101053dd
push 0x1950
lea eax, [esp + 0xfc]
push 0
push eax
call fcn.101b69d0
add esp, 0xc
lea ecx, [esp + 0xf8]
mov edx, 0x24
call fcn.10026c20
push 0x1950
lea eax, [esp + 0xfc]
push eax
mov eax, dword [0x1023fc80]
add eax, 0x19fc
push eax
call fcn.101b6450
mov eax, dword [0x1023fc88]
add esp, 0xc
mov ecx, dword [eax + 8]
push str.cl_fullupdate
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
call eax
mov eax, dword [eax + 0x18]
call eax
mov byte [0x1046ad08], 1
inc edi
jmp 0x101053dd
inc edi
mov dword [esp + 0x14], edi
cmp edi, 0xd
jl 0x101053e1
jmp 0x101069ff
lea ecx, [esp + 0xf8]
call fcn.10006580
mov ecx, dword [0x1023fc80]
lea eax, [esp + 0xf8]
push eax
lea ecx, [ecx + 0x334c]
call fcn.1001d460
lea ecx, [esp + 0xf8]
call fcn.10002a10
mov cl, 1
call fcn.1011f670
mov esi, dword [0x10468550]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10106a23
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10106a33
mov byte [esi + 0x1b9e], 1
call fcn.10176710
mov byte [esi + 0x1b9e], 0
mov edi, dword [0x10240d90]
mov ecx, dword [0x10468550]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
mov ecx, dword [edx + 0x1f8]
mov eax, dword [edx + 0x200]
mov eax, dword [eax + ecx*4 - 4]
mov dword [edx + 0x1f0], eax
lea eax, [ecx - 1]
mov dword [edx + 0x1f8], eax
call fcn.100c7d60
mov eax, dword [0x1020ab0c]
xor edx, edx
movq xmm0, qword [str.uVURVM]
mov esi, dword [0x1023fc80]
mov dword [esp + 0x48], eax
mov al, byte [0x1020ab10]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4c], al
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10106bb2
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.uVURVM]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xd
jl 0x10106bb2
push 0
push 0
push 0
push 0
lea eax, [esi + 0x3900]
push eax
lea eax, [esi + 0x3904]
push eax
lea eax, [esi + 0x38fc]
push eax
lea edx, [esi + 0x38f0]
lea ecx, [esp + 0x5c]
call fcn.100bc410
movups xmm0, xmmword [str.fZCY_hRN]
mov ax, word [0x1020abac]
xor edx, edx
mov word [esp + 0xa8], ax
mov dword [esp + 0x18], edx
movups xmmword [esp + 0x80], xmm0
movups xmm0, xmmword [0x1020ab94]
movups xmmword [esp + 0x90], xmm0
movq xmm0, qword [0x1020aba4]
movq qword [esp + 0xa0], xmm0
cmp edi, 2
jl 0x10106dc0
movaps xmm0, xmmword [0x10214950]
lea esi, [esp + 0x84]
movaps xmm4, xmmword [0x102147a0]
movaps xmm3, xmmword [0x10214900]
movaps xmm5, xmmword [0x10214850]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x80]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x80], 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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esi + edx]
xorps xmm1, xmm0
movd dword [esi + edx], xmm1
add edx, 8
cmp edx, 0x28
jl 0x10106c90
mov dword [esp + 0x18], edx
cmp edx, 0x2a
jl 0x10106dc0
mov eax, dword [0x1020a724]
mov ecx, dword [0x1023fc80]
mov dword [esp + 0x48], eax
add ecx, 0x3908
mov al, byte [0x1020a728]
mov dword [esp + 0x18], ecx
mov byte [esp + 0x4c], al
jmp 0x10106e12
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x80], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x2a
jl 0x10106dc0
mov eax, dword [0x1020a724]
mov dword [esp + 0x48], eax
mov al, byte [0x1020a728]
mov byte [esp + 0x4c], al
mov eax, dword [0x1023fc80]
add eax, 0x3908
mov dword [esp + 0x18], eax
movq xmm0, qword [str.cXSWN]
xor edx, edx
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x14], edx
cmp edi, 2
jl 0x10106f30
movaps xmm2, xmmword [0x102147a0]
mov edx, 8
movaps xmm4, xmmword [0x10214900]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x10214950]
movaps xmm0, xmm1
mov dword [esp + 0x14], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x102147e0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.cXSWN]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10214850]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
nop word [eax + eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xd
jl 0x10106f30
xor esi, esi
lea edx, [esp + 0x80]
cmp byte [esp + 0x80], 0
je 0x10106fa3
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
nop word [eax + eax]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x20], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10106f90
sub ecx, dword [esp + 0x20]
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x10106f80
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x80]
push 1
push 0xffffffffffffffff
push esi
push eax
push 0x10189760
lea ecx, [esp + 0x54]
call fcn.101897c0
mov esi, dword [0x1023fc80]
movups xmm0, xmmword [0x102098d8]
mov eax, dword [0x102098e8]
add esi, 0x390c
cmp byte [0x102098eb], 0
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0x70], eax
je 0x1010715f
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10107130
movaps xmm0, xmmword [0x10214950]
lea edi, [esp + 0x64]
movaps xmm4, xmmword [0x102147a0]
movaps xmm3, xmmword [0x10214900]
movaps xmm5, xmmword [0x10214850]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x60]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x60], 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, 1
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 [0x102148e0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edi + edx]
xorps xmm1, xmm0
movd dword [edi + edx], xmm1
add edx, 8
cmp edx, 0x10
jl 0x10107030
mov dword [esp + 0x18], edx
cmp edx, 0x14
jge 0x1010715f
nop
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x18]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x14
jl 0x10107130
push 0
push 0x1020802c
lea eax, [esp + 0x28]
mov dword [esp + 0x40], 0
push eax
lea eax, [esp + 0x44]
mov dword [esp + 0x2c], 0x42c80000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x74]
call fcn.1018b540
mov ecx, dword [esp + 0x1a4c]
pop edi
pop esi
xor ecx, esp
call fcn.101b4c2a
mov esp, ebp
pop ebp
ret
call fcn.101ba056
dec ecx
push esp
adc byte [eax], dl
adc dword [eax + edx + 0x10], 0x10105581
dec ebp
push esi
adc byte [eax], dl
dec esp
push edi
adc byte [eax], dl
xchg dword [edi + 0x10], edx
adc byte [esi], ah
pop eax
adc byte [eax], dl
cmp ebx, dword [eax + 0x10]
adc byte [ebp + 88], ah
adc byte [eax], dl
jle 0x10107226
adc byte [eax], dl
lds esp, [ecx + 0x10]
adc byte [ecx + 105], cl
adc byte [eax], dl
invalid
add byte [eax], al