Function at 0x101127fa
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, 0x1a58
call fcn.101a2b80
mov eax, dword [0x1020f0c0]
xor eax, esp
mov dword [esp + 0x1a54], eax
mov edx, dword [0x10456c08]
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 0x101102da
cmp dword [eax + 0x10], 2
jne 0x101102d5
cmp dword [eax + 4], 1
je 0x101102e8
call fcn.100cef70
push 1
mov edx, 2
xor ecx, ecx
call fcn.100ce6a0
movss xmm0, dword [0x10201194]
mov ecx, 1
call fcn.100ce2d0
movss xmm0, dword [0x10201188]
call fcn.101640b0
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1022e69c]
mov esi, dword [0x1022ccc8]
add esi, 0x3aac
mov dword [esp + 0x38], esi
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10521e04]
cmp eax, dword [ecx + 4]
jle 0x10110363
push 0x10521e04
call fcn.101a22b8
add esp, 4
cmp dword [0x10521e04], 0xffffffff
jne 0x10110363
push 0x101cecb0
call fcn.101a2004
add esp, 4
push 0x10521e04
call fcn.101a2267
add esp, 4
mov eax, dword [0x10456c08]
xorps xmm1, xmm1
movss xmm0, dword [edi + 0x60]
subss xmm0, dword [eax + 0x5c]
comiss xmm1, xmm0
movss dword [edi + 0x60], xmm0
jb 0x10110406
mov ecx, dword [0x1022ccc8]
call fcn.1001eee0
mov edi, dword [esi + 4]
mov eax, dword [esi]
mov esi, eax
mov dword [esp + 0x18], eax
cmp esi, edi
je 0x101103f7
nop dword [eax]
cmp dword [0x1022c3a8], 0xf
mov eax, 0x1022c394
mov ecx, esi
cmova eax, dword [0x1022c394]
cmp dword [esi + 0x14], 0xf
jbe 0x101103bd
mov ecx, dword [esi]
push dword [0x1022c3a4]
mov edx, dword [esi + 0x10]
push eax
call fcn.100305c0
test al, al
jne 0x101103d7
add esi, 0x18
cmp esi, edi
jne 0x101103a0
mov eax, dword [esp + 0x18]
cmp esi, edi
je 0x101103f7
sub esi, eax
mov eax, 0x2aaaaaab
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [0x1022c758], eax
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x38]
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 [0x1022c758], eax
jb 0x1011042e
mov dword [0x1022c758], 0xffffffff
mov ecx, dword [esi + 4]
mov eax, 0x2aaaaaab
sub ecx, dword [esi]
imul ecx
push 5
sar edx, 2
mov ecx, 0x101d84ee
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x1022c758
push eax
push esi
push 0x10114660
call fcn.10184a70
test al, al
je 0x10110490
mov eax, dword [0x1022c758]
cmp eax, 0xffffffff
je 0x10110490
lea ecx, [eax + eax*2]
mov eax, dword [esi]
lea eax, [eax + ecx*8]
cmp eax, 0x1022c394
je 0x10110490
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x10110484
mov eax, dword [eax]
push ecx
push eax
mov ecx, 0x1022c394
call fcn.10023b60
xor ecx, ecx
call fcn.10163c40
cmp byte [0x101f65ff], 0
movq xmm0, qword [0x101f65f4]
mov eax, dword [0x101f65fc]
mov edi, dword [0x1022e690]
movq qword [esp + 0x50], xmm0
mov dword [esp + 0x58], eax
je 0x10110607
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x101105d0
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm3, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm1, xmm3
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov dword [esp + 0x14], ecx
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
movd xmm0, dword [0x101f65f4]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10201550]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x50], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm1, xmm3
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
movd xmm0, dword [esp + 0x54]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10201550]
xorps xmm1, xmm0
movd dword [esp + 0x54], xmm1
nop
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x50], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xc
jl 0x101105d0
mov eax, dword [0x1022c3a8]
mov edx, 0x1022c394
cmp eax, 0xf
mov dword [esp + 0x40], 0x1022c394
mov ecx, 0x101d84ee
mov dword [esp + 0x44], 0
cmova edx, dword [0x1022c394]
lea esi, [eax + 1]
mov dword [esp + 0x48], 0
lea eax, [esp + 0x40]
mov dword [esp + 0x28], 0
push eax
push 0x100c8880
push 0x40020
lea eax, [esp + 0x34]
mov dword [esp + 0x38], 0
push eax
push esi
push edx
lea edx, [esp + 0x68]
call fcn.1017b200
test al, al
je 0x101107e2
mov eax, dword [0x1022c758]
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
je 0x101107e2
cmp dword [0x1022c3a8], 0xf
mov esi, 0x1022c394
mov eax, dword [0x1022ccc8]
cmova esi, dword [0x1022c394]
mov ecx, esi
mov dword [esp + 0x18], eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101106a5
sub ecx, edx
mov edx, 0xfde9
push ecx
push esi
lea ecx, [esp + 0x88]
call fcn.100040e0
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xd8]
add eax, 0x3a94
push eax
mov dword [esp + 0x34], eax
call fcn.100215e0
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0xdc]
call fcn.100042f0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
lea eax, [eax + eax*2]
mov edx, dword [edx + 0x3aac]
shl eax, 3
add edx, eax
mov dword [esp + 0x20], eax
cmp dword [edx + 0x14], 0xf
jbe 0x10110711
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x14], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10110720
sub ecx, dword [esp + 0x14]
push ecx
push edx
mov edx, 0xfde9
lea ecx, [esp + 0xf8]
call fcn.100040e0
push dword [esp + 0x30]
lea ecx, [esp + 0x64]
call fcn.100215e0
lea eax, [esp + 0xf0]
push eax
lea ecx, [esp + 0x64]
call fcn.100042f0
cmp dword [esp + 0xec], 7
lea ecx, [esp + 0xd8]
lea eax, [esp + 0x60]
cmova ecx, dword [esp + 0xd8]
cmp dword [esp + 0x74], 7
push ecx
cmova eax, dword [esp + 0x64]
push eax
call fcn.101a0801
lea ecx, [esp + 0x60]
call fcn.10002350
lea ecx, [esp + 0xf0]
call fcn.10002350
lea ecx, [esp + 0xd8]
call fcn.10002350
lea ecx, [esp + 0x80]
call fcn.10002350
mov eax, dword [esp + 0x18]
mov edx, esi
mov ecx, dword [eax + 0x3aac]
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 0x101107d0
sub edx, dword [esp + 0x20]
push edx
push esi
call fcn.10023b60
mov eax, dword [0x10456c08]
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 [0x101f7190]
mov dword [esp + 0x70], eax
mov ax, word [0x101f7194]
mov word [esp + 0x74], ax
test ah, ah
je 0x101109a7
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10110970
movaps xmm0, xmmword [0x10201550]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x10201840]
movaps xmm5, xmmword [0x10201490]
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
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x10110863
mov dword [esp + 0x14], ecx
cmp ecx, 0x16
jge 0x101109a7
nop dword [eax]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x60], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0x16
jl 0x10110970
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x68]
call fcn.10173030
test al, al
je 0x10110a1c
mov esi, dword [0x1022ccc8]
add esi, 0x3a94
mov eax, esi
cmp dword [esi + 0x14], 7
jbe 0x101109d2
mov eax, dword [esi]
push eax
call fcn.101a02ea
push esi
lea ecx, [esp + 0xdc]
call fcn.100215e0
cmp dword [esp + 0xec], 7
lea eax, [esp + 0xd8]
push 1
cmova eax, dword [esp + 0xdc]
push 0
push 0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [esp + 0xd8]
call fcn.10002350
mov eax, dword [0x101f64fc]
movq xmm0, qword [str.uE_XN]
mov dword [esp + 0x48], eax
mov ax, word [0x101f6500]
mov dword [esp + 0x28], 0x437a0000
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10110ba7
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10110b70
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xe
jl 0x10110b70
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x48]
call fcn.10173030
test al, al
je 0x10110c1b
cmp dword [0x1022c3a8], 0xf
mov esi, 0x1022c394
mov eax, dword [0x1022ccc8]
xorps xmm0, xmm0
cmova esi, dword [0x1022c394]
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x48], 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
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x10110c00
sub edx, dword [esp + 0x38]
push edx
push esi
call fcn.10028880
mov ecx, dword [esp + 0x48]
call fcn.1001c280
cmp dword [0x1022c758], 0xffffffff
je 0x10112209
mov eax, dword [0x101f77dc]
movq xmm0, qword [0x101f77d4]
mov dword [esp + 0x48], eax
mov ax, word [0x101f77e0]
mov dword [esp + 0x28], 0x437a0000
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10110dab
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10110d74
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f77d4]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xe
jl 0x10110d74
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x48]
call fcn.10173030
test al, al
je 0x10110e0e
mov eax, dword [0x1022c758]
mov ecx, dword [0x1022ccc8]
lea edx, [eax + eax*2]
mov eax, dword [ecx + 0x3aac]
cmp dword [eax + edx*8 + 0x14], 0xf
lea eax, [eax + edx*8]
jbe 0x10110de0
mov eax, dword [eax]
push ecx
push eax
call fcn.100113d0
mov eax, dword [0x1022ccd0]
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 [0x104593c0], 1
call fcn.1012cdf0
mov eax, dword [0x10456c08]
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.10158960
mov ecx, dword [esi]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x10110e65
inc ecx
test eax, eax
je 0x10110e53
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x10110e58
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100c2eb0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x20]
movq xmm0, qword [str.eVN_]
mov dword [esp + 0x28], 0x437a0000
mov dword [eax + ecx*4], edx
mov eax, dword [0x101f7a10]
inc dword [esi]
mov dword [esp + 0x58], eax
mov ax, word [0x101f7a14]
mov dword [esp + 0x2c], 0x41c80000
movq qword [esp + 0x50], xmm0
mov word [esp + 0x5c], ax
test ah, ah
je 0x10110ff7
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10110fc0
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.eVN_]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x50], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x54]
xorps xmm1, xmm0
movd dword [esp + 0x54], xmm1
nop
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x50], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xe
jl 0x10110fc0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x58]
call fcn.10173030
test al, al
je 0x101111c6
mov eax, dword [0x101f6ec4]
xor ecx, ecx
movq xmm0, qword [0x101f6ebc]
mov dword [esp + 0x48], eax
mov al, byte [0x101f6ec8]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4c], al
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10111142
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f6ebc]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xd
jl 0x10111142
mov esi, dword [0x10456c08]
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.10158960
cmp dword [esi + 0x1c24], eax
jne 0x101111ae
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101111bd
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10164e80
mov eax, dword [0x101f6ec4]
xor ecx, ecx
movq xmm0, qword [0x101f6ebc]
mov dword [esp + 0x48], eax
mov al, byte [0x101f6ec8]
mov byte [esp + 0x4c], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10111300
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f6ebc]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xd
jl 0x10111300
mov esi, dword [0x10456c08]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x1011135a
mov dword [esi + 0x1c74], 0
jmp 0x10111712
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.10158960
cmp dword [esi + 0x1c24], eax
jne 0x10111389
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10111398
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.101651c0
test al, al
je 0x10111712
mov eax, dword [str.MJ2_C]
movq xmm0, qword [0x101f666c]
mov dword [esp + 0x48], eax
mov ax, word [0x101f6678]
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10111527
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x101114f0
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f666c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xe
jl 0x101114f0
push 1
xor edx, edx
lea ecx, [esp + 0x44]
call fcn.10172200
mov ax, word [0x101f79a0]
xor ecx, ecx
mov word [esp + 0x14], ax
mov al, byte [0x101f79a2]
mov byte [esp + 0x16], al
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0x42340000
mov dword [esp + 0x18], ecx
nop
mov eax, 0x24924925
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x14], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 3
jl 0x10111560
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x1c]
call fcn.10173030
test al, al
je 0x101115b0
call fcn.10165130
movss xmm1, dword [0x10201264]
xorps xmm0, xmm0
call fcn.10163ff0
cmp byte [0x101f7c97], 0
mov eax, dword [str.oRK9rVUX_]
mov dword [esp + 0x28], 0x42340000
mov dword [esp + 0x2c], 0
mov dword [esp + 0x14], eax
je 0x101116a7
xor ecx, ecx
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x10111670
movaps xmm3, xmmword [0x10201400]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x10201840]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x10201840]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
psrad xmm2, 5
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x10201490]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10201550]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x101116a7
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x14], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 4
jl 0x10111670
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x1c]
call fcn.10173030
test al, al
je 0x101116d2
push dword [0x1022c758]
mov ecx, dword [0x1022ccc8]
call fcn.1001a8e0
call fcn.10165130
mov esi, dword [0x10456c08]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x101116f6
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10111706
mov byte [esi + 0x1b9e], 1
call fcn.10163240
mov byte [esi + 0x1b9e], 0
mov ecx, dword [0x10456c08]
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.10158960
mov ecx, dword [esi]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x10111777
inc ecx
test eax, eax
je 0x10111765
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x1011176a
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100c2eb0
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 0x10111927
xor ecx, ecx
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x101118f0
movaps xmm0, xmmword [0x10201550]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x10201840]
movaps xmm5, xmmword [0x10201490]
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
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ecx + esi]
xorps xmm1, xmm0
movd dword [ecx + esi], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x101117f0
jmp 0x10111927
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x60], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0x10
jl 0x101118f0
push 1
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x68]
call fcn.10173030
test al, al
je 0x10111b04
mov eax, dword [0x101f6970]
xor ecx, ecx
movq xmm0, qword [0x101f6968]
mov dword [esp + 0x48], eax
mov ax, word [0x101f6974]
mov word [esp + 0x4c], ax
mov al, byte [0x101f6976]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4e], al
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10111a80
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f6968]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xf
jl 0x10111a80
mov esi, dword [0x10456c08]
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.10158960
cmp dword [esi + 0x1c24], eax
jne 0x10111aec
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10111afb
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10164e80
mov eax, dword [0x101f6970]
xor ecx, ecx
movq xmm0, qword [0x101f6968]
mov dword [esp + 0x48], eax
mov ax, word [0x101f6974]
mov word [esp + 0x4c], ax
mov al, byte [0x101f6976]
mov byte [esp + 0x4e], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10111c41
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f6968]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xf
jl 0x10111c41
mov esi, dword [0x10456c08]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x10111c9b
mov dword [esi + 0x1c74], 0
jmp 0x101121f8
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.10158960
cmp dword [esi + 0x1c24], eax
jne 0x10111cca
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10111cd9
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.101651c0
test al, al
je 0x101121f8
mov eax, dword [str.MJ2_C]
movq xmm0, qword [0x101f666c]
mov dword [esp + 0x48], eax
mov ax, word [0x101f6678]
movq qword [esp + 0x40], xmm0
mov word [esp + 0x4c], ax
test ah, ah
je 0x10111e67
xor ecx, ecx
mov dword [esp + 0x14], ecx
cmp edi, 2
jl 0x10111e30
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x14], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f666c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x14]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x14]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x14], ecx
cmp ecx, 0xe
jl 0x10111e30
push 1
xor edx, edx
lea ecx, [esp + 0x44]
call fcn.10172200
mov ax, word [0x101f79a0]
xor ecx, ecx
mov word [esp + 0x14], ax
mov al, byte [0x101f79a2]
mov byte [esp + 0x16], al
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0x42340000
mov dword [esp + 0x18], ecx
nop
mov eax, 0x24924925
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x14], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 3
jl 0x10111ea0
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x1c]
call fcn.10173030
test al, al
je 0x10111ef0
call fcn.10165130
movss xmm1, dword [0x10201264]
xorps xmm0, xmm0
call fcn.10163ff0
cmp byte [0x101f7c97], 0
mov eax, dword [str.oRK9rVUX_]
mov dword [esp + 0x28], 0x42340000
mov dword [esp + 0x2c], 0
mov dword [esp + 0x14], eax
je 0x10111fe7
xor ecx, ecx
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x10111fb0
movaps xmm3, xmmword [0x10201400]
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x10201840]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x10201840]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
psrad xmm2, 5
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x10201490]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x10201550]
movd xmm0, eax
xorps xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x10111fe7
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x14], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 4
jl 0x10111fb0
push 0
push 0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x1c]
call fcn.10173030
test al, al
je 0x101121b8
mov eax, dword [0x1022c758]
mov ecx, dword [0x1022ccc8]
mov dword [esp + 0x18], ecx
lea eax, [eax + eax*2]
mov esi, dword [ecx + 0x3aac]
shl eax, 3
add esi, eax
mov dword [esp + 0x20], eax
cmp dword [esi + 0x14], 0xf
jbe 0x10112029
mov esi, dword [esi]
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10112030
sub ecx, edx
mov edx, 0xfde9
push ecx
push esi
lea ecx, [esp + 0x88]
call fcn.100040e0
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xd8]
add eax, 0x3a94
push eax
call fcn.100215e0
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0xdc]
call fcn.100042f0
cmp dword [esp + 0xec], 7
lea eax, [esp + 0xd8]
cmova eax, dword [esp + 0xd8]
push eax
call fcn.101a0661
lea ecx, [esp + 0xd8]
call fcn.10002350
lea ecx, [esp + 0x80]
call fcn.10002350
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x3aac]
add esi, dword [esp + 0x20]
mov ecx, dword [eax + 0x3ab0]
mov dword [esp + 0x20], esi
add esi, 0x18
mov dword [esp + 0x30], ecx
cmp esi, ecx
je 0x101120f0
mov edi, dword [esp + 0x20]
sub edi, esi
push esi
lea ecx, [esi + edi]
call fcn.100217c0
add esi, 0x18
cmp esi, dword [esp + 0x30]
jne 0x101120d4
mov edi, dword [0x1022e690]
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 0x3ab0]
mov ecx, dword [esi - 4]
cmp ecx, 0xf
jbe 0x1011212e
mov eax, dword [esi - 0x18]
inc ecx
cmp ecx, 0x1000
jb 0x10112120
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10114621
mov eax, edx
push ecx
push eax
call fcn.101a201e
mov eax, dword [esp + 0x20]
add esp, 8
mov ecx, dword [esp + 0x38]
mov dword [esi - 8], 0
mov dword [esi - 4], 0xf
mov byte [esi - 0x18], 0
add dword [eax + 0x3ab0], 0xffffffe8
mov eax, 0x2aaaaaab
mov esi, dword [ecx]
mov ecx, dword [ecx + 4]
sub ecx, esi
imul ecx
mov ecx, dword [0x1022c758]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x10112193
lea eax, [ecx + ecx*2]
lea eax, [esi + eax*8]
cmp eax, 0x1022c394
je 0x101121b3
cmp dword [eax + 0x14], 0xf
mov edx, dword [eax + 0x10]
jbe 0x10112185
mov eax, dword [eax]
push edx
push eax
mov ecx, 0x1022c394
call fcn.10023b60
jmp 0x101121b3
cmp dword [0x1022c3a8], 0xf
mov eax, 0x1022c394
mov dword [0x1022c3a4], 0
cmova eax, dword [0x1022c394]
mov byte [eax], 0
call fcn.10165130
mov esi, dword [0x10456c08]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x101121dc
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x101121ec
mov byte [esi + 0x1b9e], 1
call fcn.10163240
mov byte [esi + 0x1b9e], 0
mov eax, dword [0x10456c08]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x101f7c0c]
xor ecx, ecx
movq xmm0, qword [str.dRKNeOXRZ5D]
mov dword [esp + 0x48], eax
mov ax, word [0x101f7c10]
mov word [esp + 0x4c], ax
mov al, byte [0x101f7c12]
mov byte [esp + 0x4e], al
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x24], 0x41c80000
mov dword [esp + 0x20], 0x437a0000
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x10112356
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x18], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x44]
xorps xmm1, xmm0
movd dword [esp + 0x44], xmm1
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0xf
jl 0x10112356
push 1
push 0
lea edx, [esp + 0x28]
lea ecx, [esp + 0x48]
call fcn.10173030
test al, al
je 0x10112584
movups xmm0, xmmword [str.uXV_S_]
movups xmmword [esp + 0x60], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x10112537
xor ecx, ecx
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x10112500
movaps xmm0, xmmword [0x10201550]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x10201840]
movaps xmm5, xmmword [0x10201490]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
nop dword [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
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ecx + esi]
xorps xmm1, xmm0
movd dword [ecx + esi], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x10112400
jmp 0x10112537
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x60], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0x10
jl 0x10112500
mov esi, dword [0x10456c08]
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.10158960
cmp dword [esi + 0x1c24], eax
jne 0x1011256c
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x1011257b
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.10164e80
movups xmm0, xmmword [str.uXV_S_]
movups xmmword [esp + 0x60], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x10112717
xor ecx, ecx
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x101126e0
movaps xmm0, xmmword [0x10201550]
lea esi, [esp + 0x64]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x10201840]
movaps xmm5, xmmword [0x10201490]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
nop dword [eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x101125e0
jmp 0x10112717
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x60], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0x10
jl 0x101126e0
mov esi, dword [0x10456c08]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x1011273a
mov dword [esi + 0x1c74], 0
jmp 0x10113e98
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.10158960
cmp dword [esi + 0x1c24], eax
jne 0x10112769
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10112778
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.101651c0
test al, al
je 0x10113e98
xor edi, edi
mov dword [esp + 0x14], edi
cmp edi, 1
jne 0x101127bd
mov eax, dword [0x10456c08]
mov ecx, dword [eax + 0x1bec]
cmp byte [ecx + 0xab], 0
jne 0x101127bd
mov ecx, dword [ecx + 0x1dc]
neg ecx
sbb ecx, ecx
add ecx, 6
call fcn.101751f0
mov ecx, dword [edi*4 + 0x101f7e34]
lea eax, [esp + 0x28]
push eax
push 0
xor dl, dl
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
call fcn.10183e50
test al, al
je case.default.0x101127f3
cmp edi, 0xc
ja case.default.0x101127f3
jmp dword [edi*4 + 0x10114628]
mov ecx, dword [0x1022ccc8]
call fcn.1001c430
mov cl, 1
call fcn.1012cdf0
mov eax, dword [0x1022ccd0]
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 [0x104593c0], 1
inc edi
jmp 0x1011278e
push 0x500
lea eax, [esp + 0x10c]
push 0
push eax
call fcn.101a3ad0
add esp, 0xc
lea eax, [esp + 0x10c]
mov ecx, 0x28
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 0x10112860
mov edi, dword [0x1022ccc8]
lea esi, [esp + 0x108]
add edi, 0x2b4
mov ecx, 0x140
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x1022ccc8]
mov dword [eax + 0x290], 0
mov dword [eax + 0x294], 0x101
mov word [eax + 0x298], 0
mov dword [eax + 0x29a], 0x3f800000
mov dword [eax + 0x29e], 0x3f800000
mov dword [eax + 0x2a2], 0x3f800000
mov dword [eax + 0x2a6], 0x3e800000
mov dword [eax + 0x2aa], 0x3f19999a
mov word [eax + 0x2ae], 0
mov byte [eax + 0x2b0], 1
mov eax, dword [0x1022ccc8]
mov edi, dword [esp + 0x14]
inc edi
mov dword [eax + 0xf5c], 0x42
jmp 0x1011278e
mov eax, dword [0x1022ccc8]
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 [0x1022ccc8]
mov word [esp + 0x98], 0
mov byte [esp + 0x9a], 0
mov dword [esp + 0x9c], 0
movups xmm0, xmmword [esp + 0x90]
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
movups xmmword [eax + 0x10], xmm0
mov eax, dword [0x1022ccc8]
movq xmm0, qword [esp + 0xa0]
push 0x268
push 0
movq qword [eax + 0x20], xmm0
lea eax, [esp + 0x110]
push eax
call fcn.101a3ad0
add esp, 0xc
lea ecx, [esp + 0x108]
mov edx, 0xb
call fcn.10027b00
mov edi, dword [0x1022ccc8]
lea esi, [esp + 0x108]
add edi, 0x28
mov ecx, 0x9a
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x1022ccc8]
mov edi, dword [esp + 0x14]
inc edi
mov dword [eax + 0xa50], 0x42
jmp 0x1011278e
push 0x210
lea eax, [esp + 0x10c]
push 0
push eax
call fcn.101a3ad0
add esp, 0xc
lea ecx, [esp + 0x108]
mov edx, 6
call fcn.10027b80
mov edi, dword [0x1022ccc8]
lea esi, [esp + 0x108]
movaps xmm2, xmmword [0x102015e0]
add edi, 0xb38
movaps xmm1, xmmword [0x10201460]
mov ecx, 0x84
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x1022ccc8]
mov edi, dword [esp + 0x14]
mov dword [esp + 0x80], 0
inc edi
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
movups xmm0, xmmword [esp + 0x80]
mov dword [esp + 0xa0], 0x3f19999a
mov dword [esp + 0xa4], 0x10000
movups xmmword [ecx + 0xaf4], xmm0
mov dword [esp + 0xa8], 0x42c80000
mov dword [esp + 0xac], 0
movups xmm0, xmmword [esp + 0xa0]
mov dword [esp + 0xb0], 0x420c0000
movups xmmword [ecx + 0xb04], xmm2
movups xmmword [ecx + 0xb14], xmm0
movups xmmword [esp + 0xb4], xmm1
movups xmm0, xmmword [esp + 0xb0]
psrldq xmm1, 0xc
movups xmmword [ecx + 0xb24], xmm0
movd dword [ecx + 0xb34], xmm1
jmp 0x1011278e
mov ecx, dword [0x1022ccc8]
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 0x1011278e
mov ecx, dword [0x1022ccc8]
inc edi
mov byte [esp + 0x80], 1
mov dword [esp + 0x84], 0x15e
mov byte [esp + 0x88], 0
mov dword [esp + 0x8c], 0x15e
movups xmm0, xmmword [esp + 0x80]
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
movups xmmword [ecx + 0x100c], xmm0
mov byte [esp + 0x98], 0
movq xmm0, qword [esp + 0x90]
mov eax, dword [esp + 0x98]
movq qword [ecx + 0x101c], xmm0
mov dword [ecx + 0x1024], eax
jmp 0x1011278e
mov eax, dword [0x1022ccc8]
inc edi
mov dword [eax + 0xf80], 0x42
jmp 0x1011278e
mov ecx, dword [0x1022ccc8]
xor esi, esi
add ecx, 0x106c
call fcn.10031c30
mov ecx, dword [0x1022ccc8]
add ecx, 0x104c
call fcn.10031c90
inc edi
jmp 0x1011278e
mov ecx, dword [0x1022ccc8]
xor esi, esi
add ecx, 0x102c
call fcn.10023710
inc edi
jmp 0x1011278e
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x10c], xmm0
mov byte [esp + 0x108], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x128], xmm0
mov dword [esp + 0x11c], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x13e], xmm0
mov word [esp + 0x120], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x154], xmm0
mov dword [esp + 0x124], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x16a], xmm0
mov dword [esp + 0x138], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x180], xmm0
mov word [esp + 0x13c], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x196], xmm0
mov dword [esp + 0x14e], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x1ac], xmm0
mov word [esp + 0x152], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x1c7], xmm0
mov dword [esp + 0x164], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x1dd], xmm0
mov word [esp + 0x168], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x1f2], xmm0
mov dword [esp + 0x17a], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x207], xmm0
mov word [esp + 0x17e], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x223], xmm0
mov dword [esp + 0x190], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x239], xmm0
mov word [esp + 0x194], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x24e], xmm0
mov dword [esp + 0x1a6], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x263], xmm0
mov word [esp + 0x1aa], 0
movaps xmm0, xmmword [0x10201780]
mov dword [esp + 0x1bc], 0x3f19999a
mov word [esp + 0x1c0], 0
mov word [esp + 0x1c4], pe_nt_image_headers32
mov byte [esp + 0x1c6], 1
mov dword [esp + 0x1d7], 0x3f19999a
mov word [esp + 0x1db], 0
mov dword [esp + 0x1ed], 0x3f19999a
mov byte [esp + 0x1f1], 0
mov dword [esp + 0x202], 0x3f19999a
mov byte [esp + 0x206], 0
mov dword [esp + 0x217], 0x3f19999a
mov byte [esp + 0x21b], 0
mov dword [esp + 0x21c], 0
mov word [esp + 0x220], pe_nt_image_headers32
mov byte [esp + 0x222], 1
mov dword [esp + 0x233], 0x3f19999a
mov word [esp + 0x237], 0
mov dword [esp + 0x249], 0x3f19999a
mov byte [esp + 0x24d], 0
mov dword [esp + 0x25e], 0x3f19999a
mov byte [esp + 0x262], 0
mov dword [esp + 0x273], 0x3f19999a
mov byte [esp + 0x277], 0
mov dword [esp + 0x278], 0
mov byte [esp + 0x27c], 0
mov dword [esp + 0x280], 0x40a00000
mov dword [esp + 0x284], 0x1010101
mov dword [esp + 0x288], 0x1010101
mov word [esp + 0x28c], pe_nt_image_headers32
mov byte [esp + 0x290], 0
movups xmmword [esp + 0x294], xmm0
mov dword [esp + 0x2a4], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x2b0], xmm0
mov word [esp + 0x2a8], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x2c6], xmm0
mov dword [esp + 0x2ac], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x2dc], xmm0
mov dword [esp + 0x2c0], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x2f2], xmm0
mov word [esp + 0x2c4], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x308], xmm0
mov dword [esp + 0x2d6], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x31e], xmm0
mov word [esp + 0x2da], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x334], xmm0
mov dword [esp + 0x2ec], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x34f], xmm0
mov word [esp + 0x2f0], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x365], xmm0
mov dword [esp + 0x302], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x37a], xmm0
mov word [esp + 0x306], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x38f], xmm0
mov dword [esp + 0x318], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x3ab], xmm0
mov word [esp + 0x31c], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x3c1], xmm0
mov dword [esp + 0x32e], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x3d6], xmm0
mov word [esp + 0x332], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x3eb], xmm0
mov dword [esp + 0x344], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x41c], xmm0
mov word [esp + 0x348], 0
movaps xmm0, xmmword [0x10201780]
mov word [esp + 0x34c], pe_nt_image_headers32
mov byte [esp + 0x34e], 1
mov dword [esp + 0x35f], 0x3f19999a
mov word [esp + 0x363], 0
mov dword [esp + 0x375], 0x3f19999a
mov byte [esp + 0x379], 0
mov dword [esp + 0x38a], 0x3f19999a
mov byte [esp + 0x38e], 0
mov dword [esp + 0x39f], 0x3f19999a
mov byte [esp + 0x3a3], 0
mov dword [esp + 0x3a4], 0
mov word [esp + 0x3a8], pe_nt_image_headers32
mov byte [esp + 0x3aa], 1
mov dword [esp + 0x3bb], 0x3f19999a
mov word [esp + 0x3bf], 0
mov dword [esp + 0x3d1], 0x3f19999a
mov byte [esp + 0x3d5], 0
mov dword [esp + 0x3e6], 0x3f19999a
mov byte [esp + 0x3ea], 0
mov dword [esp + 0x3fb], 0x3f19999a
mov byte [esp + 0x3ff], 0
mov dword [esp + 0x400], 0
mov byte [esp + 0x404], 0
mov dword [esp + 0x408], 0x40a00000
mov dword [esp + 0x40c], 0x1010101
mov dword [esp + 0x410], 0x1010101
mov word [esp + 0x414], 0x100
mov byte [esp + 0x418], 0
mov dword [esp + 0x42c], 0x3f19999a
mov word [esp + 0x430], 0
mov dword [esp + 0x434], 0
movups xmmword [esp + 0x438], xmm0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x44e], xmm0
mov dword [esp + 0x448], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x464], xmm0
mov word [esp + 0x44c], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x47a], xmm0
mov dword [esp + 0x45e], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x490], xmm0
mov word [esp + 0x462], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x4a6], xmm0
mov dword [esp + 0x474], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x4bc], xmm0
mov word [esp + 0x478], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x4d7], xmm0
mov dword [esp + 0x48a], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x4ed], xmm0
mov word [esp + 0x48e], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x502], xmm0
mov dword [esp + 0x4a0], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x517], xmm0
mov word [esp + 0x4a4], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x533], xmm0
mov dword [esp + 0x4b6], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x549], xmm0
mov word [esp + 0x4ba], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x55e], xmm0
mov dword [esp + 0x4cc], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x573], xmm0
mov word [esp + 0x4d0], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x5a4], xmm0
mov word [esp + 0x4d4], 0x100
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x5c0], xmm0
mov byte [esp + 0x4d6], 1
movaps xmm0, xmmword [0x10201780]
mov dword [esp + 0x4e7], 0x3f19999a
mov word [esp + 0x4eb], 0
mov dword [esp + 0x4fd], 0x3f19999a
mov byte [esp + 0x501], 0
mov dword [esp + 0x512], 0x3f19999a
mov byte [esp + 0x516], 0
mov dword [esp + 0x527], 0x3f19999a
mov byte [esp + 0x52b], 0
mov dword [esp + 0x52c], 0
mov word [esp + 0x530], 0x100
mov byte [esp + 0x532], 1
mov dword [esp + 0x543], 0x3f19999a
mov word [esp + 0x547], 0
mov dword [esp + 0x559], 0x3f19999a
mov byte [esp + 0x55d], 0
mov dword [esp + 0x56e], 0x3f19999a
mov byte [esp + 0x572], 0
mov dword [esp + 0x583], 0x3f19999a
mov byte [esp + 0x587], 0
mov dword [esp + 0x588], 0
mov byte [esp + 0x58c], 0
mov dword [esp + 0x590], 0x40a00000
mov dword [esp + 0x594], 0x1010101
mov dword [esp + 0x598], 0x1010101
mov word [esp + 0x59c], 0x100
mov byte [esp + 0x5a0], 0
mov dword [esp + 0x5b4], 0x3f19999a
mov word [esp + 0x5b8], 0
mov dword [esp + 0x5bc], 0
mov dword [esp + 0x5d0], 0x3f19999a
mov word [esp + 0x5d4], 0
movups xmmword [esp + 0x5d6], xmm0
movaps xmm0, xmmword [0x10201780]
lea esi, [esp + 0x108]
mov edi, dword [0x1022ccc8]
mov ecx, 0x164
movups xmmword [esp + 0x5ec], xmm0
add edi, 0x108c
mov dword [esp + 0x5e6], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x604], xmm0
mov word [esp + 0x5ea], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x620], xmm0
mov dword [esp + 0x5fc], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x63c], xmm0
mov word [esp + 0x600], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x652], xmm0
mov dword [esp + 0x614], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x668], xmm0
mov word [esp + 0x618], 0
movaps xmm0, xmmword [0x10201780]
mov byte [esp + 0x61c], 0
mov dword [esp + 0x630], 0x3f19999a
mov word [esp + 0x634], 0
mov dword [esp + 0x638], 0
mov dword [esp + 0x64c], 0x3f19999a
mov word [esp + 0x650], 0
mov dword [esp + 0x662], 0x3f19999a
mov word [esp + 0x666], 0
mov dword [esp + 0x678], 0x3f19999a
mov word [esp + 0x67c], 0
movups xmmword [esp + 0x680], xmm0
mov dword [esp + 0x690], 0x3f19999a
mov word [esp + 0x694], 0
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x14]
inc edi
jmp 0x1011278e
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x109], xmm0
push 1
movaps xmm0, xmmword [0x10201780]
sub esp, 0x18
movups xmmword [esp + 0x144], xmm0
mov byte [esp + 0x124], 0
mov ecx, esp
xorps xmm0, xmm0
mov dword [esp + 0x135], 0x3f19999a
movups xmmword [esp + 0x164], xmm0
mov word [esp + 0x139], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x17d], xmm0
mov byte [esp + 0x13b], 0
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x193], xmm0
mov dword [esp + 0x13c], 0xfa
movaps xmm0, xmmword [0x10201650]
movups xmmword [esp + 0x1ac], xmm0
mov dword [esp + 0x140], 2
xorps xmm0, xmm0
mov dword [esp + 0x154], 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 + 0x1ec]
mov dword [esp + 0x158], 0
mov dword [esp + 0x15c], 0xfa
mov dword [esp + 0x160], 2
mov dword [esp + 0x174], 0
mov dword [esp + 0x178], 0xf
mov byte [esp + 0x164], 0
mov byte [esp + 0x17c], 0
mov dword [esp + 0x18d], 0x3f19999a
mov word [esp + 0x191], 0
mov dword [esp + 0x1a3], 0x3f19999a
mov dword [esp + 0x1a7], 0
mov byte [esp + 0x1ab], 0
mov dword [esp + 0x1bc], 0x3f800000
mov dword [esp + 0x1c0], 0x3f800000
mov dword [esp + 0x1c4], 0x3f19999a
mov dword [esp + 0x1c8], 0
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
mov dword [esp + 0x1d4], 0
mov word [esp + 0x1d8], 0
mov byte [esp + 0x1da], 0
mov byte [esp + 0x1dc], 0
mov dword [esp + 0x1e0], 0
mov dword [esp + 0x1e4], 0
mov word [esp + 0x1e8], 0
call fcn.100cf610
push 1
sub esp, 0x18
mov byte [esp + 0x210], 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 [0x101d8774]
mov word [ecx + 4], ax
mov al, byte [0x101d8776]
mov byte [ecx + 6], al
mov byte [ecx + 7], 0
lea ecx, [esp + 0x214]
call fcn.100cf610
xorps xmm0, xmm0
mov dword [esp + 0x21c], 2
movups xmmword [esp + 0x224], xmm0
mov byte [esp + 0x220], 0
movaps xmm0, xmmword [0x102017a0]
mov byte [esp + 0x234], 0
mov word [esp + 0x238], 0
movups xmmword [esp + 0x23c], xmm0
movaps xmm0, xmmword [0x10201630]
lea eax, [esp + 0x29c]
push pe_nt_image_headers32
movups xmmword [esp + 0x264], xmm0
push 0
movaps xmm0, xmmword [0x10201660]
push eax
mov dword [esp + 0x258], 0x3f800000
mov dword [esp + 0x25c], 0
mov dword [esp + 0x260], 0
mov dword [esp + 0x264], 0x3f19999a
mov dword [esp + 0x268], 0
mov dword [esp + 0x27c], 0
movups xmmword [esp + 0x280], xmm0
mov dword [esp + 0x290], 0x3f000000
mov dword [esp + 0x294], 0x3f19999a
mov dword [esp + 0x298], 0
mov dword [esp + 0x29c], 0x40800000
mov dword [esp + 0x2a0], 0
mov dword [esp + 0x2a4], 0
call fcn.101a3ad0
movaps xmm0, xmmword [0x10201760]
add esp, 0xc
movups xmmword [esp + 0x39d], xmm0
xor eax, eax
mov byte [esp + 0x39c], 0
movaps xmm0, xmmword [0x102013a0]
movups xmmword [esp + 0x3c0], xmm0
mov dword [esp + 0x3ad], 0x3f19999a
movaps xmm0, xmmword [0x102015a0]
movups xmmword [esp + 0x3da], xmm0
mov word [esp + 0x3b1], 0
movaps xmm0, xmmword [0x102015c0]
movups xmmword [esp + 0x3f1], xmm0
mov dword [esp + 0x3b4], 0x3f0ccccd
movaps xmm0, xmmword [0x102015d0]
movups xmmword [esp + 0x407], xmm0
mov dword [esp + 0x3b8], 0
xorps xmm0, xmm0
mov dword [esp + 0x3bc], 0
movups xmmword [esp + 0x428], xmm0
mov dword [esp + 0x3d0], 0x3e99999a
movaps xmm0, xmmword [0x10201640]
movups xmmword [esp + 0x438], xmm0
mov dword [esp + 0x3d4], 0x3f19999a
movaps xmm0, xmmword [0x102015f0]
movups xmmword [esp + 0x44e], xmm0
mov word [esp + 0x3d8], 0
movaps xmm0, xmmword [0x10201600]
movups xmmword [esp + 0x460], xmm0
mov dword [esp + 0x3ea], 0x3f19999a
movaps xmm0, xmmword [0x10201630]
movups xmmword [esp + 0x472], xmm0
mov word [esp + 0x3ee], 0
movaps xmm0, xmmword [0x102015b0]
movups xmmword [esp + 0x48d], xmm0
mov byte [esp + 0x3f0], 1
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x4a2], xmm0
mov dword [esp + 0x401], 0x3f19999a
movaps xmm0, xmmword [0x10201780]
mov word [esp + 0x405], 0
mov dword [esp + 0x417], 0x3f19999a
mov dword [esp + 0x41b], 0
mov word [esp + 0x41f], ax
mov dword [esp + 0x424], eax
mov dword [esp + 0x448], 0x3f19999a
mov word [esp + 0x44c], ax
mov word [esp + 0x45e], ax
mov word [esp + 0x470], ax
mov word [esp + 0x482], ax
mov dword [esp + 0x484], 0x64
mov dword [esp + 0x488], 0x64
mov byte [esp + 0x48c], al
mov dword [esp + 0x49d], 0x3f19999a
mov byte [esp + 0x4a1], al
mov dword [esp + 0x4b2], 0x3f19999a
mov byte [esp + 0x4b6], al
movups xmmword [esp + 0x4b7], xmm0
mov dword [esp + 0x4c7], 0x3f19999a
mov word [esp + 0x4cb], ax
movaps xmm0, xmmword [0x102015b0]
movups xmmword [esp + 0x4cd], xmm0
push 1
movaps xmm0, xmmword [0x10201780]
sub esp, 0x18
movups xmmword [esp + 0x4fe], xmm0
mov ecx, esp
mov byte [esp + 0x4fd], al
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x513], xmm0
mov byte [esp + 0x512], al
movaps xmm0, xmmword [0x10201590]
movups xmmword [esp + 0x528], xmm0
mov byte [esp + 0x527], al
movaps xmm0, xmmword [0x10201630]
movups xmmword [esp + 0x53f], xmm0
mov word [esp + 0x53c], ax
xorps xmm0, xmm0
mov byte [esp + 0x53e], 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 + 0x54f], ax
mov byte [esp + 0x551], al
mov dword [esp + 0x554], eax
mov dword [esp + 0x558], eax
mov dword [esp + 0x55c], eax
mov byte [esp + 0x560], al
movzx eax, word [0x101d8764]
mov word [ecx + 8], ax
mov al, byte [0x101d8766]
mov byte [ecx + 0xa], al
mov byte [ecx + 0xb], 0
lea ecx, [esp + 0x564]
mov dword [esp + 0x4f9], 0x3f19999a
mov dword [esp + 0x50e], 0x3f19999a
mov dword [esp + 0x523], 0x3f19999a
mov dword [esp + 0x538], 0x3f19999a
call fcn.100cf610
movaps xmm0, xmmword [0x10201770]
xor eax, eax
mov ecx, dword [0x1022ccc8]
movups xmmword [esp + 0x574], xmm0
mov word [esp + 0x5ce], ax
movaps xmm0, xmmword [0x10201780]
movups xmmword [esp + 0x590], xmm0
mov word [esp + 0x5e8], ax
movaps xmm0, xmmword [0x10201740]
movups xmmword [esp + 0x5b9], xmm0
mov byte [esp + 0x5ea], al
movaps xmm0, xmmword [0x10201790]
movups xmmword [esp + 0x5d0], xmm0
mov byte [esp + 0x5fb], al
movaps xmm0, xmmword [0x10201610]
movups xmmword [esp + 0x5eb], xmm0
mov byte [esp + 0x60c], al
movaps xmm0, xmmword [0x10201620]
mov word [esp + 0x60d], ax
mov byte [esp + 0x60f], al
lea eax, [esp + 0x108]
mov dword [esp + 0x56c], 0x64
mov word [esp + 0x570], 1
mov byte [esp + 0x572], 0
mov dword [esp + 0x584], 0x3f800000
mov dword [esp + 0x588], 0x3f19999a
mov dword [esp + 0x58c], 0
mov dword [esp + 0x5a0], 0x3f19999a
mov word [esp + 0x5a4], 0x100
mov dword [esp + 0x5a8], 0xa
mov dword [esp + 0x5ac], 0x32
mov dword [esp + 0x5b0], 0
mov dword [esp + 0x5b4], 0
mov byte [esp + 0x5b8], 0
mov dword [esp + 0x5c9], 0x3f19999a
mov byte [esp + 0x5cd], 0
mov dword [esp + 0x5e0], 0x3f800000
mov dword [esp + 0x5e4], 0x3f19999a
movups xmmword [esp + 0x5fc], xmm0
push eax
lea ecx, [ecx + 0x161c]
call fcn.1001db90
lea ecx, [esp + 0x108]
call fcn.10002a80
inc edi
jmp 0x1011278e
push 0x1950
lea eax, [esp + 0x10c]
push 0
push eax
call fcn.101a3ad0
add esp, 0xc
lea ecx, [esp + 0x108]
mov edx, 0x24
call fcn.10027c30
push 0x1950
lea eax, [esp + 0x10c]
push eax
mov eax, dword [0x1022ccc8]
add eax, 0x1b24
push eax
call fcn.101a3550
mov eax, dword [0x1022ccd0]
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 [0x104593c0], 1
inc edi
jmp 0x1011278e
inc edi
mov dword [esp + 0x14], edi
cmp edi, 0xd
jl 0x10112792
jmp 0x10113e52
lea ecx, [esp + 0x108]
call fcn.10006740
mov ecx, dword [0x1022ccc8]
lea eax, [esp + 0x108]
push eax
lea ecx, [ecx + 0x3474]
call fcn.1001e400
lea ecx, [esp + 0x108]
call fcn.10002bd0
mov cl, 1
call fcn.1012cdf0
mov esi, dword [0x10456c08]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10113e76
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10113e86
mov byte [esi + 0x1b9e], 1
call fcn.10163240
mov byte [esi + 0x1b9e], 0
mov edi, dword [0x1022e690]
mov ecx, dword [0x10456c08]
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.100cec90
mov eax, dword [0x101f68c0]
xor ecx, ecx
movq xmm0, qword [0x101f68b8]
mov esi, dword [0x1022ccc8]
mov dword [esp + 0x48], eax
mov al, byte [0x101f68c4]
movq qword [esp + 0x40], xmm0
mov byte [esp + 0x4c], al
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x10114010
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x18], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f68b8]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0xd
jl 0x10114010
push 0
push 0
push 0
push 0
lea eax, [esi + 0x3a3c]
push eax
lea eax, [esi + 0x3a40]
push eax
lea eax, [esi + 0x3a38]
push eax
lea edx, [esi + 0x3a2c]
lea ecx, [esp + 0x5c]
call fcn.100c3320
movups xmm0, xmmword [str.dXMWXjP0a]
mov ax, word [0x101f701c]
xor ecx, ecx
mov word [esp + 0xa8], ax
mov dword [esp + 0x18], ecx
movups xmmword [esp + 0x80], xmm0
movups xmm0, xmmword [0x101f7004]
movups xmmword [esp + 0x90], xmm0
movq xmm0, qword [0x101f7014]
movq qword [esp + 0xa0], xmm0
cmp edi, 2
jl 0x10114220
movaps xmm0, xmmword [0x10201550]
lea esi, [esp + 0x84]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x10201840]
movaps xmm5, xmmword [0x10201490]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
nop dword [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
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x80]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x80], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x28
jl 0x101140f0
mov dword [esp + 0x18], ecx
cmp ecx, 0x2a
jl 0x10114220
mov eax, dword [0x101f7908]
mov edx, dword [0x1022ccc8]
mov dword [esp + 0x48], eax
add edx, 0x3a44
mov al, byte [0x101f790c]
mov dword [esp + 0x14], edx
mov byte [esp + 0x4c], al
jmp 0x1011427a
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x80], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0x2a
jl 0x10114220
mov eax, dword [0x101f7908]
mov dword [esp + 0x48], eax
mov al, byte [0x101f790c]
mov byte [esp + 0x4c], al
mov eax, dword [0x1022ccc8]
add eax, 0x3a44
mov dword [esp + 0x14], eax
movq xmm0, qword [0x101f7900]
xor ecx, ecx
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x101143a0
movaps xmm2, xmmword [0x10201400]
mov ecx, 8
movaps xmm4, xmmword [0x10201840]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
mov eax, dword [0x10201550]
psrad xmm1, 5
mov dword [esp + 0x18], ecx
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x10201440]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f7900]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x40], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x10201490]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
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, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x40], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0xd
jl 0x101143a0
xor esi, esi
lea edx, [esp + 0x80]
cmp byte [esp + 0x80], 0
je 0x10114413
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], eax
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x20], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10114400
sub ecx, dword [esp + 0x20]
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x101143f2
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x80]
push 1
push 0xffffffffffffffff
push esi
push eax
push 0x10176310
lea ecx, [esp + 0x54]
call fcn.10176370
mov esi, dword [0x1022ccc8]
movups xmm0, xmmword [str.aV_UL]
mov eax, dword [0x101f8104]
add esi, 0x3a48
cmp byte [0x101f8107], 0
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0x70], eax
je 0x101145dd
xor ecx, ecx
mov dword [esp + 0x18], ecx
cmp edi, 2
jl 0x101145a6
movaps xmm0, xmmword [0x10201550]
lea edi, [esp + 0x64]
movaps xmm4, xmmword [0x10201400]
movaps xmm3, xmmword [0x10201840]
movaps xmm5, xmmword [0x10201490]
movaps xmmword [esp + 0x50], xmm0
mov edx, dword [esp + 0x50]
nop dword [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
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 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
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x10201520]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ecx + edi]
xorps xmm1, xmm0
movd dword [ecx + edi], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x101144a0
mov dword [esp + 0x18], ecx
cmp ecx, 0x14
jge 0x101145dd
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
shl cl, 3
sub cl, al
mov al, byte [esp + 0x18]
shl cl, 3
sub al, cl
mov ecx, dword [esp + 0x18]
add al, 0x36
xor byte [esp + ecx + 0x60], al
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0x14
jl 0x101145a6
push 0
push 0x101f60ac
lea eax, [esp + 0x28]
mov dword [esp + 0x38], 0
push eax
lea eax, [esp + 0x3c]
mov dword [esp + 0x2c], 0x42c80000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x74]
call fcn.101780f0
mov ecx, dword [esp + 0x1a5c]
pop edi
pop esi
xor ecx, esp
call fcn.101a1d25
mov esp, ebp
pop ebp
ret
call fcn.101a7156
nop
cli
daa
adc dword [eax], edx
xor ch, byte [eax]
adc dword [eax], edx
xor dword [ecx], ebp
adc dword [eax], edx
sub dl, byte cs:[ecx]
adc byte [edx], bh
sub edx, dword [ecx]
adc byte [ebp + 0x2b], dh
adc dword [eax], edx
sub edx, dword [ecx]
adc byte [edi], al
sub al, 0x11
adc byte [ecx], dh
sub al, 0x11
adc byte [edx + 0x2c], cl
adc dword [eax], edx
sbb byte [esi], dh
adc dword [eax], edx
pushfd
cmp eax, 1041895441
adc dword [eax], edx
int3