Function at 0x10103800
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.101b65f0
mov eax, dword [0x102220c0]
xor eax, esp
mov dword [esp + 0x1a44], eax
mov edx, dword [0x10468548]
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 0x1010385a
cmp dword [eax + 0x10], 2
jne 0x10103855
cmp dword [eax + 4], 1
je 0x10103868
call fcn.100c85d0
push 1
mov edx, 2
xor ecx, ecx
call fcn.100c7d00
movss xmm0, dword [0x1021470c]
mov ecx, 1
call fcn.100c7930
movss xmm0, dword [0x10214700]
call fcn.101780a0
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10240d9c]
mov esi, dword [0x1023fc80]
add esi, 0x3984
mov dword [esp + 0x30], esi
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10533b08]
cmp eax, dword [ecx + 4]
jle 0x101038e3
push 0x10533b08
call fcn.101b5d2d
add esp, 4
cmp dword [0x10533b08], 0xffffffff
jne 0x101038e3
push 0x101e2420
call fcn.101b5a79
add esp, 4
push 0x10533b08
call fcn.101b5cdc
add esp, 4
mov eax, dword [0x10468548]
xorps xmm1, xmm1
movss xmm0, dword [edi + 0x60]
subss xmm0, dword [eax + 0x5c]
comiss xmm1, xmm0
movss dword [edi + 0x60], xmm0
jb 0x10103986
mov ecx, dword [0x1023fc80]
call fcn.1001e3a0
mov edi, dword [esi + 4]
mov eax, dword [esi]
mov esi, eax
mov dword [esp + 0x18], eax
cmp esi, edi
je 0x10103977
nop dword [eax]
cmp dword [0x1023f394], 0xf
mov eax, 0x1023f380
mov ecx, esi
cmova eax, dword [0x1023f380]
cmp dword [esi + 0x14], 0xf
jbe 0x1010393d
mov ecx, dword [esi]
push dword [0x1023f390]
mov edx, dword [esi + 0x10]
push eax
call fcn.1002fad0
test al, al
jne 0x10103957
add esi, 0x18
cmp esi, edi
jne 0x10103920
mov eax, dword [esp + 0x18]
cmp esi, edi
je 0x10103977
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 0x101039ae
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 0x10107a30
call fcn.101989f0
test al, al
je 0x10103a10
mov eax, dword [0x1023f728]
cmp eax, 0xffffffff
je 0x10103a10
lea ecx, [eax + eax*2]
mov eax, dword [esi]
lea eax, [eax + ecx*8]
cmp eax, 0x1023f380
je 0x10103a10
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10103a04
mov eax, dword [eax]
push ecx
push eax
mov ecx, 0x1023f380
call fcn.10023010
xor ecx, ecx
call fcn.10177c30
cmp byte [0x10209ad7], 0
movq xmm0, qword [str.uXV_S_]
mov eax, dword [0x10209ad4]
mov edi, dword [0x10240d90]
movq qword [esp + 0x50], xmm0
mov dword [esp + 0x58], eax
je 0x10103b76
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103b46
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm3, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov dword [esp + 0x18], edx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
movd xmm0, dword [str.uXV_S_]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214a90]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
movd xmm0, dword [esp + 0x54]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214a90]
xorps xmm1, xmm0
movd dword [esp + 0x54], xmm1
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x50], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xc
jl 0x10103b46
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 0x100c1ee0
push 0x40020
lea eax, [esp + 0x34]
mov dword [esp + 0x38], 0
push eax
push esi
push edx
lea edx, [esp + 0x68]
call fcn.1018f180
test al, al
je 0x10103d52
mov eax, dword [0x1023f728]
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
je 0x10103d52
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 0x10103c14
sub ecx, edx
mov edx, 0xfde9
push ecx
push esi
lea ecx, [esp + 0x88]
call fcn.10003f40
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xc8]
add eax, 0x396c
push eax
mov dword [esp + 0x3c], eax
call fcn.10020b70
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0xcc]
call fcn.10004150
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
lea eax, [eax + eax*2]
mov edx, dword [edx + 0x3984]
shl eax, 3
add edx, eax
mov dword [esp + 0x20], eax
cmp dword [edx + 0x14], 0xf
jbe 0x10103c80
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x14], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10103c90
sub ecx, dword [esp + 0x14]
push ecx
push edx
mov edx, 0xfde9
lea ecx, [esp + 0xe8]
call fcn.10003f40
push dword [esp + 0x38]
lea ecx, [esp + 0x64]
call fcn.10020b70
lea eax, [esp + 0xe0]
push eax
lea ecx, [esp + 0x64]
call fcn.10004150
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.101b4281
lea ecx, [esp + 0x60]
call fcn.10002200
lea ecx, [esp + 0xe0]
call fcn.10002200
lea ecx, [esp + 0xc8]
call fcn.10002200
lea ecx, [esp + 0x80]
call fcn.10002200
mov eax, dword [esp + 0x18]
mov edx, esi
mov ecx, dword [eax + 0x3984]
lea eax, [edx + 1]
add ecx, dword [esp + 0x20]
mov dword [esp + 0x20], eax
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x10103d40
sub edx, dword [esp + 0x20]
push edx
push esi
call fcn.10023010
mov eax, dword [0x10468548]
movups xmm0, xmmword [str.yG_W]
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 [0x10209fdc]
mov dword [esp + 0x70], eax
mov ax, word [0x10209fe0]
mov word [esp + 0x74], ax
test ah, ah
je 0x10103f01
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10103ed1
movaps xmm0, xmmword [0x10214a90]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10214950]
movaps xmm3, xmmword [0x10214d20]
movaps xmm5, xmmword [0x102149b0]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
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 [0x10214a50]
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, 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 [0x10214a50]
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 0x10103dd3
mov dword [esp + 0x18], edx
cmp edx, 0x16
jge 0x10103f01
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x16
jl 0x10103ed1
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x68]
call fcn.10186fa0
test al, al
je 0x10103f76
mov esi, dword [0x1023fc80]
add esi, 0x396c
mov eax, esi
cmp dword [esi + 0x14], 7
jbe 0x10103f2c
mov eax, dword [esi]
push eax
call fcn.101b3d6a
push esi
lea ecx, [esp + 0xcc]
call fcn.10020b70
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.10002200
mov eax, dword [0x102098ec]
movq xmm0, qword [str.uE_XN]
mov dword [esp + 0x48], eax
mov ax, word [0x102098f0]
mov dword [esp + 0x28], 0x437a0000
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x101040f0
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101040c0
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.uE_XN]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x101040c0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x48]
call fcn.10186fa0
test al, al
je 0x1010415e
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 0x10104143
sub edx, dword [esp + 0x38]
push edx
push esi
call fcn.10027d90
mov ecx, dword [esp + 0x50]
call fcn.1001b7c0
cmp dword [0x1023f728], 0xffffffff
je 0x101056b9
mov eax, dword [0x102093e0]
movq xmm0, qword [0x102093d8]
mov dword [esp + 0x48], eax
mov ax, word [0x102093e4]
mov dword [esp + 0x28], 0x437a0000
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x101042e0
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101042b0
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x102093d8]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x101042b0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x48]
call fcn.10186fa0
test al, al
je 0x10104343
mov eax, dword [0x1023f728]
mov ecx, dword [0x1023fc80]
lea edx, [eax + eax*2]
mov eax, dword [ecx + 0x3984]
cmp dword [eax + edx*8 + 0x14], 0xf
lea eax, [eax + edx*8]
jbe 0x10104315
mov eax, dword [eax]
push ecx
push eax
call fcn.10010f20
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 [0x1046ad00], 1
call fcn.1011fce0
mov eax, dword [0x10468548]
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.1016c950
mov ecx, dword [esi]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x1010439a
inc ecx
test eax, eax
je 0x10104388
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x1010438d
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bc530
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x20]
movq xmm0, qword [0x10209e1c]
mov dword [esp + 0x28], 0x437a0000
mov dword [eax + ecx*4], edx
mov eax, dword [0x10209e24]
inc dword [esi]
mov dword [esp + 0x58], eax
mov ax, word [0x10209e28]
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x50], xmm0
mov word [esp + 0x5c], ax
test ah, ah
je 0x10104520
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101044f0
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209e1c]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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]
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x50], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x101044f0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x58]
call fcn.10186fa0
test al, al
je 0x101046e0
mov eax, dword [0x10209c9c]
xor edx, edx
movq xmm0, qword [0x10209c94]
mov dword [esp + 0x48], eax
mov al, byte [0x10209ca0]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4c], al
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104663
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209c94]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xd
jl 0x10104663
mov esi, dword [0x10468548]
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.1016c950
cmp dword [esi + 0x1c24], eax
jne 0x101046c8
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101046d7
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10178e70
mov eax, dword [0x10209c9c]
xor edx, edx
movq xmm0, qword [0x10209c94]
mov dword [esp + 0x48], eax
mov al, byte [0x10209ca0]
mov byte [esp + 0x4c], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104810
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209c94]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xd
jl 0x10104810
mov esi, dword [0x10468548]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x10104863
mov dword [esi + 0x1c74], 0
jmp 0x10104bfd
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.1016c950
cmp dword [esi + 0x1c24], eax
jne 0x10104892
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101048a1
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.101791b0
test al, al
je 0x10104bfd
mov eax, dword [str.MJ2_C]
xor edx, edx
movq xmm0, qword [0x1020aba4]
mov dword [esp + 0x48], eax
mov ax, word [0x1020abb0]
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10104a22
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101049f0
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1020aba4]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x101049f0
xor edx, edx
push 1
lea ecx, [esp + 0x44]
call fcn.10186170
mov ax, word [0x102098c0]
xor edx, edx
mov word [esp + 0x14], ax
mov al, byte [0x102098c2]
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, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x18]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 3
jl 0x10104a60
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x1c]
call fcn.10186fa0
test al, al
je 0x10104aa3
call fcn.10179120
movss xmm1, dword [0x102147dc]
xorps xmm0, xmm0
call fcn.10177fe0
cmp byte [0x1020a55f], 0
mov eax, dword [str.oRK9LM_I]
mov dword [esp + 0x28], 0x42340000
mov dword [esp + 0x2c], 0
mov dword [esp + 0x14], eax
je 0x10104b92
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104b62
movaps xmm3, xmmword [0x10214950]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x10214d20]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x10214d20]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x102149b0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214a90]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x10104b92
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 4
jl 0x10104b62
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x1c]
call fcn.10186fa0
test al, al
je 0x10104bbd
push dword [0x1023f728]
mov ecx, dword [0x1023fc80]
call fcn.1001a030
call fcn.10179120
mov esi, dword [0x10468548]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10104be1
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10104bf1
mov byte [esi + 0x1b9e], 1
call fcn.10177230
mov byte [esi + 0x1b9e], 0
mov ecx, dword [0x10468548]
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.1016c950
mov ecx, dword [esi]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x10104c62
inc ecx
test eax, eax
je 0x10104c50
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x10104c55
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bc530
movups xmm0, xmmword [str.rRTN]
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 0x10104e10
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104de0
movaps xmm0, xmmword [0x10214a90]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10214950]
xor ecx, ecx
movaps xmm3, xmmword [0x10214d20]
movaps xmm5, xmmword [0x102149b0]
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, 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 [0x10214a50]
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, 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 [0x10214a50]
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 0x10104ce0
jmp 0x10104e10
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x10
jl 0x10104de0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x68]
call fcn.10186fa0
test al, al
je 0x10104fdd
mov eax, dword [0x1020a5c4]
xor edx, edx
movq xmm0, qword [0x1020a5bc]
mov dword [esp + 0x48], eax
mov ax, word [0x1020a5c8]
mov word [esp + 0x4c], ax
mov al, byte [0x1020a5ca]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4e], al
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10104f60
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1020a5bc]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xf
jl 0x10104f60
mov esi, dword [0x10468548]
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.1016c950
cmp dword [esi + 0x1c24], eax
jne 0x10104fc5
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10104fd4
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10178e70
mov eax, dword [0x1020a5c4]
xor edx, edx
movq xmm0, qword [0x1020a5bc]
mov dword [esp + 0x48], eax
mov ax, word [0x1020a5c8]
mov word [esp + 0x4c], ax
mov al, byte [0x1020a5ca]
mov byte [esp + 0x4e], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10105112
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1020a5bc]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xf
jl 0x10105112
mov esi, dword [0x10468548]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x10105165
mov dword [esi + 0x1c74], 0
jmp 0x101056a8
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.1016c950
cmp dword [esi + 0x1c24], eax
jne 0x10105194
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101051a3
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.101791b0
test al, al
je 0x101056a8
mov eax, dword [str.MJ2_C]
xor edx, edx
movq xmm0, qword [0x1020aba4]
mov dword [esp + 0x48], eax
mov ax, word [0x1020abb0]
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10105322
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x101052f0
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x1020aba4]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xe
jl 0x101052f0
xor edx, edx
push 1
lea ecx, [esp + 0x44]
call fcn.10186170
mov ax, word [0x102098c0]
xor edx, edx
mov word [esp + 0x14], ax
mov al, byte [0x102098c2]
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, 0x5397829d
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [esp + 0x18]
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 3
jl 0x10105360
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x1c]
call fcn.10186fa0
test al, al
je 0x101053a3
call fcn.10179120
movss xmm1, dword [0x102147dc]
xorps xmm0, xmm0
call fcn.10177fe0
cmp byte [0x1020a55f], 0
mov eax, dword [str.oRK9LM_I]
mov dword [esp + 0x28], 0x42340000
mov dword [esp + 0x2c], 0
mov dword [esp + 0x14], eax
je 0x10105492
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10105462
movaps xmm3, xmmword [0x10214950]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x10214d20]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x10214d20]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x102149b0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10214a90]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x10105492
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 4
jl 0x10105462
push 0
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x1c]
call fcn.10186fa0
test al, al
je 0x10105668
mov eax, dword [0x1023f728]
mov ecx, dword [0x1023fc80]
mov dword [esp + 0x18], ecx
lea eax, [eax + eax*2]
mov esi, dword [ecx + 0x3984]
shl eax, 3
add esi, eax
mov dword [esp + 0x20], eax
cmp dword [esi + 0x14], 0xf
jbe 0x101054d4
mov esi, dword [esi]
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101054e0
sub ecx, edx
mov edx, 0xfde9
push ecx
push esi
lea ecx, [esp + 0x88]
call fcn.10003f40
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xc8]
add eax, 0x396c
push eax
call fcn.10020b70
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0xcc]
call fcn.10004150
cmp dword [esp + 0xdc], 7
lea eax, [esp + 0xc8]
cmova eax, dword [esp + 0xc8]
push eax
call fcn.101b40e1
lea ecx, [esp + 0xc8]
call fcn.10002200
lea ecx, [esp + 0x80]
call fcn.10002200
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x3984]
add esi, dword [esp + 0x20]
mov ecx, dword [eax + 0x3988]
mov dword [esp + 0x20], esi
add esi, 0x18
mov dword [esp + 0x38], ecx
cmp esi, ecx
je 0x101055a0
mov edi, dword [esp + 0x20]
sub edi, esi
push esi
lea ecx, [edi + esi]
call fcn.10020d50
add esi, 0x18
cmp esi, dword [esp + 0x38]
jne 0x10105584
mov edi, dword [0x10240d90]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x3988]
mov ecx, dword [esi - 4]
cmp ecx, 0xf
jbe 0x101055de
mov eax, dword [esi - 0x18]
inc ecx
cmp ecx, 0x1000
jb 0x101055d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x101079f4
mov eax, edx
push ecx
push eax
call fcn.101b5a93
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 + 0x3988], 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 0x10105643
lea eax, [ecx + ecx*2]
lea eax, [esi + eax*8]
cmp eax, 0x1023f380
je 0x10105663
cmp dword [eax + 0x14], 0xf
mov edx, dword [eax + 0x10]
jbe 0x10105635
mov eax, dword [eax]
push edx
push eax
mov ecx, 0x1023f380
call fcn.10023010
jmp 0x10105663
cmp dword [0x1023f394], 0xf
mov eax, 0x1023f380
mov dword [0x1023f390], 0
cmova eax, dword [0x1023f380]
mov byte [eax], 0
call fcn.10179120
mov esi, dword [0x10468548]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x1010568c
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x1010569c
mov byte [esi + 0x1b9e], 1
call fcn.10177230
mov byte [esi + 0x1b9e], 0
mov eax, dword [0x10468548]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x10209438]
xor edx, edx
movq xmm0, qword [str.dRKNeOXRZ5D]
mov dword [esp + 0x48], eax
mov ax, word [0x1020943c]
mov word [esp + 0x4c], ax
mov al, byte [0x1020943e]
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 0x10105800
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.dRKNeOXRZ5D]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xf
jl 0x10105800
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x48]
call fcn.10186fa0
test al, al
je 0x10105a1d
movups xmm0, xmmword [0x1020ac10]
movups xmmword [esp + 0x60], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x101059d0
xor edx, edx
mov dword [esp + 0x30], edx
cmp edi, 2
jl 0x101059a0
movaps xmm0, xmmword [0x10214a90]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10214950]
xor ecx, ecx
movaps xmm3, xmmword [0x10214d20]
movaps xmm5, xmmword [0x102149b0]
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, 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 [0x10214a50]
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, 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 [0x10214a50]
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 0x101058a0
jmp 0x101059d0
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x30]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x30], edx
cmp edx, 0x10
jl 0x101059a0
mov esi, dword [0x10468548]
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.1016c950
cmp dword [esi + 0x1c24], eax
jne 0x10105a05
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10105a14
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10178e70
movups xmm0, xmmword [0x1020ac10]
movups xmmword [esp + 0x60], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x10105ba0
xor edx, edx
mov dword [esp + 0x30], edx
cmp edi, 2
jl 0x10105b70
movaps xmm0, xmmword [0x10214a90]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10214950]
xor ecx, ecx
movaps xmm3, xmmword [0x10214d20]
movaps xmm5, xmmword [0x102149b0]
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, 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 [0x10214a50]
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, 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 [0x10214a50]
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 0x10105a74
jmp 0x10105ba0
mov eax, 0x5397829d
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x30]
movsx eax, al
mov cl, dl
imul eax, eax, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x30], edx
cmp edx, 0x10
jl 0x10105b70
mov esi, dword [0x10468548]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x10105bc3
mov dword [esi + 0x1c74], 0
jmp 0x1010729d
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.1016c950
cmp dword [esi + 0x1c24], eax
jne 0x10105bf2
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10105c01
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.101791b0
test al, al
je 0x1010729d
xor edi, edi
mov dword [esp + 0x14], edi
nop dword [eax + eax]
cmp edi, 1
jne 0x10105c4b
mov eax, dword [0x10468548]
mov ecx, dword [eax + 0x1bec]
cmp byte [ecx + 0xab], 0
jne 0x10105c4b
mov ecx, dword [ecx + 0x1dc]
neg ecx
sbb ecx, ecx
add ecx, 6
call fcn.10189160
mov ecx, dword [edi*4 + 0x1020aabc]
lea eax, [esp + 0x28]
push eax
push 0
xor dl, dl
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
call fcn.10197dd0
test al, al
je case.default.0x10105c81
cmp edi, 0xc
ja case.default.0x10105c81
jmp dword [edi*4 + 0x101079fc]
mov ecx, dword [0x1023fc80]
call fcn.1001b970
mov cl, 1
call fcn.1011fce0
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 [0x1046ad00], 1
inc edi
jmp 0x10105c17
push 0x500
lea eax, [esp + 0xfc]
push 0
push eax
call fcn.101b7540
add esp, 0xc
lea eax, [esp + 0xfc]
mov ecx, 0x28
nop dword [eax]
nop word [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 0x10105cf0
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 + 0xf04], 0x42
jmp 0x10105c17
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.101b7540
add esp, 0xc
lea ecx, [esp + 0xf8]
mov edx, 0xb
call fcn.10027010
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 0x10105c17
push 0x210
lea eax, [esp + 0xfc]
push 0
push eax
call fcn.101b7540
add esp, 0xc
lea ecx, [esp + 0xf8]
mov edx, 6
call fcn.10027090
mov edi, dword [0x1023fc80]
lea esi, [esp + 0xf8]
movaps xmm0, xmmword [0x10214b20]
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 0x10105c17
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 0x10105c17
mov ecx, 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 [ecx + 0xf30], xmm0
mov byte [esp + 0x98], 0
mov dword [esp + 0x9c], 0
movups xmm0, xmmword [esp + 0x90]
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
movups xmmword [ecx + 0xf40], xmm0
mov word [esp + 0xa8], 0
movq xmm0, qword [esp + 0xa0]
mov eax, dword [esp + 0xa8]
movq qword [ecx + 0xf50], xmm0
mov dword [ecx + 0xf58], eax
jmp 0x10105c17
mov eax, dword [0x1023fc80]
inc edi
mov dword [eax + 0xf28], 0x42
jmp 0x10105c17
mov ecx, dword [0x1023fc80]
xor esi, esi
add ecx, 0xf9c
call fcn.10031140
mov ecx, dword [0x1023fc80]
add ecx, 0xf7c
call fcn.100311a0
inc edi
jmp 0x10105c17
mov ecx, dword [0x1023fc80]
xor esi, esi
add ecx, 0xf5c
call fcn.10022bc0
inc edi
jmp 0x10105c17
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0xfc], xmm0
mov byte [esp + 0xf8], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x118], xmm0
mov dword [esp + 0x10c], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x12e], xmm0
mov word [esp + 0x110], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x144], xmm0
mov dword [esp + 0x114], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x15a], xmm0
mov dword [esp + 0x128], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x170], xmm0
mov word [esp + 0x12c], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x186], xmm0
mov dword [esp + 0x13e], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x19f], xmm0
mov word [esp + 0x142], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x1b5], xmm0
mov dword [esp + 0x154], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x1ca], xmm0
mov word [esp + 0x158], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x1df], xmm0
mov dword [esp + 0x16a], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x1fb], xmm0
mov word [esp + 0x16e], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x211], xmm0
mov dword [esp + 0x180], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x226], xmm0
mov word [esp + 0x184], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x23b], xmm0
mov dword [esp + 0x196], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x26c], xmm0
mov dword [esp + 0x19a], 0x1000000
movaps xmm0, xmmword [0x10214cc0]
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 [0x10214cc0]
movups xmmword [esp + 0x29e], xmm0
mov word [esp + 0x29c], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x2b4], xmm0
mov dword [esp + 0x2ae], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x2ca], xmm0
mov word [esp + 0x2b2], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x2e0], xmm0
mov dword [esp + 0x2c4], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x2f6], xmm0
mov word [esp + 0x2c8], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x30f], xmm0
mov dword [esp + 0x2da], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x325], xmm0
mov word [esp + 0x2de], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x33a], xmm0
mov dword [esp + 0x2f0], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x34f], xmm0
mov word [esp + 0x2f4], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x36b], xmm0
mov dword [esp + 0x306], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x381], xmm0
mov dword [esp + 0x30a], 0x1000000
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x396], xmm0
mov byte [esp + 0x30e], 1
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x3ab], xmm0
mov dword [esp + 0x31f], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x3dc], xmm0
mov word [esp + 0x323], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x3f8], xmm0
mov dword [esp + 0x335], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x40e], xmm0
mov byte [esp + 0x339], 0
movaps xmm0, xmmword [0x10214cc0]
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 [0x10214cc0]
movups xmmword [esp + 0x43a], xmm0
mov dword [esp + 0x44a], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x450], xmm0
mov word [esp + 0x44e], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x466], xmm0
mov dword [esp + 0x460], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x47f], xmm0
mov word [esp + 0x464], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x495], xmm0
mov dword [esp + 0x476], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x4aa], xmm0
mov dword [esp + 0x47a], 0x1000000
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x4bf], xmm0
mov byte [esp + 0x47e], 1
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x4db], xmm0
mov dword [esp + 0x48f], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x4f1], xmm0
mov word [esp + 0x493], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x506], xmm0
mov dword [esp + 0x4a5], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x51b], xmm0
mov byte [esp + 0x4a9], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x54c], xmm0
mov dword [esp + 0x4ba], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x568], xmm0
mov byte [esp + 0x4be], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x57e], xmm0
mov dword [esp + 0x4cf], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x594], xmm0
mov byte [esp + 0x4d3], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x5ac], xmm0
mov dword [esp + 0x4d4], 0
movaps xmm0, xmmword [0x10214cc0]
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 [0x10214cc0]
lea esi, [esp + 0xf8]
mov edi, dword [0x1023fc80]
mov ecx, 0x152
movups xmmword [esp + 0x5e4], xmm0
add edi, 0xfbc
mov dword [esp + 0x5e0], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x5fa], xmm0
mov dword [esp + 0x5f4], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x610], xmm0
mov word [esp + 0x5f8], 0
movaps xmm0, xmmword [0x10214cc0]
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 0x10105c17
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0xf9], xmm0
push 1
movaps xmm0, xmmword [0x10214cc0]
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 [0x10214cc0]
movups xmmword [esp + 0x16d], xmm0
mov byte [esp + 0x12b], 0
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x183], xmm0
mov dword [esp + 0x12c], 0xfa
movaps xmm0, xmmword [0x10214b90]
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.100c8c70
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.100c8c70
xorps xmm0, xmm0
mov dword [esp + 0x20c], 2
movups xmmword [esp + 0x214], xmm0
mov byte [esp + 0x210], 0
movaps xmm0, xmmword [0x10214ce0]
mov byte [esp + 0x224], 1
mov word [esp + 0x228], 0
movups xmmword [esp + 0x22c], xmm0
movaps xmm0, xmmword [0x10214b70]
lea eax, [esp + 0x28c]
push 0x100
movups xmmword [esp + 0x254], xmm0
push 0
movaps xmm0, xmmword [0x10214ba0]
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.101b7540
movaps xmm0, xmmword [0x10214ca0]
add esp, 0xc
movups xmmword [esp + 0x38d], xmm0
xor eax, eax
mov byte [esp + 0x38c], 0
movaps xmm0, xmmword [0x102148f0]
movups xmmword [esp + 0x3b0], xmm0
mov dword [esp + 0x39d], 0x3f19999a
movaps xmm0, xmmword [0x10214ae0]
movups xmmword [esp + 0x3ca], xmm0
mov word [esp + 0x3a1], 0
movaps xmm0, xmmword [0x10214b00]
movups xmmword [esp + 0x3e1], xmm0
mov dword [esp + 0x3a4], 0x3f0ccccd
movaps xmm0, xmmword [0x10214b10]
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 [0x10214b80]
movups xmmword [esp + 0x428], xmm0
mov dword [esp + 0x3c4], 0x3f19999a
movaps xmm0, xmmword [0x10214b30]
movups xmmword [esp + 0x43e], xmm0
mov word [esp + 0x3c8], 0
movaps xmm0, xmmword [0x10214b40]
movups xmmword [esp + 0x450], xmm0
mov dword [esp + 0x3da], 0x3f19999a
movaps xmm0, xmmword [0x10214b70]
movups xmmword [esp + 0x462], xmm0
mov word [esp + 0x3de], 0
movaps xmm0, xmmword [0x10214af0]
movups xmmword [esp + 0x47d], xmm0
mov byte [esp + 0x3e0], 1
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x492], xmm0
mov dword [esp + 0x3f1], 0x3f19999a
movaps xmm0, xmmword [0x10214cc0]
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 [0x10214af0]
movups xmmword [esp + 0x4bd], xmm0
push 1
movaps xmm0, xmmword [0x10214cc0]
sub esp, 0x18
movups xmmword [esp + 0x4ee], xmm0
mov ecx, esp
mov byte [esp + 0x4ed], al
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x503], xmm0
mov byte [esp + 0x502], al
movaps xmm0, xmmword [0x10214ad0]
movups xmmword [esp + 0x518], xmm0
mov byte [esp + 0x517], al
movaps xmm0, xmmword [0x10214b70]
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.100c8c70
movaps xmm0, xmmword [0x10214cb0]
xor eax, eax
mov ecx, dword [0x1023fc80]
movups xmmword [esp + 0x564], xmm0
mov word [esp + 0x5be], ax
movaps xmm0, xmmword [0x10214cc0]
movups xmmword [esp + 0x580], xmm0
mov word [esp + 0x5d8], ax
movaps xmm0, xmmword [0x10214c80]
movups xmmword [esp + 0x5a9], xmm0
mov byte [esp + 0x5da], al
movaps xmm0, xmmword [0x10214cd0]
movups xmmword [esp + 0x5c0], xmm0
mov byte [esp + 0x5eb], al
movaps xmm0, xmmword [0x10214b50]
movups xmmword [esp + 0x5db], xmm0
mov byte [esp + 0x5fc], al
movaps xmm0, xmmword [0x10214b60]
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 + 0x1504]
call fcn.1001d080
lea ecx, [esp + 0xf8]
call fcn.100028e0
inc edi
jmp 0x10105c17
push 0x1950
lea eax, [esp + 0xfc]
push 0
push eax
call fcn.101b7540
add esp, 0xc
lea ecx, [esp + 0xf8]
mov edx, 0x24
call fcn.10027140
push 0x1950
lea eax, [esp + 0xfc]
push eax
mov eax, dword [0x1023fc80]
add eax, 0x1a0c
push eax
call fcn.101b6fc0
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 [0x1046ad00], 1
inc edi
jmp 0x10105c17
inc edi
mov dword [esp + 0x14], edi
cmp edi, 0xd
jl 0x10105c20
jmp 0x10107257
lea ecx, [esp + 0xf8]
call fcn.100065a0
mov ecx, dword [0x1023fc80]
lea eax, [esp + 0xf8]
push eax
lea ecx, [ecx + 0x335c]
call fcn.1001d8f0
lea ecx, [esp + 0xf8]
call fcn.10002a30
mov cl, 1
call fcn.1011fce0
mov esi, dword [0x10468548]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x1010727b
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x1010728b
mov byte [esi + 0x1b9e], 1
call fcn.10177230
mov byte [esi + 0x1b9e], 0
mov edi, dword [0x10240d90]
mov ecx, dword [0x10468548]
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.100c82f0
mov eax, dword [0x10209eb4]
xor edx, edx
movq xmm0, qword [str.wT_TO]
mov esi, dword [0x1023fc80]
mov dword [esp + 0x48], eax
mov al, byte [0x10209eb8]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4c], al
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10107410
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x18], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.wT_TO]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0xd
jl 0x10107410
push 0
push 0
push 0
push 0
lea eax, [esi + 0x3910]
push eax
lea eax, [esi + 0x3914]
push eax
lea eax, [esi + 0x390c]
push eax
lea edx, [esi + 0x3900]
lea ecx, [esp + 0x5c]
call fcn.100bc9a0
movups xmm0, xmmword [str.dXMWXjP0a]
mov ax, word [0x1020ae1c]
xor edx, edx
mov word [esp + 0xa8], ax
mov dword [esp + 0x18], edx
movups xmmword [esp + 0x80], xmm0
movups xmm0, xmmword [0x1020ae04]
movups xmmword [esp + 0x90], xmm0
movq xmm0, qword [0x1020ae14]
movq qword [esp + 0xa0], xmm0
cmp edi, 2
jl 0x10107610
movaps xmm0, xmmword [0x10214a90]
lea esi, [esp + 0x84]
movaps xmm4, xmmword [0x10214950]
movaps xmm3, xmmword [0x10214d20]
movaps xmm5, xmmword [0x102149b0]
movaps xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x50]
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 [0x10214a50]
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, 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 [0x10214a50]
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 0x101074e4
mov dword [esp + 0x18], edx
cmp edx, 0x2a
jl 0x10107610
mov eax, dword [0x10209a7c]
mov ecx, dword [0x1023fc80]
mov dword [esp + 0x48], eax
add ecx, 0x3918
mov al, byte [0x10209a80]
mov dword [esp + 0x18], ecx
mov byte [esp + 0x4c], al
jmp 0x10107663
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x80], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x2a
jl 0x10107610
mov eax, dword [0x10209a7c]
mov dword [esp + 0x48], eax
mov al, byte [0x10209a80]
mov byte [esp + 0x4c], al
mov eax, dword [0x1023fc80]
add eax, 0x3918
mov dword [esp + 0x18], eax
movq xmm0, qword [0x10209a74]
xor edx, edx
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x14], edx
cmp edi, 2
jl 0x10107780
movaps xmm2, xmmword [0x10214950]
mov edx, 8
movaps xmm4, xmmword [0x10214d20]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x10214a90]
movaps xmm0, xmm1
mov dword [esp + 0x14], edx
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10214990]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x10209a74]
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, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x102149b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10214a50]
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, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x40], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xd
jl 0x10107780
xor esi, esi
lea edx, [esp + 0x80]
cmp byte [esp + 0x80], 0
je 0x101077f3
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
nop dword [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 0x101077e0
sub ecx, dword [esp + 0x20]
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x101077d0
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x80]
push 1
push 0xffffffffffffffff
push esi
push eax
push 0x1018a280
lea ecx, [esp + 0x54]
call fcn.1018a2e0
mov esi, dword [0x1023fc80]
movups xmm0, xmmword [str.aV_UL]
mov eax, dword [0x10209398]
add esi, 0x391c
cmp byte [0x1020939b], 0
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0x70], eax
je 0x101079b0
xor edx, edx
mov dword [esp + 0x18], edx
cmp edi, 2
jl 0x10107980
movaps xmm0, xmmword [0x10214a90]
lea edi, [esp + 0x64]
movaps xmm4, xmmword [0x10214950]
movaps xmm3, xmmword [0x10214d20]
movaps xmm5, xmmword [0x102149b0]
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, 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 [0x10214a50]
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, 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 [0x10214a50]
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 0x10107880
mov dword [esp + 0x18], edx
cmp edx, 0x14
jge 0x101079b0
nop
mov eax, 0x5397829d
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, 0x31
sub cl, al
add cl, 0x36
xor byte [esp + edx + 0x60], cl
inc edx
mov dword [esp + 0x18], edx
cmp edx, 0x14
jl 0x10107980
push 0
push 0x102080ac
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.1018c060
mov ecx, dword [esp + 0x1a4c]
pop edi
pop esi
xor ecx, esp
call fcn.101b579a
mov esp, ebp
pop ebp
ret
call fcn.101babc6
nop dword [eax]
mov byte [eax + edx + 0x10], bl
rcr byte [eax + edx + 16], 0xc1
pop ebp
adc byte [eax], dl
lea ebx, [esi + 0x10]
adc byte [edi + ebx*2 + 1606881296], cl
adc byte [eax], dl
jle 0x10107a76
adc byte [eax], dl
xchg ebx, eax
pushal
adc byte [eax], dl
mov ebp, 0xd6101060
pushal
adc byte [eax], dl
sbb eax, 0xa110106a
jno 269515323
adc byte [edi], bl
jb 0x10107a3f
adc byte [ebx + 0x52148d01], cl
cmp dword [eax + edx*8 + 0x14], 0xf
lea ecx, [eax + edx*8]
or al, 0xd0
mov eax, dword [esp + 4]
and al, 4
jbe 0x10107a45
mov ecx, dword [ecx]
mov dword [eax], ecx
mov al, 1
ret 4
add byte [eax], al