Function at 0x100d3880
Capabilities:
Check os version
Encode data using xor
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xa8
mov eax, dword [0x1020a0c0]
xor eax, esp
mov dword [esp + 0xa4], eax
push esi
push edi
xor edi, edi
mov dword [esp + 0x30], edi
mov eax, dword fs:[0x2c]
mov ecx, dword [0x102296ac]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x104e5810]
cmp eax, dword [ecx + 4]
jle 0x100d38ee
push 0x104e5810
call fcn.1019d7b4
add esp, 4
cmp dword [0x104e5810], 0xffffffff
jne 0x100d38ee
push 0x101c9c00
call fcn.1019d442
add esp, 4
push 0x104e5810
call fcn.1019d76a
add esp, 4
cmp byte [0x101f47ef], 0
mov esi, 5
mov eax, dword [0x101f47ec]
mov ecx, dword [0x102296a0]
mov byte [esp + 0x13], 0
mov dword [esp + 0x14], eax
je 0x100d39e4
xor edx, edx
mov dword [esp + 0xc], edx
cmp ecx, 2
jl 0x100d39b0
movaps xmm3, xmmword [0x101ff6c0]
mov ecx, 0x1f
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101ffc10]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x101ffc10]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
movd xmm0, esi
psrad xmm2, xmm0
movd xmm0, ecx
movaps xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x101ff730]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101ff810]
movd xmm0, eax
pxor xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x100d39e4
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0xc]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0xc]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 4
jl 0x100d39b0
mov eax, dword [0x104e2068]
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]
lea ecx, [esp + 0x18]
call fcn.10152b90
mov ecx, dword [esi]
mov dword [esp + 0xc], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x100d3a3a
inc ecx
test eax, eax
je 0x100d3a28
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x100d3a2d
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100be400
mov ecx, dword [esi]
mov eax, dword [esi + 8]
movups xmm0, xmmword [0x101f4ec4]
mov edx, dword [esp + 0xc]
mov dword [eax + ecx*4], edx
inc dword [esi]
mov esi, dword [0x10227c40]
movups xmmword [esp + 0x30], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100d3bf5
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0xc], edx
jl 0x100d3bc1
movaps xmm0, xmmword [0x101ff810]
mov eax, 5
movaps xmm4, xmmword [0x101ff6c0]
xor ecx, ecx
movaps xmm3, xmmword [0x101ffc10]
movaps xmm6, xmmword [0x101ff730]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x20], xmm0
mov edx, dword [esp + 0x20]
movd xmm7, eax
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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x30]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x30], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x34]
pxor xmm1, xmm0
movd dword [esp + ecx + 0x34], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100d3ac0
jmp 0x100d3bf5
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0xc]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0xc]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 0x10
jl 0x100d3bc1
lea edx, [esi + 0x288]
lea ecx, [esp + 0x30]
call fcn.1016fb20
movss xmm1, dword [0x101ff52c]
xorps xmm0, xmm0
call fcn.1015ee50
mov eax, dword [0x101f5260]
xor edx, edx
mov esi, dword [0x10227c40]
mov dword [esp + 0x30], eax
mov ax, word [0x101f5264]
mov word [esp + 0x34], ax
mov al, byte [0x101f5266]
mov dword [esp + 0x14], 0x42c80000
mov dword [esp + 0x18], edi
mov byte [esp + 0x36], al
mov dword [esp + 0xc], edx
nop dword [eax]
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 7
jl 0x100d3c50
push ecx
lea eax, [esp + 0x18]
push eax
lea edx, [esi + 0xeb0]
lea ecx, [esp + 0x38]
call fcn.100c0280
mov esi, dword [0x104e2068]
xorps xmm0, xmm0
movss xmm1, dword [0x101ff52c]
mov eax, dword [esi + 0x1bec]
dec dword [eax + 0xe0]
call fcn.1015ee50
mov ecx, dword [esi + 0x1bec]
cmp byte [ecx + 0xab], 0
jne 0x100d3cd7
mov ecx, dword [ecx + 0x1dc]
neg ecx
sbb ecx, ecx
add ecx, 6
call fcn.10170450
mov esi, dword [0x104e2068]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov eax, dword [esi + 0x1bec]
mov eax, dword [eax + 0x1d0]
test eax, eax
je 0x100d3d05
cmp dword [eax + 0x10], 2
jne 0x100d3d00
cmp dword [eax + 4], 1
je 0x100d3d13
call fcn.100ca570
push 1
mov edx, 2
xor ecx, ecx
call fcn.100c9c60
movss xmm0, dword [0x101ff3c8]
call fcn.1015ef10
xor ecx, ecx
call fcn.1015eaa0
mov ecx, dword [0x104e2068]
xor edx, edx
mov dword [esp + 0x14], edx
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov eax, dword [ecx + 0x1bec]
movss xmm1, dword [eax + 0x10]
subss xmm1, dword [eax + 0x74]
movss xmm0, dword [eax + 0x104]
addss xmm1, dword [0x101ff2d4]
maxss xmm0, xmm1
movss dword [eax + 0xec], xmm1
movss dword [eax + 0x104], xmm0
cmp dword [0x102296a0], 2
movups xmm0, xmmword [str.sYYUYU:kUNJP_2B_v__0_H]
mov al, byte [0x101f4d68]
mov byte [esp + 0x90], al
movups xmmword [esp + 0x70], xmm0
movups xmm0, xmmword [0x101f4d58]
movups xmmword [esp + 0x80], xmm0
jl 0x100d3ef0
movaps xmm0, xmmword [0x101ff810]
mov eax, 5
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffc10]
movaps xmm6, xmmword [0x101ff730]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
movd xmm7, eax
nop
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x70]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x70], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x74]
pxor xmm1, xmm0
movd dword [esp + edx + 0x74], xmm1
add edx, 8
cmp edx, 0x20
jl 0x100d3de0
mov dword [esp + 0x14], edx
cmp edx, 0x21
jge 0x100d3f24
nop dword [eax + eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x70], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x21
jl 0x100d3ef0
xor esi, esi
lea edx, [esp + 0x70]
cmp byte [esp + 0x70], 0
je 0x100d3f53
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0xc], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100d3f40
sub ecx, dword [esp + 0xc]
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x100d3f31
push 0
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x7c]
mov edx, 0x104e1ed0
push eax
push 0x10171580
mov ecx, 0x101d6e4f
call fcn.101715e0
mov eax, dword [0x104e2068]
xorps xmm0, xmm0
movss xmm1, dword [0x101ff52c]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
call fcn.1015ee50
mov ecx, 1
call fcn.1015eaa0
mov eax, dword [0x104e1ed0]
cmp eax, 4
ja case.default.0x100d3faa
jmp dword [eax*4 + 0x100d6628]
mov ecx, dword [0x104e2068]
mov dword [0x104e1ecc], edi
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov esi, dword [ecx + 0x1bec]
cmp byte [esi + 0xab], 0
jne case.default.0x100d3faa
movss xmm0, dword [esi + 0x118]
xorps xmm2, xmm2
comiss xmm0, xmm2
mov eax, dword [esi + 0x1dc]
mov dword [esp + 0xc], eax
mov dword [esi + 0x1dc], 1
mov dword [esp + 0x30], edi
jbe 0x100d400b
mov dword [esp + 0x34], edi
jmp 0x100d4019
movss xmm0, dword [ecx + 0x1988]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [0x101ff52c]
lea ecx, [esp + 0x30]
call fcn.1015eb50
mov eax, dword [esp + 0xc]
mov dword [esi + 0x1dc], eax
jmp case.default.0x100d3faa
push 0
push 0xffffffffffffffff
push 0xb
push 0
push 0x100d6640
mov edx, 0x104e1ec8
mov ecx, 0x101d6e4f
call fcn.101715e0
mov eax, dword [0x104e1ec8]
mov ecx, 0x23
test eax, eax
cmovne ecx, eax
mov dword [0x104e1ecc], ecx
jmp case.default.0x100d3faa
push 0
push 0xffffffffffffffff
push 7
push 0
push 0x100d6750
mov edx, 0x104e1ef0
mov ecx, 0x101d6e4f
call fcn.101715e0
mov eax, dword [0x104e1ef0]
test eax, eax
je 0x100d40a1
add eax, 0xa
mov dword [0x104e1ecc], eax
jmp case.default.0x100d3faa
mov eax, 0x24
mov dword [0x104e1ecc], eax
jmp case.default.0x100d3faa
push 0
push 0xffffffffffffffff
push 8
push 0
push 0x100d6870
mov edx, 0x104e1ebc
mov ecx, 0x101d6e4f
call fcn.101715e0
mov eax, dword [0x104e1ebc]
test eax, eax
je 0x100d40dc
add eax, 0x10
mov dword [0x104e1ecc], eax
jmp case.default.0x100d3faa
mov eax, 0x25
mov dword [0x104e1ecc], eax
jmp case.default.0x100d3faa
push 0
push 0xffffffffffffffff
push 0xc
push 0
push 0x100d6990
mov edx, 0x104e1e9c
mov ecx, 0x101d6e4f
call fcn.101715e0
mov eax, dword [0x104e1e9c]
test eax, eax
je 0x100d4117
add eax, 0x17
mov dword [0x104e1ecc], eax
jmp case.default.0x100d3faa
mov dword [0x104e1ecc], 0x26
mov ecx, dword [0x104e2068]
movss xmm0, dword [0x101ff428]
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.1015ef10
mov ecx, dword [0x10227c40]
mov esi, dword [0x101f5734]
add ecx, 0x289
cmp byte [0x101f5737], 0
mov dword [esp + 0x14], ecx
mov ecx, dword [0x101f5730]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], esi
je 0x100d42e6
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0xc], edx
jl 0x100d42b2
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
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
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x30], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, esi
pxor xmm1, xmm0
movd dword [esp + 0x34], xmm1
jmp 0x100d42e6
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0xc]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0xc]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 8
jl 0x100d42b2
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x30]
call fcn.1016fb20
mov eax, dword [0x101f5c20]
movq xmm0, qword [str.rG_RV_VB]
mov esi, dword [0x10227c40]
mov dword [esp + 0x28], eax
mov ax, word [0x101f5c24]
movq qword [esp + 0x20], xmm0
mov word [esp + 0x2c], ax
test ah, ah
je 0x100d4484
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0x14], edx
jl 0x100d4450
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.rG_RV_VB]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
nop dword [eax + eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xe
jl 0x100d4450
lea edx, [esi + 0x28b]
lea ecx, [esp + 0x20]
call fcn.1016fb20
mov eax, dword [0x101f6104]
xor edx, edx
mov esi, dword [0x10227c40]
movq xmm0, qword [0x101f60fc]
add esi, 0x28c
cmp dword [0x102296a0], 2
mov dword [esp + 0x28], eax
mov al, byte [0x101f6108]
mov byte [esp + 0x2c], al
movq qword [esp + 0x20], xmm0
mov dword [esp + 0x14], edx
jl 0x100d45f0
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f60fc]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
nop word [eax + eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xd
jl 0x100d45f0
mov edx, esi
lea ecx, [esp + 0x20]
call fcn.1016fb20
cmp byte [0x101f4f17], 0
movq xmm0, qword [str.gVYG__]
mov eax, dword [0x101f4f14]
mov esi, dword [0x10227c40]
movq qword [esp + 0x20], xmm0
mov dword [esp + 0x28], eax
je 0x100d47b5
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0x14], edx
jl 0x100d4781
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.gVYG__]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xc
jl 0x100d4781
lea edx, [esi + 0x28d]
lea ecx, [esp + 0x20]
call fcn.1016fb20
mov eax, dword [0x101f5838]
movq xmm0, qword [0x101f5830]
mov esi, dword [0x10227c40]
mov dword [esp + 0x28], eax
mov ax, word [0x101f583c]
movq qword [esp + 0x20], xmm0
mov word [esp + 0x2c], ax
test ah, ah
je 0x100d4954
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0x14], edx
jl 0x100d4920
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f5830]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
nop dword [eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xe
jl 0x100d4920
lea edx, [esi + 0x28e]
lea ecx, [esp + 0x20]
call fcn.1016fb20
mov eax, dword [0x101f5ba4]
movq xmm0, qword [str.__DXMReOPQT_A]
mov esi, dword [0x10227c40]
mov dword [esp + 0x28], eax
mov ax, word [0x101f5ba8]
movq qword [esp + 0x20], xmm0
mov word [esp + 0x2c], ax
test ah, ah
je 0x100d4af4
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0x14], edx
jl 0x100d4ac0
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.__DXMReOPQT_A]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
nop dword [eax + eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xe
jl 0x100d4ac0
lea edx, [esi + 0x28f]
lea ecx, [esp + 0x20]
call fcn.1016fb20
mov esi, dword [0x10227c40]
movq xmm0, qword [0x101f5424]
add esi, 0x292
mov al, byte [0x101f542c]
xor edx, edx
movq qword [esp + 0x30], xmm0
mov byte [esp + 0x38], al
mov dword [esp + 0xc], edx
nop dword [eax]
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 9
jl 0x100d4b30
xorps xmm0, xmm0
mov dword [esp + 0x80], edi
lea ecx, [esp + 0x30]
movaps xmmword [esp + 0x70], xmm0
mov dword [esp + 0x84], edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100d4b76
sub ecx, edx
lea eax, [esp + 0x30]
push ecx
push eax
lea ecx, [esp + 0x78]
call fcn.10027bd0
cmp dword [esp + 0x84], 0x10
lea eax, [esi + 0x16]
push eax
push 0
push 0
lea eax, [esi + 0x15]
mov edx, esi
push eax
lea eax, [esi + 0x10]
push eax
lea eax, [esi + 0x14]
push eax
lea eax, [esi + 0xc]
lea ecx, [esp + 0x88]
cmovae ecx, dword [esp + 0x88]
push eax
call fcn.100be870
mov ecx, dword [esp + 0x84]
cmp ecx, 0x10
jb 0x100d4bfd
mov edx, dword [esp + 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100d4bf3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100d6620
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov ax, word [0x101f64c0]
movq xmm0, qword [0x101f64b8]
mov esi, dword [0x10227c40]
movq qword [esp + 0x30], xmm0
mov word [esp + 0x38], ax
test ah, ah
je 0x100d4c4f
xor edx, edx
mov dword [esp + 0xc], edx
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 0xa
jl 0x100d4c26
lea edx, [esi + 0x290]
lea ecx, [esp + 0x30]
call fcn.1016fb20
mov ax, word [0x101f61c4]
mov esi, dword [0x10227c40]
movq xmm0, qword [str._G_P_HYSI_]
add esi, 0x291
mov word [esp + 0x38], ax
xor edx, edx
mov al, byte [0x101f61c6]
mov byte [esp + 0x3a], al
movq qword [esp + 0x30], xmm0
mov dword [esp + 0xc], edx
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 0xb
jl 0x100d4c92
mov edx, esi
lea ecx, [esp + 0x30]
call fcn.1016fb20
mov eax, dword [0x10227c40]
cmp byte [eax + 0x291], 0
je 0x100d4da1
movss xmm1, dword [0x101ff52c]
xorps xmm0, xmm0
call fcn.1015ee50
mov eax, dword [0x104e2068]
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.smthsafaf
call fcn.10152b90
mov ecx, dword [esi]
mov dword [esp + 0xc], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x100d4d3f
inc ecx
test eax, eax
je 0x100d4d2d
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x100d4d32
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100be400
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0xc]
push ecx
mov dword [esp + 0x34], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x34]
inc dword [esi]
mov ecx, 0x101d6e4f
mov edx, dword [0x10227c40]
push eax
mov dword [esp + 0x3c], edi
lea edx, [edx + 0xed4]
call fcn.100c0280
mov edx, dword [0x10227c40]
mov ecx, str.Magnet
lea edx, [edx + 0x28a]
call fcn.1016fb20
mov eax, dword [0x104e2068]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x10227c40]
movq xmm0, qword [str.vTULK_XW]
lea esi, [eax + 0xef8]
mov ax, word [0x101f58e0]
movq qword [esp + 0x30], xmm0
mov word [esp + 0x38], ax
test ah, ah
je 0x100d4df9
xor edx, edx
mov dword [esp + 0xc], edx
nop word [eax + eax]
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 0xa
jl 0x100d4dd0
mov edx, esi
lea ecx, [esp + 0x30]
call fcn.1016fb20
mov eax, dword [0x10227c40]
cmp byte [eax + 0xef8], 0
je 0x100d4e9d
movq xmm0, qword [0x101f5230]
lea esi, [eax + 0xefc]
mov ax, word [0x101f5238]
xor edx, edx
mov word [esp + 0x28], ax
mov al, byte [0x101f523a]
movq qword [esp + 0x20], xmm0
mov byte [esp + 0x2a], al
mov dword [esp + 0xc], edx
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 0xb
jl 0x100d4e44
push 0
push str._d_ms
lea eax, [esp + 0x14]
mov dword [esp + 0x14], 0xc8
push eax
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 1
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x34]
call fcn.10173320
mov ecx, dword [0x104e2068]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov esi, dword [ecx + 0x1bec]
mov edx, dword [esi + 0x1f8]
mov eax, dword [esi + 0x200]
mov eax, dword [eax + edx*4 - 4]
mov dword [esi + 0x1f0], eax
lea eax, [edx - 1]
mov dword [esi + 0x1f8], eax
call fcn.100ca290
movss xmm0, dword [0x101ff42c]
mov ecx, 1
call fcn.100c98a0
movss xmm0, dword [0x101ff428]
call fcn.1015ef10
movups xmm0, xmmword [0x101f594c]
mov esi, dword [0x104e1ecc]
shl esi, 5
add esi, dword [0x10227c40]
movups xmmword [esp + 0x30], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100d50a6
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0xc], edx
jl 0x100d5072
movaps xmm0, xmmword [0x101ff810]
mov eax, 5
movaps xmm4, xmmword [0x101ff6c0]
xor ecx, ecx
movaps xmm3, xmmword [0x101ffc10]
movaps xmm6, xmmword [0x101ff730]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x20], xmm0
mov edx, dword [esp + 0x20]
movd xmm7, 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x30]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x30], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x34]
pxor xmm1, xmm0
movd dword [esp + ecx + 0x34], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100d4f71
jmp 0x100d50a6
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0xc]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0xc]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 0x10
jl 0x100d5072
lea edx, [esi + 0x2ac]
lea ecx, [esp + 0x30]
call fcn.1016fb20
mov ecx, dword [0x104e1ecc]
mov esi, dword [0x10227c40]
mov eax, dword [str.rZ_7v_XYA]
add esi, 0x2c8
shl ecx, 5
add esi, ecx
mov dword [esp + 0x14], eax
cmp byte [0x101f4d6f], 0
je 0x100d51b9
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0xc], edx
jl 0x100d5185
movaps xmm3, xmmword [0x101ff6c0]
mov ecx, 5
movaps xmm2, xmm3
movaps xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x101ffc10]
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x101ffc10]
shufps xmm2, xmm0, 0xdd
movd xmm0, ecx
paddd xmm2, xmm3
psrad xmm2, xmm0
mov ecx, 0x1f
movaps xmm1, xmm2
movd xmm0, ecx
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x101ff730]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101ff810]
movd xmm0, eax
pxor xmm1, xmm0
movd dword [esp + 0x14], xmm1
jmp 0x100d51b9
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0xc]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0xc]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 4
jl 0x100d5185
push 0x20
push str._.2f
lea eax, [esp + 0x14]
mov dword [esp + 0x38], edi
push eax
lea eax, [esp + 0x3c]
mov dword [esp + 0x18], 0x41c80000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x28]
call fcn.10173320
mov ecx, dword [0x104e1ecc]
mov esi, dword [0x10227c40]
mov ax, word [0x101f4d08]
add esi, 0x2b4
movq xmm0, qword [0x101f4d00]
shl ecx, 5
add esi, ecx
movq qword [esp + 0x14], xmm0
mov word [esp + 0x1c], ax
test ah, ah
je 0x100d5249
xor edx, edx
mov dword [esp + 0xc], edx
nop
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x14], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 0xa
jl 0x100d5220
push 0
push str._.2f
lea eax, [esp + 0x38]
mov dword [esp + 0x14], 0x3f800000
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x3c], 0x41a00000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x28]
call fcn.10173320
mov ecx, dword [0x104e1ecc]
mov esi, dword [0x10227c40]
mov eax, dword [0x101f53e0]
add esi, 0x2b0
movq xmm0, qword [0x101f53d8]
shl ecx, 5
mov dword [esp + 0x28], eax
add esi, ecx
mov ax, word [0x101f53e4]
movq qword [esp + 0x20], xmm0
mov word [esp + 0x2c], ax
test ah, ah
je 0x100d5416
xor edx, edx
cmp dword [0x102296a0], 2
mov dword [esp + 0x14], edx
jl 0x100d53e2
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f53d8]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xe
jl 0x100d53e2
push 0
push str._d_ms
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0x12c
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], edi
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x34]
call fcn.10173320
mov ecx, dword [0x104e1ecc]
xor edx, edx
mov esi, dword [0x10227c40]
mov eax, dword [0x101f5654]
add esi, 0x2bc
movups xmm0, xmmword [str._G_P_HYSI]
shl ecx, 5
mov dword [esp + 0x60], eax
add esi, ecx
cmp dword [0x102296a0], 2
mov al, byte [0x101f5658]
movups xmmword [esp + 0x50], xmm0
mov byte [esp + 0x64], al
mov dword [esp + 0x14], edx
jl 0x100d55d0
movaps xmm0, xmmword [0x101ff810]
mov eax, 5
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffc10]
movaps xmm6, xmmword [0x101ff730]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
movd xmm7, 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
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x50]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x50], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x54]
pxor xmm1, xmm0
movd dword [esp + edx + 0x54], xmm1
add edx, 8
cmp edx, 0x10
jl 0x100d54c1
mov dword [esp + 0x14], edx
cmp edx, 0x15
jge 0x100d5604
nop dword [eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x50], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x15
jl 0x100d55d0
push 0
push 0x101f2c78
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0x64
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], edi
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x64]
call fcn.10173320
mov esi, dword [0x104e1ecc]
xor edx, edx
mov eax, dword [0x101f4ac8]
movq xmm0, qword [0x101f4ac0]
mov dword [esp + 0x28], eax
mov ax, word [0x101f4acc]
lea esi, [esi + 0x16]
shl esi, 5
add esi, dword [0x10227c40]
cmp dword [0x102296a0], 2
mov word [esp + 0x2c], ax
mov al, byte [0x101f4ace]
movq qword [esp + 0x20], xmm0
mov byte [esp + 0x2e], al
mov dword [esp + 0x14], edx
jl 0x100d5795
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f4ac0]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xf
jl 0x100d5795
push 0
push 0x101f2c78
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0x65
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], edi
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x34]
call fcn.10173320
mov ecx, dword [0x10227c40]
mov esi, 0x10227ab8
mov edx, dword [0x104e1ecc]
shl edx, 5
mov al, byte [edx + ecx + 0x2b8]
and al, 1
mov byte [0x104e1ea4], al
mov eax, dword [edx + ecx + 0x2b8]
shr eax, 1
and al, 1
mov byte [0x104e1ea5], al
mov eax, dword [edx + ecx + 0x2b8]
shr eax, 2
and al, 1
mov byte [0x104e1ea6], al
mov eax, dword [edx + ecx + 0x2b8]
shr eax, 3
and al, 1
mov byte [0x104e1ea7], al
mov eax, dword [edx + ecx + 0x2b8]
shr eax, 4
and al, 1
cmp dword [0x10227acc], 0x10
mov byte [0x104e1ea8], al
mov eax, dword [0x101f528c]
mov dword [esp + 0x30], eax
mov ax, word [0x101f5290]
mov word [esp + 0x34], ax
mov al, byte [0x101f5292]
mov byte [esp + 0x36], al
jb 0x100d5886
mov esi, dword [0x10227ab8]
xor edx, edx
mov dword [esp + 0xc], edx
nop dword [eax]
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 7
jl 0x100d5890
push 1
push 0
mov edx, esi
lea ecx, [esp + 0x38]
call fcn.101706d0
test al, al
je 0x100d5963
push 0
push 0x101d6e4f
mov ecx, 0x10227ab8
call fcn.10022990
xor esi, esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], esi
nop dword [eax + eax]
mov dl, byte [esi + 0x104e1ea4]
lea eax, [esp + 0x30]
mov ecx, dword [esi*4 + 0x101f65fc]
push eax
push 1
call fcn.1017efc0
test al, al
je 0x100d591d
cmp byte [esi + 0x104e1ea4], 0
sete al
mov byte [esi + 0x104e1ea4], al
inc esi
cmp esi, 5
jb 0x100d58f0
mov esi, dword [0x104e2068]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x100d5947
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x100d5957
mov byte [esi + 0x1b9e], 1
call fcn.1015e0b0
mov byte [esi + 0x1b9e], 0
xor esi, esi
cmp byte [esp + 0x13], 0
mov ecx, 0x202c
mov eax, dword [0x104e1ecc]
jne 0x100d5996
push 0
push 0x101d6e4f
mov ecx, 0x10227ab8
call fcn.10022990
mov eax, dword [0x104e1ecc]
mov ecx, 0x202c
mov byte [esp + 0x13], 1
cmp byte [esi + 0x104e1ea4], 0
je 0x100d5b69
cmp dword [0x10227ac8], 0
xorps xmm0, xmm0
mov edx, dword [esi*4 + 0x101f65fc]
je 0x100d5a13
or edi, 1
movaps xmmword [esp + 0x30], xmm0
mov word [esp + 0x30], cx
or edi, 2
push edx
lea ecx, [esp + 0x34]
mov dword [esp + 0x44], 2
mov dword [esp + 0x48], 0xf
mov byte [esp + 0x36], 0
mov dword [esp + 0x18], edi
call fcn.10020690
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x50], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x60], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [esp + 0x50]
jmp 0x100d5a58
mov ecx, edx
movaps xmmword [esp + 0x70], xmm0
or edi, 4
mov dword [esp + 0x80], 0
mov dword [esp + 0x14], edi
mov dword [esp + 0x84], 0
lea edi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100d5a40
sub ecx, edi
push ecx
push edx
lea ecx, [esp + 0x78]
call fcn.10027bd0
lea eax, [esp + 0x70]
push eax
mov ecx, 0x10227ab8
call fcn.10020700
mov eax, dword [esp + 0x14]
test al, 4
je 0x100d5aaf
mov ecx, dword [esp + 0x84]
and eax, 0xfffffffb
mov dword [esp + 0x14], eax
cmp ecx, 0x10
jb 0x100d5aaf
mov edx, dword [esp + 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100d5aa1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100d6620
push ecx
push edx
call fcn.1019d45c
mov eax, dword [esp + 0x1c]
add esp, 8
test al, 2
je 0x100d5af4
mov ecx, dword [esp + 0x64]
and eax, 0xfffffffd
mov dword [esp + 0x14], eax
cmp ecx, 0x10
jb 0x100d5af4
mov edx, dword [esp + 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100d5ae6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100d6620
push ecx
push edx
call fcn.1019d45c
mov eax, dword [esp + 0x1c]
add esp, 8
test al, 1
je 0x100d5b4a
mov ecx, dword [esp + 0x44]
and eax, 0xfffffffe
mov dword [esp + 0x14], eax
cmp ecx, 0x10
jb 0x100d5b35
mov edx, dword [esp + 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100d5b2b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100d6620
push ecx
push edx
call fcn.1019d45c
add esp, 8
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0xf
mov byte [esp + 0x30], 0
mov edx, dword [0x104e1ecc]
mov ecx, dword [0x10227c40]
mov edi, dword [esp + 0x14]
shl edx, 5
mov eax, dword [edx + ecx + 0x2b8]
bts eax, esi
jmp 0x100d5b7e
mov ecx, dword [0x10227c40]
mov edx, eax
shl edx, 5
mov eax, dword [edx + ecx + 0x2b8]
btr eax, esi
inc esi
mov dword [edx + ecx + 0x2b8], eax
cmp esi, 5
jb 0x100d5965
mov esi, dword [0x104e1ecc]
movups xmm0, xmmword [0x101f5d00]
mov ax, word [0x101f5d10]
mov edi, dword [0x102296a0]
shl esi, 5
add esi, dword [0x10227c40]
mov word [esp + 0x60], ax
movups xmmword [esp + 0x50], xmm0
test ah, ah
je 0x100d5d54
xor edx, edx
mov dword [esp + 0x14], edx
cmp edi, 2
jl 0x100d5d20
movaps xmm0, xmmword [0x101ff810]
mov eax, 5
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffc10]
movaps xmm6, xmmword [0x101ff730]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
movd xmm7, eax
nop dword [eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x50]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x50], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x54]
pxor xmm1, xmm0
movd dword [esp + edx + 0x54], xmm1
add edx, 8
cmp edx, 0x10
jl 0x100d5c10
mov dword [esp + 0x14], edx
cmp edx, 0x12
jge 0x100d5d54
nop dword [eax + eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x50], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x12
jl 0x100d5d20
lea edx, [esi + 0x2c4]
lea ecx, [esp + 0x50]
call fcn.1016fb20
mov esi, dword [0x104e1ecc]
mov eax, dword [0x101f6318]
movups xmm0, xmmword [str.fPUXQU]
shl esi, 4
add esi, dword [0x10227c40]
mov dword [esp + 0x80], eax
mov ax, word [0x101f631c]
mov word [esp + 0x84], ax
movups xmmword [esp + 0x70], xmm0
test ah, ah
je 0x100d5f34
xor edx, edx
mov dword [esp + 0x14], edx
cmp edi, 2
jl 0x100d5f00
movaps xmm0, xmmword [0x101ff810]
mov eax, 5
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffc10]
movaps xmm6, xmmword [0x101ff730]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
movd xmm7, eax
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x70]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x70], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x74]
pxor xmm1, xmm0
movd dword [esp + edx + 0x74], xmm1
add edx, 8
cmp edx, 0x10
jl 0x100d5df0
mov dword [esp + 0x14], edx
cmp edx, 0x16
jge 0x100d5f34
nop dword [eax + eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x70], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x16
jl 0x100d5f00
lea edx, [esi + 0x7ac]
lea ecx, [esp + 0x70]
call fcn.1016fb20
mov esi, dword [0x104e1ecc]
mov eax, dword [0x10227c40]
shl esi, 4
cmp byte [esi + eax + 0x7ac], 0
je 0x100d65d4
mov ecx, dword [0x104e2068]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x100d5ff8
movss xmm1, dword [ecx + 0x15a8]
movss xmm0, dword [edx + 0xf8]
addss xmm1, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm1
movss dword [edx + 0xf0], xmm0
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov eax, dword [str.gZRVM:]
mov dword [esp + 0x30], eax
mov ax, word [0x101f4bdc]
mov word [esp + 0x34], ax
mov al, byte [0x101f4bde]
mov byte [esp + 0x36], al
mov dword [edx + 0x118], ecx
mov eax, dword [0x10227c40]
add eax, 0x7ad
add esi, eax
jmp 0x100d6021
mov eax, dword [0x10227c40]
add eax, 0x7ad
add esi, eax
mov eax, dword [str.gZRVM:]
mov dword [esp + 0x30], eax
mov ax, word [0x101f4bdc]
mov word [esp + 0x34], ax
mov al, byte [0x101f4bde]
mov byte [esp + 0x36], al
xor edx, edx
mov dword [esp + 0xc], edx
nop word [eax + eax]
mov eax, 0xa0a0a0a1
mul edx
shr edx, 5
movsx eax, dl
mov edx, dword [esp + 0xc]
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x30], cl
inc edx
mov dword [esp + 0xc], edx
cmp edx, 7
jl 0x100d6030
mov edx, esi
lea ecx, [esp + 0x30]
call fcn.1016fb20
mov esi, dword [0x104e1ecc]
xor edx, edx
movups xmm0, xmmword [0x101f64a4]
mov al, byte [0x101f64b4]
mov byte [esp + 0x60], al
lea esi, [esi + 0x7b]
mov dword [esp + 0x14], edx
shl esi, 4
add esi, dword [0x10227c40]
movups xmmword [esp + 0x50], xmm0
cmp edi, 2
jl 0x100d61e0
movaps xmm0, xmmword [0x101ff810]
mov eax, 5
movaps xmm4, xmmword [0x101ff6c0]
movaps xmm3, xmmword [0x101ffc10]
movaps xmm6, xmmword [0x101ff730]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
movd xmm7, 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
paddd xmm1, xmm2
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x50]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x50], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x54]
pxor xmm1, xmm0
movd dword [esp + edx + 0x54], xmm1
add edx, 8
cmp edx, 0x10
jl 0x100d60d1
mov dword [esp + 0x14], edx
cmp edx, 0x11
jge 0x100d6214
nop dword [eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x50], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0x11
jl 0x100d61e0
push 0
push 0x101f2c78
lea eax, [esp + 0x38]
mov dword [esp + 0x38], 0x96
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x64]
call fcn.10173320
mov eax, dword [0x101f5498]
xor edx, edx
mov ecx, dword [0x104e1ecc]
mov esi, dword [0x10227c40]
movq xmm0, qword [0x101f5490]
add esi, 0x7b4
mov dword [esp + 0x28], eax
mov ax, word [0x101f549c]
shl ecx, 4
mov word [esp + 0x2c], ax
add esi, ecx
mov al, byte [0x101f549e]
movq qword [esp + 0x20], xmm0
mov byte [esp + 0x2e], al
mov dword [esp + 0x14], edx
cmp edi, 2
jl 0x100d63b0
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f5490]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
nop word [eax + eax]
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xf
jl 0x100d63b0
push 0
push str._.5f
lea eax, [esp + 0x38]
mov dword [esp + 0x14], 0
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x3c], 0x3f800000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x34]
call fcn.10173320
mov ecx, dword [0x104e1ecc]
xor edx, edx
mov esi, dword [0x10227c40]
mov eax, dword [0x101f4a34]
add esi, 0x7b8
movq xmm0, qword [0x101f4a2c]
shl ecx, 4
mov dword [esp + 0x28], eax
add esi, ecx
mov al, byte [0x101f4a38]
movq qword [esp + 0x20], xmm0
mov byte [esp + 0x2c], al
mov dword [esp + 0x14], edx
cmp edi, 2
jl 0x100d6570
movaps xmm2, xmmword [0x101ff6c0]
mov eax, 5
movaps xmm4, xmmword [0x101ffc10]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
movd xmm5, eax
psrad xmm1, xmm5
mov eax, 0x1f
mov dword [esp + 0x14], edx
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x101ff810]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101ff700]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f4a2c]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x20], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101ff730]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x101ff7d0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x24]
pxor xmm1, xmm0
movd dword [esp + 0x24], xmm1
nop
mov eax, 0xa0a0a0a1
imul edx
add edx, dword [esp + 0x14]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
movsx eax, al
mov cl, dl
imul eax, eax, 0x33
sub cl, al
add cl, 0x34
xor byte [esp + edx + 0x20], cl
inc edx
mov dword [esp + 0x14], edx
cmp edx, 0xd
jl 0x100d6570
push 0
push str._.5f
lea eax, [esp + 0x38]
mov dword [esp + 0x14], 0
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x3c], 0x3f800000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x34]
call fcn.10173320
mov ecx, dword [0x104e2068]
pop edi
pop esi
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 ecx, dword [esp + 0xa4]
xor ecx, esp
mov dword [edx + 0x1f8], eax
call fcn.1019d163
mov esp, ebp
pop ebp
ret
call fcn.101a26e6
nop dword [eax]
mov cl, 0x3f
or eax, 222312720
adc byte [edi + 0x40], ch
or eax, 0xd40ad10
adc al, ch
inc eax
or eax, 0xcccccc10
int3