Function at 0x100f94a0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x124
mov eax, dword [0x102060c0]
xor eax, esp
mov dword [esp + 0x120], eax
mov ecx, dword [0x1034f0f0]
push ebx
push esi
push edi
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov eax, dword [ecx + 0x1bec]
mov eax, dword [eax + 0x1d0]
test eax, eax
je 0x100f94f1
cmp dword [eax + 0x10], 2
jne 0x100f94ec
cmp dword [eax + 4], 1
je 0x100f94ff
call fcn.100ca080
push 1
mov edx, 2
xor ecx, ecx
call fcn.100c97a0
movss xmm0, dword [0x101f7a10]
mov ecx, 1
call fcn.100c93d0
mov ax, word [0x101edeec]
movq xmm0, qword [0x101edee4]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x1c], xmm0
mov word [esp + 0x24], ax
test ah, ah
je 0x100f955f
xor ebx, ebx
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0xa
jl 0x100f9536
lea edx, [esi + 0x3373]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
mov esi, dword [0x10223ca0]
movups xmm0, xmmword [str.pFZ_O]
mov eax, dword [0x101ee978]
add esi, 0x3378
cmp byte [0x101ee97b], 0
mov edi, dword [0x10224d40]
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x2c], eax
je 0x100f96f7
xor ebx, ebx
cmp edi, 2
jl 0x100f96d0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x20], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100f95d2
cmp ebx, 0x14
jge 0x100f96f7
nop
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x14
jl 0x100f96d0
push 0
push 0x101eb404
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0x64
push eax
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 1
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x30]
call fcn.1016fbe0
cmp byte [0x101edbc3], 0
movq xmm0, qword [0x101edbb8]
mov eax, dword [0x101edbc0]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x30], xmm0
mov dword [esp + 0x38], eax
je 0x100f987a
xor ebx, ebx
cmp edi, 2
jl 0x100f9853
movaps xmm2, xmmword [0x101f7c30]
mov ebx, 8
movaps xmm4, xmmword [0x101f7d90]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x101f7db0]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f7c70]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101edbb8]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x30], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x34]
xorps xmm1, xmm0
movd dword [esp + 0x34], xmm1
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xc
jl 0x100f9853
lea edx, [esi + 0x3372]
lea ecx, [esp + 0x30]
call fcn.1016c3b0
movups xmm0, xmmword [0x101eee50]
mov esi, dword [0x10223ca0]
add esi, 0x33d4
cmp byte [0x101eee67], 0
movups xmmword [esp + 0x58], xmm0
movq xmm0, qword [0x101eee60]
movq qword [esp + 0x68], xmm0
je 0x100f9a17
xor ebx, ebx
cmp edi, 2
jl 0x100f99f0
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov edx, dword [esp + 0x30]
nop
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x58]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x58], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x5c]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x5c], xmm1
add ecx, 8
cmp ecx, 0x18
jl 0x100f98f0
jmp 0x100f9a17
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x58], cl
inc ebx
cmp ebx, 0x18
jl 0x100f99f0
push 0
push 0x101eb404
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0x64
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x6c]
call fcn.1016fbe0
mov ecx, 0x4e5
call fcn.1015af60
mov eax, dword [0x1034f0f0]
movups xmm0, xmmword [str.tRGA]
mov eax, dword [eax + 0x1bec]
movups xmmword [esp + 0x1c], xmm0
psrldq xmm0, 0xf
dec dword [eax + 0xe0]
mov esi, dword [0x10223ca0]
movd eax, xmm0
test al, al
je 0x100f9be7
xor ebx, ebx
cmp edi, 2
jl 0x100f9bc0
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov edx, dword [esp + 0x30]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x20], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100f9ac0
jmp 0x100f9be7
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x10
jl 0x100f9bc0
lea edx, [esi + 0x3400]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
mov ax, word [0x101ee88c]
movq xmm0, qword [0x101ee884]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x1c], xmm0
mov word [esp + 0x24], ax
test ah, ah
je 0x100f9c49
xor ebx, ebx
nop dword [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0xa
jl 0x100f9c20
lea edx, [esi + 0x35ab]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
mov ax, word [0x101eec74]
movq xmm0, qword [0x101eec6c]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x1c], xmm0
mov word [esp + 0x24], ax
test ah, ah
je 0x100f9ca9
xor ebx, ebx
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0xa
jl 0x100f9c80
lea edx, [esi + 0x3450]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Mini_jump_Key
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x14], eax
cmp ebx, edi
jne 0x100f9d20
lea ecx, [ebx + 1]
test edi, edi
je 0x100f9d0e
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100f9d13
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x14]
push ecx
mov dword [esp + 0x20], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x20]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x28], 0
lea edx, [edx + 0x3458]
call fcn.100bfda0
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x10223ca0]
cmp byte [eax + 0x3450], 0
je 0x100f9db6
push 0
push str._d_ticks
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], 0xc
push ecx
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], 0
push ecx
add eax, 0x3454
mov edx, 4
push eax
mov ecx, str.Crouch_lock
call fcn.1016fbe0
mov ecx, dword [0x1034f0f0]
mov esi, dword [ecx + 0x1bec]
xor edx, edx
add esi, 0xe0
mov ecx, str.Jump_stats
mov eax, dword [esi + 8]
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x14], eax
cmp ebx, edi
jne 0x100f9e06
lea ecx, [ebx + 1]
test edi, edi
je 0x100f9df4
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100f9df9
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x14]
movq xmm0, qword [0x101eeef0]
movq qword [esp + 0x30], xmm0
mov dword [eax + ecx*4], edx
mov ax, word [0x101eeef8]
inc dword [esi]
xor ebx, ebx
mov esi, dword [0x10223ca0]
mov word [esp + 0x38], ax
mov al, byte [0x101eeefa]
mov byte [esp + 0x3a], al
nop
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xb
jl 0x100f9e40
lea edx, [esi + 0x37d4]
lea ecx, [esp + 0x30]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
push 1
push 0
lea edx, [esp + 0x24]
mov dword [esp + 0x24], 0
mov ecx, 0x101eb38c
mov dword [esp + 0x28], 0
call fcn.1016ab10
test al, al
je 0x100f9efc
mov esi, dword [0x1034f0f0]
xor edx, edx
mov eax, dword [esi + 0x1bec]
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
mov ecx, 0x101cf4ee
call fcn.1014f1a0
cmp dword [esi + 0x1c24], eax
jne 0x100f9ee4
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x100f9ef3
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.1015c1a0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x100f9f1f
mov dword [esi + 0x1c74], 0
jmp 0x100fa354
mov eax, dword [esi + 0x1bec]
xor edx, edx
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
mov ecx, 0x101cf4ee
call fcn.1014f1a0
cmp dword [esi + 0x1c24], eax
jne 0x100f9f4f
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x100f9f5e
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x100fa34e
mov ax, word [0x101eda3c]
xor ebx, ebx
movq xmm0, qword [0x101eda34]
mov esi, dword [0x10223ca0]
mov word [esp + 0x38], ax
mov al, byte [0x101eda3e]
movq qword [esp + 0x30], xmm0
mov byte [esp + 0x3a], al
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xb
jl 0x100f9fa0
lea edx, [esi + 0x37d5]
lea ecx, [esp + 0x30]
call fcn.1016c3b0
cmp byte [0x101eddff], 0
movups xmm0, xmmword [0x101eddec]
mov eax, dword [0x101eddfc]
mov esi, dword [0x10223ca0]
mov edi, dword [0x10224d40]
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x2c], eax
je 0x100fa167
xor ebx, ebx
cmp edi, 2
jl 0x100fa140
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
nop word [eax + eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x20], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100fa040
cmp ebx, 0x14
jge 0x100fa167
nop dword [eax]
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x14
jl 0x100fa140
lea edx, [esi + 0x37d6]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
movups xmm0, xmmword [str.aZYEZ_]
mov esi, dword [0x10223ca0]
movups xmmword [esp + 0x1c], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100fa2f7
xor ebx, ebx
cmp edi, 2
jl 0x100fa2d0
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov edx, dword [esp + 0x30]
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
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x20], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100fa1d0
jmp 0x100fa2f7
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x10
jl 0x100fa2d0
lea edx, [esi + 0x37d7]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x100fa32a
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x100fa33a
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
mov esi, dword [0x1034f0f0]
jmp 0x100fa35a
mov esi, dword [0x1034f0f0]
mov edi, dword [0x10224d40]
mov eax, dword [esi + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov eax, dword [esi + 0x1bec]
cmp byte [eax + 0xab], 0
jne 0x100fa3c2
movss xmm1, dword [esi + 0x159c]
movss xmm0, dword [eax + 0x118]
addss xmm1, xmm1
addss xmm1, dword [esi + 0x1988]
maxss xmm0, xmm1
movss dword [eax + 0x118], xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, dword [esi + 0x159c]
movss dword [eax + 0x124], xmm0
mov ax, word [0x101edc78]
xor ebx, ebx
mov word [esp + 0x2c], ax
mov al, byte [0x101edc7a]
mov byte [esp + 0x2e], al
movups xmm0, xmmword [0x101edc68]
movups xmmword [esp + 0x1c], xmm0
cmp edi, 2
jl 0x100fa510
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x20], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100fa412
cmp ebx, 0x13
jge 0x100fa537
nop
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x13
jl 0x100fa510
lea eax, [esp + 0x1c]
push eax
call fcn.1016a390
movss xmm1, dword [0x101f7ab4]
add esp, 4
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.stop_using_hex_u_dirty_hoe__Pastahook
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x14], eax
cmp ebx, edi
jne 0x100fa5ac
lea ecx, [ebx + 1]
test edi, edi
je 0x100fa59a
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fa59f
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x14]
push 1
push 0
mov dword [eax + ecx*4], edx
lea edx, [esp + 0x24]
inc dword [esi]
mov ecx, 0x101eb38c
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
call fcn.1016ab10
test al, al
je 0x100fa62e
mov esi, dword [0x1034f0f0]
xor edx, edx
mov eax, dword [esi + 0x1bec]
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
mov ecx, 0x101cf4ee
call fcn.1014f1a0
cmp dword [esi + 0x1c24], eax
jne 0x100fa616
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x100fa625
mov byte [esi + 0x1c60], 1
xor edx, edx
mov ecx, eax
call fcn.1015c1a0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x100fa651
mov dword [esi + 0x1c74], 0
jmp 0x100fb09d
mov eax, dword [esi + 0x1bec]
xor edx, edx
mov ecx, dword [eax + 0xe0]
mov eax, dword [eax + 0xe8]
push dword [eax + ecx*4 - 4]
mov ecx, 0x101cf4ee
call fcn.1014f1a0
cmp dword [esi + 0x1c24], eax
jne 0x100fa681
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x100fa690
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x100fb09d
mov eax, dword [str.YS_I_]
xor ebx, ebx
movq xmm0, qword [0x101eef50]
mov edi, dword [0x10224d40]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x38], eax
mov al, byte [0x101eef5c]
movq qword [esp + 0x30], xmm0
mov byte [esp + 0x3c], al
cmp edi, 2
jl 0x100fa7d2
movaps xmm2, xmmword [0x101f7c30]
mov ebx, 8
movaps xmm4, xmmword [0x101f7d90]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x101f7db0]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f7c70]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101eef50]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x30], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x34]
xorps xmm1, xmm0
movd dword [esp + 0x34], xmm1
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xd
jl 0x100fa7d2
lea edx, [esi + 0x3380]
lea ecx, [esp + 0x30]
call fcn.1016c3b0
mov eax, dword [str.wURPUC8]
xor ebx, ebx
mov esi, dword [0x10223ca0]
mov dword [esp + 0x1c], eax
mov ax, word [0x101ed314]
mov word [esp + 0x20], ax
mov al, byte [0x101ed316]
mov byte [esp + 0x22], al
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 7
jl 0x100fa830
lea edx, [esi + 0x3388]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
push 0
push str._.2f
lea eax, [esp + 0x1c]
mov dword [esp + 0x20], 0x3f000000
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x20], 0x40200000
push eax
mov eax, dword [0x10223ca0]
mov edx, 8
add eax, 0x338c
mov ecx, str.Effect_time
push eax
call fcn.1016fbe0
movups xmm0, xmmword [0x101ed000]
xor ebx, ebx
movups xmmword [esp + 0x70], xmm0
movups xmm0, xmmword [0x101ed010]
movups xmmword [esp + 0x80], xmm0
movups xmm0, xmmword [0x101ed020]
movups xmmword [esp + 0x90], xmm0
movq xmm0, qword [0x101ed030]
movq qword [esp + 0xa0], xmm0
cmp edi, 2
jl 0x100faa10
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov edx, dword [esp + 0x30]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x70]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x70], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x74]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x74], xmm1
add ecx, 8
cmp ecx, 0x38
jl 0x100fa910
jmp 0x100faa37
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x70], cl
inc ebx
cmp ebx, 0x38
jl 0x100faa10
mov eax, dword [0x10223ca0]
add eax, 0x3384
mov dword [esp + 0x14], eax
mov eax, dword [0x101ed358]
mov dword [esp + 0x1c], eax
mov ax, word [0x101ed35c]
mov word [esp + 0x20], ax
test ah, ah
je 0x100faa89
xor ebx, ebx
nop
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 6
jl 0x100faa60
xorps xmm0, xmm0
mov dword [esp + 0x68], 0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x6c], 0
movups xmmword [esp + 0x58], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100faaa8
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x60]
call fcn.100278e0
cmp dword [esp + 0x6c], 0xf
lea ebx, [esp + 0x58]
lea edx, [esp + 0x70]
cmova ebx, dword [esp + 0x58]
xor esi, esi
cmp byte [esp + 0x70], 0
je 0x100faafc
nop dword [eax + eax]
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100faae5
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x100faae0
mov edi, dword [0x10224d40]
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x70]
push 1
push 0xffffffffffffffff
push esi
push eax
push 0x1016ddf0
mov ecx, ebx
call fcn.1016de50
mov ecx, dword [esp + 0x6c]
cmp ecx, 0xf
jbe 0x100fab4c
mov edx, dword [esp + 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100fab42
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100fc4e7
push ecx
push edx
call fcn.1019958d
add esp, 8
mov eax, dword [0x10223ca0]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0xf
mov byte [esp + 0x58], 0
cmp dword [eax + 0x3384], 7
jne 0x100fb05d
movups xmm0, xmmword [0x101ede20]
lea esi, [eax + 0x3720]
xor ebx, ebx
mov ax, word [0x101ede30]
mov word [esp + 0x2c], ax
mov al, byte [0x101ede32]
mov byte [esp + 0x2e], al
movups xmmword [esp + 0x1c], xmm0
cmp edi, 2
jl 0x100facd0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
nop dword [eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x20], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100fabd0
cmp ebx, 0x13
jge 0x100facf7
nop dword [eax]
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x13
jl 0x100facd0
xorps xmm0, xmm0
mov dword [esp + 0xd0], 0
lea ecx, [esp + 0x1c]
mov dword [esp + 0xd4], 0
movups xmmword [esp + 0xc0], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fad20
sub ecx, edx
lea eax, [esp + 0x1c]
push ecx
push eax
lea ecx, [esp + 0xc8]
call fcn.100278e0
cmp dword [esp + 0xd4], 0xf
lea ecx, [esp + 0xc0]
mov eax, dword [esi + 0x14]
cmova ecx, dword [esp + 0xc0]
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
lea edx, [eax + 1]
cmp eax, 0xf
jbe 0x100fad73
mov esi, dword [esi]
lea eax, [esp + 0x30]
mov dword [esp + 0x1c], 0
push eax
push 0x100c3980
push 0x40000
lea eax, [esp + 0x28]
mov dword [esp + 0x2c], 0
push eax
push edx
push esi
xor edx, edx
call fcn.10172cf0
mov ecx, dword [esp + 0xd4]
cmp ecx, 0xf
jbe 0x100faddc
mov edx, dword [esp + 0xc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100fadd2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100fc4ec
push ecx
push edx
call fcn.1019958d
add esp, 8
xor ecx, ecx
call fcn.10151cf0
test al, al
je 0x100fb05d
movups xmm0, xmmword [str.SFPY]
mov ax, word [0x101ee330]
xor ebx, ebx
mov word [esp + 0x120], ax
movups xmmword [esp + 0xd8], xmm0
movups xmm0, xmmword [0x101ee2f8]
movups xmmword [esp + 0xe8], xmm0
movups xmm0, xmmword [0x101ee308]
movups xmmword [esp + 0xf8], xmm0
movups xmm0, xmmword [0x101ee318]
movups xmmword [esp + 0x108], xmm0
movq xmm0, qword [0x101ee328]
movq qword [esp + 0x118], xmm0
cmp edi, 2
jl 0x100faf90
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
nop word [eax + eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0xd8]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0xd8], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0xdc]
xorps xmm1, xmm0
movd dword [esp + ebx + 0xdc], xmm1
add ebx, 8
cmp ebx, 0x48
jl 0x100fae80
cmp ebx, 0x4a
jge 0x100fafba
nop dword [eax + eax]
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0xd8], cl
inc ebx
cmp ebx, 0x4a
jl 0x100faf90
xorps xmm0, xmm0
mov dword [esp + 0x40], 0
lea ecx, [esp + 0xd8]
mov dword [esp + 0x44], 0
movups xmmword [esp + 0x30], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fafe0
sub ecx, edx
lea eax, [esp + 0xd8]
push ecx
push eax
lea ecx, [esp + 0x38]
call fcn.100278e0
cmp dword [esp + 0x44], 0xf
lea eax, [esp + 0x30]
cmova eax, dword [esp + 0x30]
push eax
call fcn.1015c0d0
mov ecx, dword [esp + 0x48]
add esp, 4
cmp ecx, 0xf
jbe 0x100fb048
mov edx, dword [esp + 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100fb03e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100fc4f1
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0xf
mov byte [esp + 0x30], 0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x100fb081
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x100fb091
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
mov eax, dword [0x1034f0f0]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
call fcn.100c9da0
movss xmm0, dword [0x101f7984]
call fcn.1015b3d0
mov ax, word [0x101eef68]
movq xmm0, qword [str.p__V_]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x1c], xmm0
mov word [esp + 0x24], ax
test ah, ah
je 0x100fb10e
xor ebx, ebx
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0xa
jl 0x100fb0e5
lea edx, [esi + 0x3401]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Block_bot_Key
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x14], eax
cmp ebx, edi
jne 0x100fb185
lea ecx, [ebx + 1]
test edi, edi
je 0x100fb173
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fb178
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x14]
push ecx
mov dword [esp + 0x20], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x20]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x28], 0
lea edx, [edx + 0x3404]
call fcn.100bfda0
mov eax, dword [0x1034f0f0]
movq xmm0, qword [0x101ee5cc]
movq qword [esp + 0x1c], xmm0
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov ax, word [0x101ee5d4]
mov esi, dword [0x10223ca0]
mov word [esp + 0x24], ax
test ah, ah
je 0x100fb21e
xor ebx, ebx
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0xa
jl 0x100fb1f5
lea edx, [esi + 0x3428]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Edge_Jump_Key
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x14], eax
cmp ebx, edi
jne 0x100fb295
lea ecx, [ebx + 1]
test edi, edi
je 0x100fb283
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fb288
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x14]
push ecx
mov dword [esp + 0x20], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x20]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x28], 0
lea edx, [edx + 0x342c]
call fcn.100bfda0
mov eax, dword [0x1034f0f0]
movq xmm0, qword [0x101ee864]
movq qword [esp + 0x1c], xmm0
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
xor ebx, ebx
mov al, byte [0x101ee86c]
mov esi, dword [0x10223ca0]
mov byte [esp + 0x24], al
nop
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 9
jl 0x100fb300
lea edx, [esi + 0x347c]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Jump_Bug_Key
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x14], eax
cmp ebx, edi
jne 0x100fb3a0
lea ecx, [ebx + 1]
test edi, edi
je 0x100fb38e
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fb393
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x14]
push ecx
mov dword [esp + 0x20], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x20]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x28], 0
lea edx, [edx + 0x3480]
call fcn.100bfda0
mov eax, dword [0x1034f0f0]
movq xmm0, qword [0x101ed364]
movq qword [esp + 0x1c], xmm0
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
xor ebx, ebx
mov al, byte [0x101ed36c]
mov esi, dword [0x10223ca0]
mov byte [esp + 0x24], al
nop word [eax + eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 9
jl 0x100fb410
lea edx, [esi + 0x34a4]
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Edge_Bug_Key
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x14], eax
cmp ebx, edi
jne 0x100fb4b0
lea ecx, [ebx + 1]
test edi, edi
je 0x100fb49e
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fb4a3
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x14]
push ecx
mov dword [esp + 0x20], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x20]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x28], 0
lea edx, [edx + 0x34bc]
call fcn.100bfda0
mov eax, dword [0x1034f0f0]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x10223ca0]
cmp byte [eax + 0x34a4], 0
je 0x100fbb91
cmp byte [0x101edc33], 0
lea esi, [eax + 0x34ac]
movq xmm0, qword [str.bAQQ]
mov eax, dword [0x101edc30]
mov edi, dword [0x10224d40]
movq qword [esp + 0x30], xmm0
mov dword [esp + 0x38], eax
je 0x100fb667
xor ebx, ebx
cmp edi, 2
jl 0x100fb640
movaps xmm2, xmmword [0x101f7c30]
mov ebx, 8
movaps xmm4, xmmword [0x101f7d90]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x101f7db0]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f7c70]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.bAQQ]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x30], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x34]
xorps xmm1, xmm0
movd dword [esp + 0x34], xmm1
nop
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xc
jl 0x100fb640
push 0
push str._d_ticks
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0x40
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x44]
call fcn.1016fbe0
mov eax, dword [0x101eec64]
xor ebx, ebx
mov dword [esp + 0x68], eax
mov al, byte [0x101eec68]
mov byte [esp + 0x6c], al
movups xmm0, xmmword [str.ZP6dLXNR_zF.__EF]
movups xmmword [esp + 0x58], xmm0
cmp edi, 2
jl 0x100fb7f0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
nop word [eax + eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x58]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x58], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x5c]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x5c], xmm1
add ebx, 8
cmp ebx, 0x10
jl 0x100fb6f0
cmp ebx, 0x15
jge 0x100fb817
nop dword [eax]
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x58], cl
inc ebx
cmp ebx, 0x15
jl 0x100fb7f0
movups xmm0, xmmword [0x101ed318]
mov ebx, dword [0x10223ca0]
add ebx, 0x34b4
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x18], ebx
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100fb9ab
xor ebx, ebx
cmp edi, 2
jl 0x100fb980
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov edx, dword [esp + 0x30]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x20], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100fb880
jmp 0x100fb9a7
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x10
jl 0x100fb980
mov ebx, dword [esp + 0x18]
xor esi, esi
lea edx, [esp + 0x58]
cmp byte [esp + 0x58], 0
je 0x100fb9d7
mov ecx, edx
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fb9c0
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x100fb9b8
mov edi, dword [0x10224d40]
push 1
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x64]
mov edx, ebx
push eax
push 0x1016ddf0
lea ecx, [esp + 0x30]
call fcn.1016de50
mov eax, dword [0x10223ca0]
cmp dword [eax + 0x34b4], 0
je 0x100fbb91
movq xmm0, qword [str.W]
lea esi, [eax + 0x34b8]
mov eax, dword [0x101ee07c]
mov dword [esp + 0x38], eax
mov ax, word [0x101ee080]
movq qword [esp + 0x30], xmm0
mov word [esp + 0x3c], ax
test ah, ah
je 0x100fbb5c
xor ebx, ebx
cmp edi, 2
jl 0x100fbb35
movaps xmm2, xmmword [0x101f7c30]
mov ebx, 8
movaps xmm4, xmmword [0x101f7d90]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x101f7db0]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f7c70]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.W]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x30], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x34]
xorps xmm1, xmm0
movd dword [esp + 0x34], xmm1
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xe
jl 0x100fbb35
push 0
push str._.3f_
lea eax, [esp + 0x1c]
mov dword [esp + 0x20], 0
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x20], 0x3f800000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x44]
call fcn.1016fbe0
mov eax, dword [0x10223ca0]
movq xmm0, qword [0x101eeb1c]
lea ecx, [eax + 0x3574]
lea edx, [eax + 0x356c]
mov dword [esp + 0x14], ecx
lea esi, [eax + 0x3575]
mov dword [esp + 0x18], edx
lea edi, [eax + 0x3570]
movq qword [esp + 0x30], xmm0
add eax, 0x3560
mov dword [esp + 0x1c], eax
mov ax, word [0x101eeb24]
mov word [esp + 0x38], ax
test ah, ah
je 0x100fbc11
xor ebx, ebx
nop dword [eax]
mov eax, 0x29e4129f
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xa
jl 0x100fbbe0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
push 0
push 0
push 0
push esi
push edi
push ecx
push edx
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x4c]
call fcn.100be3c0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Auto_peek_Key
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x1c], eax
cmp ebx, edi
jne 0x100fbc90
lea ecx, [ebx + 1]
test edi, edi
je 0x100fbc7e
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fbc83
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x1c]
push ecx
mov dword [esp + 0x20], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x20]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x28], 0
lea edx, [edx + 0x3578]
call fcn.100bfda0
movups xmm0, xmmword [str.F_Y_Y__]
mov ax, word [0x101ee7d8]
xor ebx, ebx
mov edi, dword [0x10224d40]
mov word [esp + 0xb8], ax
movups xmmword [esp + 0x70], xmm0
movups xmm0, xmmword [0x101ee7a0]
movups xmmword [esp + 0x80], xmm0
movups xmm0, xmmword [0x101ee7b0]
movups xmmword [esp + 0x90], xmm0
movups xmm0, xmmword [0x101ee7c0]
movups xmmword [esp + 0xa0], xmm0
movq xmm0, qword [0x101ee7d0]
movq qword [esp + 0xb0], xmm0
cmp edi, 2
jl 0x100fbe60
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
nop dword [eax + eax]
movd xmm0, ebx
lea eax, [ebx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x70]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ebx + 0x70], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + ebx + 0x74]
xorps xmm1, xmm0
movd dword [esp + ebx + 0x74], xmm1
add ebx, 8
cmp ebx, 0x48
jl 0x100fbd60
cmp ebx, 0x4a
jge 0x100fbe87
nop dword [eax]
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x70], cl
inc ebx
cmp ebx, 0x4a
jl 0x100fbe60
movups xmm0, xmmword [str.sF_Z]
mov ebx, dword [0x10223ca0]
add ebx, 0x337c
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x18], ebx
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100fc01b
xor ebx, ebx
cmp edi, 2
jl 0x100fbff0
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov edx, dword [esp + 0x30]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x20], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100fbef0
jmp 0x100fc017
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x10
jl 0x100fbff0
mov ebx, dword [esp + 0x18]
xor esi, esi
lea edx, [esp + 0x70]
cmp byte [esp + 0x70], 0
je 0x100fc047
mov ecx, edx
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fc030
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x100fc028
mov edi, dword [0x10224d40]
push 1
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x7c]
mov edx, ebx
push eax
push 0x1016ddf0
lea ecx, [esp + 0x30]
call fcn.1016de50
mov eax, dword [0x10223ca0]
mov ecx, dword [eax + 0x337c]
test ecx, ecx
je 0x100fc083
cmp ecx, 1
je 0x100fc083
cmp ecx, 4
je 0x100fc083
cmp ecx, 5
jne 0x100fc211
movq xmm0, qword [0x101ee450]
lea esi, [eax + 0x336c]
mov eax, dword [0x101ee458]
mov dword [esp + 0x38], eax
mov ax, word [0x101ee45c]
movq qword [esp + 0x30], xmm0
mov word [esp + 0x3c], ax
test ah, ah
je 0x100fc1dc
xor ebx, ebx
cmp edi, 2
jl 0x100fc1b5
movaps xmm2, xmmword [0x101f7c30]
mov ebx, 8
movaps xmm4, xmmword [0x101f7d90]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
mov eax, dword [0x101f7db0]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f7c70]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101ee450]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x30], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x34]
xorps xmm1, xmm0
movd dword [esp + 0x34], xmm1
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x30], cl
inc ebx
cmp ebx, 0xe
jl 0x100fc1b5
push 0
push str._.2f
lea eax, [esp + 0x24]
mov dword [esp + 0x1c], 0x3f800000
push eax
lea eax, [esp + 0x20]
mov dword [esp + 0x28], 0x420c0000
push eax
push esi
mov edx, 8
lea ecx, [esp + 0x44]
call fcn.1016fbe0
mov eax, dword [0x10223ca0]
movups xmm0, xmmword [0x101ed9bc]
lea esi, [eax + 0x34e0]
movups xmmword [esp + 0x1c], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x100fc397
xor ebx, ebx
cmp edi, 2
jl 0x100fc370
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x30], xmm0
mov edx, dword [esp + 0x30]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x1c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x1c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x20]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x20], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x100fc270
jmp 0x100fc397
mov eax, 0x94f2095
mov cl, bl
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x1c], cl
inc ebx
cmp ebx, 0x10
jl 0x100fc370
mov edx, esi
lea ecx, [esp + 0x1c]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Auto_pixel_surf_Key
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov ebx, dword [esi]
push dword [eax + ebx*4 - 4]
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov dword [esp + 0x1c], eax
cmp ebx, edi
jne 0x100fc40a
lea ecx, [ebx + 1]
test edi, edi
je 0x100fc3f8
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fc3fd
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x1c]
push ecx
mov dword [esp + 0x20], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x20]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x28], 0
lea edx, [edx + 0x34e8]
call fcn.100bfda0
mov edx, dword [0x1034f0f0]
mov eax, dword [edx + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x10223ca0]
cmp byte [eax + 0x34e0], 0
je 0x100fc4a0
push 0
push str._d_ticks
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], 4
push ecx
lea ecx, [esp + 0x20]
mov dword [esp + 0x20], 2
push ecx
add eax, 0x34e4
mov edx, 4
push eax
mov ecx, str.Prediction_Amnt
call fcn.1016fbe0
mov edx, dword [0x1034f0f0]
mov eax, dword [edx + 0x1bec]
pop edi
pop esi
pop ebx
mov byte [eax + 0xa8], 1
mov edx, dword [edx + 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 + 0x120]
xor ecx, esp
mov dword [edx + 0x1f8], eax
call fcn.10199294
mov esp, ebp
pop ebp
ret
call fcn.1019e6c6
call fcn.1019e6c6
call fcn.1019e6c6
int3