Function at 0x100fdfe0
Capabilities:
Allocate or change rwx memory
Create process on windows
Create thread
Encode data using xor
Execute shellcode via indirect call
Self delete
Spawn thread to rwx shellcode

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xb14
mov eax, dword [0x102060c0]
xor eax, esp
mov dword [esp + 0xb10], eax
mov ecx, dword [0x1034f0f0]
push ebx
xor ebx, ebx
push esi
mov eax, dword [ecx + 0x1bec]
push edi
mov dword [esp + 0x1c], ebx
mov byte [eax + 0xa8], 1
mov eax, dword [ecx + 0x1bec]
mov eax, dword [eax + 0x1d0]
test eax, eax
je 0x100fe037
cmp dword [eax + 0x10], 2
jne 0x100fe032
cmp dword [eax + 4], 1
je 0x100fe045
call fcn.100ca080
push 1
mov edx, 2
xor ecx, ecx
call fcn.100c97a0
movss xmm0, dword [0x101f7a08]
mov ecx, 1
call fcn.100c93d0
mov esi, dword [0x10223ca0]
xorps xmm1, xmm1
mov al, byte [0x101eea48]
add esi, 0x3348
movq xmm0, qword [0x101eea40]
mov dword [esp + 0x18], ebx
xor ebx, ebx
mov byte [esp + 0x28c], al
movq qword [esp + 0x284], xmm0
mov dword [esp + 0x14], 0x42c80000
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 + 0x284], cl
inc ebx
cmp ebx, 9
jl 0x100fe091
lea eax, [esp + 0x14]
movaps xmm0, xmm1
push eax
mov edx, esi
lea ecx, [esp + 0x288]
call fcn.100d27b0
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov eax, dword [ecx + 0x1bec]
cmp byte [eax + 0xab], 0
jne 0x100fe135
movss xmm1, dword [ecx + 0x159c]
movss xmm0, dword [eax + 0x118]
addss xmm1, xmm1
addss xmm1, dword [ecx + 0x1988]
maxss xmm0, xmm1
movss dword [eax + 0x118], xmm0
movss xmm0, dword [eax + 0x124]
maxss xmm0, dword [ecx + 0x159c]
movss dword [eax + 0x124], xmm0
cmp byte [0x101eeddb], 0
mov eax, dword [str._VBPW_K9fVXPFR_R:]
mov ecx, dword [0x101eedd8]
mov edx, dword [0x10224d40]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], ecx
je 0x100fe28a
cmp edx, 2
jl 0x100fe259
movaps xmm2, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
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
paddb xmm1, xmmword [0x101f7db0]
movd xmm0, eax
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x1b0], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f7cd0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f7db0]
movd xmm0, ecx
xorps xmm1, xmm0
movd dword [esp + 0x1b4], xmm1
jmp 0x100fe28a
xor ebx, ebx
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 + 0x1b0], cl
inc ebx
cmp ebx, 8
jl 0x100fe260
lea eax, [esp + 0x1b0]
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 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.stop_using_hex_u_dirty_hoe__Pastahook
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x100fe302
inc ecx
test edi, edi
je 0x100fe2f0
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fe2f5
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 + 0x1c]
inc dword [esi]
mov ecx, 0x101eb38c
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
call fcn.1016ab10
test al, al
je 0x100fe342
xor edx, edx
mov ecx, 0x101cf4ee
call fcn.1015c140
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
jg 0x100feb50
mov dword [esi + 0x1c74], 0
mov eax, dword [0x1034f0f0]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov edi, dword [0x10224d40]
mov ax, word [0x101edfb8]
mov esi, dword [0x10223ca0]
movq xmm0, qword [str._RPTD]
add esi, 0x359f
mov word [esp + 0x120], ax
xor ebx, ebx
mov al, byte [0x101edfba]
movq qword [esp + 0x118], xmm0
mov byte [esp + 0x122], al
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 + 0x118], cl
inc ebx
cmp ebx, 0xb
jl 0x100fe3b4
mov edx, esi
lea ecx, [esp + 0x118]
call fcn.1016c3b0
mov eax, dword [0x101edcd0]
xor edx, edx
movq xmm0, qword [str.aCQVBVLVHePTMK_]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x3e0], eax
mov ax, word [0x101edcd4]
mov word [esp + 0x3e4], ax
mov al, byte [0x101edcd6]
movq qword [esp + 0x3d8], xmm0
mov byte [esp + 0x3e6], al
mov dword [esp + 0x44], edx
cmp edi, 2
jl 0x100fe540
movaps xmm2, xmmword [0x101f7c30]
mov edx, 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
mov dword [esp + 0x44], edx
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.aCQVBVLVHePTMK_]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x3d8], 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 + 0x3dc]
xorps xmm1, xmm0
movd dword [esp + 0x3dc], xmm1
nop
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x44]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x3d8], cl
inc edx
mov dword [esp + 0x44], edx
cmp edx, 0xf
jl 0x100fe540
lea edx, [esi + 0x365c]
lea ecx, [esp + 0x3d8]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x101ed528]
movq xmm0, qword [str.yVMW_YJ]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x2e0], eax
mov ax, word [0x101ed52c]
movq qword [esp + 0x2d8], xmm0
mov word [esp + 0x2e4], ax
test ah, ah
je 0x100fe70a
xor ebx, ebx
cmp edi, 2
jl 0x100fe6e0
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.yVMW_YJ]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2d8], 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 + 0x2dc]
xorps xmm1, xmm0
movd dword [esp + 0x2dc], xmm1
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 + 0x2d8], cl
inc ebx
cmp ebx, 0xe
jl 0x100fe6e0
lea edx, [esi + 0x3668]
lea ecx, [esp + 0x2d8]
call fcn.1016c3b0
mov ax, word [0x101ed200]
mov esi, dword [0x10223ca0]
movq xmm0, qword [0x101ed1f8]
add esi, 0x36ad
mov word [esp + 0x250], ax
xor ebx, ebx
mov al, byte [0x101ed202]
mov byte [esp + 0x252], al
movq qword [esp + 0x248], xmm0
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 + 0x248], cl
inc ebx
cmp ebx, 0xb
jl 0x100fe755
mov edx, esi
lea ecx, [esp + 0x248]
call fcn.1016c3b0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x101eee00]
movq xmm0, qword [str.zFFA]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x3a8], eax
mov ax, word [0x101eee04]
mov word [esp + 0x3ac], ax
mov al, byte [0x101eee06]
mov byte [esp + 0x3ae], al
xor eax, eax
movq qword [esp + 0x3a0], xmm0
mov dword [esp + 0x10], eax
cmp edi, 2
jl 0x100fe8ef
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.zFFA]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x3a0], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x10], eax
movd xmm0, dword [esp + 0x3a4]
xorps xmm1, xmm0
movd dword [esp + 0x3a4], xmm1
mov ebx, dword [esp + 0x10]
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 + 0x3a0], cl
inc ebx
cmp ebx, 0xf
jl 0x100fe8f3
push 0
push 0
push 0
lea eax, [esi + 0x36bf]
push eax
lea eax, [esi + 0x36ba]
push eax
lea eax, [esi + 0x36be]
push eax
push 0
lea edx, [esi + 0x36ae]
lea ecx, [esp + 0x3bc]
call fcn.100be3c0
mov eax, dword [0x101edcc0]
movq xmm0, qword [str.wEQ_B]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x330], eax
mov al, byte [0x101edcc4]
mov byte [esp + 0x334], al
xor eax, eax
movq qword [esp + 0x328], xmm0
mov dword [esp + 0x10], eax
cmp edi, 2
jl 0x100fea8e
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.wEQ_B]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x328], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x10], eax
movd xmm0, dword [esp + 0x32c]
xorps xmm1, xmm0
movd dword [esp + 0x32c], xmm1
mov ebx, dword [esp + 0x10]
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 + 0x328], cl
inc ebx
cmp ebx, 0xd
jl 0x100fea92
push 0
push 0
push 0
lea eax, [esi + 0x3695]
push eax
lea eax, [esi + 0x3690]
push eax
lea eax, [esi + 0x3694]
push eax
push 0
lea edx, [esi + 0x3684]
lea ecx, [esp + 0x344]
call fcn.100be3c0
movss xmm1, dword [0x101f7ab4]
xorps xmm0, xmm0
call fcn.1015b310
mov eax, dword [0x1034f0f0]
xor edx, edx
mov ecx, str.Logger
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]
cmp ebx, edi
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
jne 0x100ff1df
mov ecx, dword [esi]
inc ecx
test edi, edi
je 0x100ff1cd
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100ff1d2
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 0x100feb80
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x100feb8f
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x100fe364
mov eax, dword [0x101edf34]
xor ebx, ebx
movq xmm0, qword [0x101edf2c]
mov edi, dword [0x10224d40]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x300], eax
mov al, byte [0x101edf38]
movq qword [esp + 0x2f8], xmm0
mov byte [esp + 0x304], al
cmp edi, 2
jl 0x100fece3
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 [0x101edf2c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2f8], 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 + 0x2fc]
xorps xmm1, xmm0
movd dword [esp + 0x2fc], 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 + 0x2f8], cl
inc ebx
cmp ebx, 0xd
jl 0x100fece3
lea edx, [esi + 0x35a0]
lea ecx, [esp + 0x2f8]
call fcn.1016c3b0
mov eax, dword [0x101ee0b4]
xor ebx, ebx
movq xmm0, qword [0x101ee0ac]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x310], eax
mov al, byte [0x101ee0b8]
movq qword [esp + 0x308], xmm0
mov byte [esp + 0x314], al
cmp edi, 2
jl 0x100fee60
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 [0x101ee0ac]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x308], 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 + 0x30c]
xorps xmm1, xmm0
movd dword [esp + 0x30c], xmm1
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 + 0x308], cl
inc ebx
cmp ebx, 0xd
jl 0x100fee60
lea edx, [esi + 0x35a1]
lea ecx, [esp + 0x308]
call fcn.1016c3b0
mov eax, dword [0x101eeecc]
xor ebx, ebx
movq xmm0, qword [str._VBPW_]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x3d0], eax
mov ax, word [0x101eeed0]
mov word [esp + 0x3d4], ax
mov al, byte [0x101eeed2]
movq qword [esp + 0x3c8], xmm0
mov byte [esp + 0x3d6], al
cmp edi, 2
jl 0x100fefe4
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._VBPW_]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x3c8], 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 + 0x3cc]
xorps xmm1, xmm0
movd dword [esp + 0x3cc], 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 + 0x3c8], cl
inc ebx
cmp ebx, 0xf
jl 0x100fefe4
lea edx, [esi + 0x35a2]
lea ecx, [esp + 0x3c8]
call fcn.1016c3b0
mov eax, dword [0x101ee050]
xor ebx, ebx
movq xmm0, qword [0x101ee048]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x320], eax
mov al, byte [0x101ee054]
movq qword [esp + 0x318], xmm0
mov byte [esp + 0x324], al
cmp edi, 2
jl 0x100ff160
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 [0x101ee048]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x318], 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 + 0x31c]
xorps xmm1, xmm0
movd dword [esp + 0x31c], xmm1
nop word [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 + 0x318], cl
inc ebx
cmp ebx, 0xd
jl 0x100ff160
lea edx, [esi + 0x35a3]
lea ecx, [esp + 0x318]
call fcn.1016c3b0
mov edx, dword [0x10223ca0]
mov ecx, str.Chat_revealer
lea edx, [edx + 0x3345]
call fcn.1016c3b0
call fcn.1015c6c0
mov eax, dword [0x1034f0f0]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
jmp 0x100fe37b
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 + 0xd4]
inc dword [esi]
mov ecx, 0x101eb38c
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
call fcn.1016ab10
test al, al
je 0x100ff228
xor edx, edx
mov ecx, 0x101cf4ee
call fcn.1015c140
mov esi, dword [0x1034f0f0]
mov edi, dword [0x10224d4c]
mov eax, dword [esi + 0x1d30]
cmp eax, dword [esi + 0x1d3c]
mov eax, dword fs:[0x2c]
mov dword [esp + 0x44], eax
jg 0x100ff25b
mov dword [esi + 0x1c74], 0
jmp 0x100ffe73
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 0x100ff28b
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x100ff29a
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x100ffe73
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + edi*4]
mov eax, dword [0x10352558]
cmp eax, dword [ecx + 4]
jle 0x100ff2f2
push 0x10352558
call fcn.10199827
add esp, 4
cmp dword [0x10352558], 0xffffffff
jne 0x100ff2f2
push 0x101c5de0
call fcn.10199573
add esp, 4
push 0x10352558
call fcn.101997d6
add esp, 4
mov ecx, dword [0x10223ca0]
mov edx, 0x10223718
push 1
push 0
mov al, byte [ecx + 0x3674]
and al, 1
mov byte [0x1034ef04], al
mov eax, dword [ecx + 0x3674]
mov ecx, str.Log_output
shr eax, 1
and al, 1
cmp dword [0x1022372c], 0xf
mov byte [0x1034ef05], al
cmova edx, dword [0x10223718]
call fcn.1016cf50
test al, al
je 0x100ff3dc
push 0
push 0x101cf4ee
mov ecx, 0x10223718
call fcn.10022cd0
xor esi, esi
mov ecx, dword [esi*4 + 0x101ee468]
lea eax, [esp + 0xd4]
push eax
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
mov dl, byte [esi + 0x1034ef04]
push 1
call fcn.1017b8e0
test al, al
je 0x100ff396
cmp byte [esi + 0x1034ef04], 0
sete al
mov byte [esi + 0x1034ef04], al
inc esi
cmp esi, 2
jb 0x100ff350
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x100ff3c0
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x100ff3d0
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
xor esi, esi
nop
test esi, esi
jne 0x100ff3f4
push esi
push 0x101cf4ee
mov ecx, 0x10223718
call fcn.10022cd0
cmp byte [esi + 0x1034ef04], 0
je 0x100ff64c
cmp dword [0x10223728], 0
xorps xmm0, xmm0
mov edx, dword [esi*4 + 0x101ee468]
je 0x100ff4b6
or ebx, 1
mov dword [esp + 0x76c], 2
movups xmmword [esp + 0x75c], xmm0
mov eax, 0x202c
mov dword [esp + 0x770], 0xf
or ebx, 2
mov word [esp + 0x75c], ax
push edx
lea ecx, [esp + 0x760]
mov byte [esp + 0x762], 0
mov dword [esp + 0x20], ebx
call fcn.10020800
mov dword [esp + 0x754], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x744], xmm0
mov dword [esp + 0x758], 0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x744], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x754], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [esp + 0x744]
jmp 0x100ff4fe
mov ecx, edx
mov dword [esp + 0x8a8], 0
or ebx, 4
mov dword [esp + 0x8ac], 0
mov dword [esp + 0x1c], ebx
movups xmmword [esp + 0x898], xmm0
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ff4e0
sub ecx, edi
push ecx
push edx
lea ecx, [esp + 0x8a0]
call fcn.100278e0
lea eax, [esp + 0x898]
push eax
mov ecx, 0x10223718
call fcn.10020870
test bl, 4
je 0x100ff56f
mov ecx, dword [esp + 0x8ac]
and ebx, 0xfffffffb
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x100ff551
mov edx, dword [esp + 0x898]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ff547
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x8a8], 0
mov dword [esp + 0x8ac], 0xf
mov byte [esp + 0x898], 0
test bl, 2
je 0x100ff5d5
mov ecx, dword [esp + 0x758]
and ebx, 0xfffffffd
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x100ff5b7
mov edx, dword [esp + 0x744]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ff5ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x754], 0
mov dword [esp + 0x758], 0xf
mov byte [esp + 0x744], 0
test bl, 1
je 0x100ff63b
mov ecx, dword [esp + 0x770]
and ebx, 0xfffffffe
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x100ff61d
mov edx, dword [esp + 0x75c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ff613
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x76c], 0
mov dword [esp + 0x770], 0xf
mov byte [esp + 0x75c], 0
mov ecx, dword [0x10223ca0]
mov eax, dword [ecx + 0x3674]
bts eax, esi
jmp 0x100ff65b
mov ecx, dword [0x10223ca0]
mov eax, dword [ecx + 0x3674]
btr eax, esi
inc esi
mov dword [ecx + 0x3674], eax
cmp esi, 2
jb 0x100ff3e0
mov eax, dword [esp + 0x44]
mov ecx, dword [0x10224d4c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x1035252c]
cmp eax, dword [ecx + 4]
jle 0x100ff6b5
push 0x1035252c
call fcn.10199827
add esp, 4
cmp dword [0x1035252c], 0xffffffff
jne 0x100ff6b5
push 0x101c5d80
call fcn.10199573
add esp, 4
push 0x1035252c
call fcn.101997d6
add esp, 4
mov ecx, dword [0x10223ca0]
mov edx, 0x10223b60
push 1
push 0
mov al, byte [ecx + 0x3678]
and al, 1
mov byte [0x1034ef34], al
mov eax, dword [ecx + 0x3678]
shr eax, 1
and al, 1
mov byte [0x1034ef35], al
mov eax, dword [ecx + 0x3678]
shr eax, 2
and al, 1
mov byte [0x1034ef36], al
mov eax, dword [ecx + 0x3678]
shr eax, 3
and al, 1
mov byte [0x1034ef37], al
mov eax, dword [ecx + 0x3678]
mov ecx, str.Log_events
shr eax, 4
and al, 1
cmp dword [0x10223b74], 0xf
mov byte [0x1034ef38], al
cmova edx, dword [0x10223b60]
call fcn.1016cf50
test al, al
je 0x100ff7dc
push 0
push 0x101cf4ee
mov ecx, 0x10223b60
call fcn.10022cd0
xor esi, esi
nop dword [eax]
nop word [eax + eax]
mov ecx, dword [esi*4 + 0x101ed1e4]
lea eax, [esp + 0xdc]
push eax
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dl, byte [esi + 0x1034ef34]
push 1
call fcn.1017b8e0
test al, al
je 0x100ff796
cmp byte [esi + 0x1034ef34], 0
sete al
mov byte [esi + 0x1034ef34], al
inc esi
cmp esi, 5
jb 0x100ff750
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x100ff7c0
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x100ff7d0
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
xor esi, esi
nop
test esi, esi
jne 0x100ff7f4
push esi
push 0x101cf4ee
mov ecx, 0x10223b60
call fcn.10022cd0
cmp byte [esi + 0x1034ef34], 0
je 0x100ffa4c
cmp dword [0x10223b70], 0
xorps xmm0, xmm0
mov edx, dword [esi*4 + 0x101ed1e4]
je 0x100ff8b6
or ebx, 8
mov dword [esp + 0x79c], 2
movups xmmword [esp + 0x78c], xmm0
mov eax, 0x202c
mov dword [esp + 0x7a0], 0xf
or ebx, 0x10
mov word [esp + 0x78c], ax
push edx
lea ecx, [esp + 0x790]
mov byte [esp + 0x792], 0
mov dword [esp + 0x20], ebx
call fcn.10020800
mov dword [esp + 0x784], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x774], xmm0
mov dword [esp + 0x788], 0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x774], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x784], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [esp + 0x774]
jmp 0x100ff8fe
mov ecx, edx
mov dword [esp + 0x8c0], 0
or ebx, 0x20
mov dword [esp + 0x8c4], 0
mov dword [esp + 0x1c], ebx
movups xmmword [esp + 0x8b0], xmm0
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ff8e0
sub ecx, edi
push ecx
push edx
lea ecx, [esp + 0x8b8]
call fcn.100278e0
lea eax, [esp + 0x8b0]
push eax
mov ecx, 0x10223b60
call fcn.10020870
test bl, 0x20
je 0x100ff96f
mov ecx, dword [esp + 0x8c4]
and ebx, 0xffffffdf
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x100ff951
mov edx, dword [esp + 0x8b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ff947
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x8c0], 0
mov dword [esp + 0x8c4], 0xf
mov byte [esp + 0x8b0], 0
test bl, 0x10
je 0x100ff9d5
mov ecx, dword [esp + 0x788]
and ebx, 0xffffffef
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x100ff9b7
mov edx, dword [esp + 0x774]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ff9ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x784], 0
mov dword [esp + 0x788], 0xf
mov byte [esp + 0x774], 0
test bl, 8
je 0x100ffa3b
mov ecx, dword [esp + 0x7a0]
and ebx, 0xfffffff7
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x100ffa1d
mov edx, dword [esp + 0x78c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100ffa13
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x79c], 0
mov dword [esp + 0x7a0], 0xf
mov byte [esp + 0x78c], 0
mov ecx, dword [0x10223ca0]
mov eax, dword [ecx + 0x3678]
bts eax, esi
jmp 0x100ffa5b
mov ecx, dword [0x10223ca0]
mov eax, dword [ecx + 0x3678]
btr eax, esi
inc esi
mov dword [ecx + 0x3678], eax
cmp esi, 5
jb 0x100ff7e0
cmp byte [0x101ed357], 0
movups xmm0, xmmword [str.gCDPD]
mov eax, dword [0x101ed354]
mov esi, dword [0x10224d40]
movups xmmword [esp + 0x87c], xmm0
mov dword [esp + 0x894], eax
movq xmm0, qword [0x101ed34c]
movq qword [esp + 0x88c], xmm0
je 0x100ffc34
xor edx, edx
mov dword [esp + 0x10], edx
cmp esi, 2
jl 0x100ffbf0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
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
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 + edx + 0x87c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x87c], 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 + edx + 0x880]
xorps xmm1, xmm0
movd dword [esp + edx + 0x880], xmm1
add edx, 8
cmp edx, 0x18
jl 0x100ffae0
mov dword [esp + 0x10], edx
cmp edx, 0x1c
jge 0x100ffc34
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x87c], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x1c
jl 0x100ffbf0
mov ecx, dword [0x10223ca0]
add ecx, 0x367c
mov dword [esp + 0x14], ecx
jmp 0x100ffc42
mov eax, dword [0x10223ca0]
add eax, 0x367c
mov dword [esp + 0x14], eax
mov ax, word [0x101eeba4]
xor edx, edx
mov word [esp + 0x378], ax
mov al, byte [0x101eeba6]
mov byte [esp + 0x37a], al
mov dword [esp + 0x10], edx
movups xmm0, xmmword [str.bGBWW]
movups xmmword [esp + 0x368], xmm0
cmp esi, 2
jl 0x100ffdb0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
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
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 + edx + 0x368]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x368], 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 + edx + 0x36c]
xorps xmm1, xmm0
movd dword [esp + edx + 0x36c], xmm1
add edx, 8
cmp edx, 0x10
jl 0x100ffca0
mov dword [esp + 0x10], edx
cmp edx, 0x13
jge 0x100ffde2
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x368], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x13
jl 0x100ffdb0
xor esi, esi
lea edx, [esp + 0x87c]
cmp byte [esp + 0x87c], 0
je 0x100ffe11
mov ecx, edx
lea edi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100ffe00
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x100ffdf5
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x87c]
push 1
push 0xffffffffffffffff
push esi
push eax
push 0x1016ddf0
lea ecx, [esp + 0x37c]
call fcn.1016de50
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x100ffe57
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x100ffe67
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x100ffedd
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov ax, word [0x101eed38]
xor ebx, ebx
movq xmm0, qword [0x101eed30]
mov word [esp + 0x188], ax
mov al, byte [0x101eed3a]
mov byte [esp + 0x18a], al
movq qword [esp + 0x180], xmm0
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 + 0x180], cl
inc ebx
cmp ebx, 0xb
jl 0x100fff10
xorps xmm0, xmm0
mov dword [esp + 0x600], 0
lea ecx, [esp + 0x180]
mov dword [esp + 0x604], 0
movups xmmword [esp + 0x5f0], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100fff67
sub ecx, edx
lea eax, [esp + 0x180]
push ecx
push eax
lea ecx, [esp + 0x5f8]
call fcn.100278e0
mov eax, dword [0x1034f0f0]
lea ecx, [esp + 0x5f0]
cmp dword [esp + 0x604], 0xf
cmova ecx, dword [esp + 0x5f0]
mov esi, dword [eax + 0x1bec]
mov eax, dword [esi + 0xe8]
add esi, 0xe0
mov edx, dword [esi]
push dword [eax + edx*4 - 4]
xor edx, edx
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x100fffef
inc ecx
test edi, edi
je 0x100fffdd
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100fffe2
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]
mov dword [eax + ecx*4], edx
inc dword [esi]
mov ecx, dword [esp + 0x604]
cmp ecx, 0xf
jbe 0x10100039
mov edx, dword [esp + 0x5f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1010002f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov ax, word [0x101ed588]
movq xmm0, qword [str.eR_PDZYKQ_]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x600], 0
mov dword [esp + 0x604], 0xf
mov byte [esp + 0x5f0], 0
movq qword [esp + 0x4c4], xmm0
mov word [esp + 0x4cc], ax
test ah, ah
je 0x101000ae
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 + 0x4c4], cl
inc ebx
cmp ebx, 0xa
jl 0x10100082
xorps xmm0, xmm0
mov dword [esp + 0x618], 0
lea ecx, [esp + 0x4c4]
mov dword [esp + 0x61c], 0
movups xmmword [esp + 0x608], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101000e0
sub ecx, edx
lea eax, [esp + 0x4c4]
push ecx
push eax
lea ecx, [esp + 0x610]
call fcn.100278e0
cmp dword [esp + 0x61c], 0xf
lea ecx, [esp + 0x608]
lea edx, [esi + 0x3654]
cmova ecx, dword [esp + 0x608]
call fcn.1016c3b0
mov ecx, dword [esp + 0x61c]
cmp ecx, 0xf
jbe 0x1010015c
mov edx, dword [esp + 0x608]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10100152
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov ecx, dword [0x1034f0f0]
mov dword [esp + 0x618], 0
mov dword [esp + 0x61c], 0xf
mov byte [esp + 0x608], 0
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x101001e4
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
push 1
push 0
lea edx, [esp + 0x6c]
mov dword [esp + 0x6c], 0
mov ecx, 0x101eb38c
mov dword [esp + 0x70], 0
call fcn.1016ab10
test al, al
je 0x10100258
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 0x10100240
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x1010024f
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 0x1010027b
mov dword [esi + 0x1c74], 0
jmp 0x10100d2b
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 0x101002ab
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101002ba
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x10100d2b
mov eax, dword [0x101edfd4]
movq xmm0, qword [0x101edfcc]
mov esi, dword [0x10223ca0]
mov edi, dword [0x10224d40]
mov dword [esp + 0x2d0], eax
mov ax, word [0x101edfd8]
movq qword [esp + 0x2c8], xmm0
mov word [esp + 0x2d4], ax
test ah, ah
je 0x1010044e
xor eax, eax
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x10100420
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101edfcc]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2c8], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x2cc]
xorps xmm1, xmm0
movd dword [esp + 0x2cc], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x2c8], cl
inc ebx
cmp ebx, 0xe
jl 0x10100424
xorps xmm0, xmm0
mov dword [esp + 0x630], 0
lea ecx, [esp + 0x2c8]
mov dword [esp + 0x634], 0
movups xmmword [esp + 0x620], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10100480
sub ecx, edx
lea eax, [esp + 0x2c8]
push ecx
push eax
lea ecx, [esp + 0x628]
call fcn.100278e0
cmp dword [esp + 0x634], 0xf
lea ecx, [esp + 0x620]
lea edx, [esi + 0x3658]
cmova ecx, dword [esp + 0x620]
call fcn.1016c3b0
mov ecx, dword [esp + 0x634]
cmp ecx, 0xf
jbe 0x101004fc
mov edx, dword [esp + 0x620]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x101004f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov ax, word [0x101ee2b0]
movq xmm0, qword [0x101ee2a8]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x630], 0
mov dword [esp + 0x634], 0xf
mov byte [esp + 0x620], 0
movq qword [esp + 0x4d0], xmm0
mov word [esp + 0x4d8], ax
test ah, ah
je 0x10100571
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 + 0x4d0], cl
inc ebx
cmp ebx, 0xa
jl 0x10100545
xorps xmm0, xmm0
mov dword [esp + 0x4a4], 0
lea ecx, [esp + 0x4d0]
mov dword [esp + 0x4a8], 0
movups xmmword [esp + 0x494], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101005a0
sub ecx, edx
lea eax, [esp + 0x4d0]
push ecx
push eax
lea ecx, [esp + 0x49c]
call fcn.100278e0
cmp dword [esp + 0x4a8], 0xf
lea ecx, [esp + 0x494]
lea edx, [esi + 0x3659]
cmova ecx, dword [esp + 0x494]
call fcn.1016c3b0
mov ecx, dword [esp + 0x4a8]
cmp ecx, 0xf
jbe 0x1010061c
mov edx, dword [esp + 0x494]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10100612
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov esi, dword [0x10223ca0]
mov al, byte [0x101eed00]
add esi, 0x3656
movq xmm0, qword [0x101eecf8]
xor ebx, ebx
mov byte [esp + 0x1ac], al
movq qword [esp + 0x1a4], xmm0
mov byte [esp + 0x494], 0
mov dword [esp + 0x4a8], 0xf
mov dword [esp + 0x4a4], 0
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 + 0x1a4], cl
inc ebx
cmp ebx, 9
jl 0x10100665
xorps xmm0, xmm0
mov dword [esp + 0x648], 0
lea ecx, [esp + 0x1a4]
mov dword [esp + 0x64c], 0
movups xmmword [esp + 0x638], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101006c0
sub ecx, edx
lea eax, [esp + 0x1a4]
push ecx
push eax
lea ecx, [esp + 0x640]
call fcn.100278e0
cmp dword [esp + 0x64c], 0xf
lea ecx, [esp + 0x638]
mov edx, esi
cmova ecx, dword [esp + 0x638]
call fcn.1016c3b0
mov ecx, dword [esp + 0x64c]
cmp ecx, 0xf
jbe 0x10100738
mov edx, dword [esp + 0x638]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1010072e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov ax, word [0x101edf28]
movq xmm0, qword [0x101edf20]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x648], 0
mov dword [esp + 0x64c], 0xf
mov byte [esp + 0x638], 0
movq qword [esp + 0x4dc], xmm0
mov word [esp + 0x4e4], ax
test ah, ah
je 0x101007ad
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 + 0x4dc], cl
inc ebx
cmp ebx, 0xa
jl 0x10100781
xorps xmm0, xmm0
mov dword [esp + 0x660], 0
lea ecx, [esp + 0x4dc]
mov dword [esp + 0x664], 0
movups xmmword [esp + 0x650], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101007d8
sub ecx, edx
lea eax, [esp + 0x4dc]
push ecx
push eax
lea ecx, [esp + 0x658]
call fcn.100278e0
cmp dword [esp + 0x664], 0xf
lea ecx, [esp + 0x650]
lea edx, [esi + 0x3657]
cmova ecx, dword [esp + 0x650]
call fcn.1016c3b0
mov ecx, dword [esp + 0x664]
cmp ecx, 0xf
jbe 0x10100854
mov edx, dword [esp + 0x650]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1010084a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov eax, dword [0x101eeb14]
movq xmm0, qword [0x101eeb0c]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x2c0], eax
mov ax, word [0x101eeb18]
mov dword [esp + 0x660], 0
mov dword [esp + 0x664], 0xf
mov byte [esp + 0x650], 0
movq qword [esp + 0x2b8], xmm0
mov word [esp + 0x2c4], ax
test ah, ah
je 0x101009ec
xor eax, eax
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x101009be
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101eeb0c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2b8], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x2bc]
xorps xmm1, xmm0
movd dword [esp + 0x2bc], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x2b8], cl
inc ebx
cmp ebx, 0xe
jl 0x101009c2
xorps xmm0, xmm0
mov dword [esp + 0x4bc], 0
lea ecx, [esp + 0x2b8]
mov dword [esp + 0x4c0], 0
movups xmmword [esp + 0x4ac], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10100a17
sub ecx, edx
lea eax, [esp + 0x2b8]
push ecx
push eax
lea ecx, [esp + 0x4b4]
call fcn.100278e0
cmp dword [esp + 0x4c0], 0xf
lea ecx, [esp + 0x4ac]
lea edx, [esi + 0x365a]
cmova ecx, dword [esp + 0x4ac]
call fcn.1016c3b0
mov ecx, dword [esp + 0x4c0]
cmp ecx, 0xf
jbe 0x10100a93
mov edx, dword [esp + 0x4ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10100a89
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov eax, dword [0x101ed084]
mov esi, dword [0x10223ca0]
movq xmm0, qword [0x101ed07c]
add esi, 0x365b
mov dword [esp + 0x140], eax
mov al, byte [0x101ed088]
mov byte [esp + 0x144], al
xor eax, eax
movq qword [esp + 0x138], xmm0
mov byte [esp + 0x4ac], 0
mov dword [esp + 0x4c0], 0xf
mov dword [esp + 0x4bc], 0
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x10100bf9
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101ed07c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x138], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x13c]
xorps xmm1, xmm0
movd dword [esp + 0x13c], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x138], cl
inc ebx
cmp ebx, 0xd
jl 0x10100c00
xorps xmm0, xmm0
mov dword [esp + 0x678], 0
lea ecx, [esp + 0x138]
mov dword [esp + 0x67c], 0
movups xmmword [esp + 0x668], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10100c55
sub ecx, edx
lea eax, [esp + 0x138]
push ecx
push eax
lea ecx, [esp + 0x670]
call fcn.100278e0
cmp dword [esp + 0x67c], 0xf
lea ecx, [esp + 0x668]
mov edx, esi
cmova ecx, dword [esp + 0x668]
call fcn.1016c3b0
mov ecx, dword [esp + 0x67c]
cmp ecx, 0xf
jbe 0x10100ccd
mov edx, dword [esp + 0x668]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10100cc3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov esi, dword [0x1034f0f0]
mov dword [esp + 0x678], 0
mov dword [esp + 0x67c], 0xf
mov byte [esp + 0x668], 0
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10100d0f
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10100d1f
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
mov ecx, dword [0x1034f0f0]
xor edx, edx
mov eax, dword [ecx + 0x1bec]
dec dword [eax + 0xe0]
mov esi, dword [ecx + 0x1bec]
mov ecx, dword [esi + 0xe0]
add esi, 0xe0
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.Player_List
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x10100d91
inc ecx
test edi, edi
je 0x10100d7f
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10100d84
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov eax, dword [esi + 8]
mov ecx, dword [esi]
mov edx, dword [esp + 0x14]
mov dword [eax + ecx*4], edx
inc dword [esi]
cmp byte [0x101eec4b], 0
movq xmm0, qword [str.b_ULSE]
mov eax, dword [0x101eec48]
mov esi, dword [0x10223ca0]
mov edi, dword [0x10224d40]
movq qword [esp + 0x3bc], xmm0
mov dword [esp + 0x3c4], eax
je 0x10100f1a
xor eax, eax
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x10100ee8
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.b_ULSE]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x3bc], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x3c0]
xorps xmm1, xmm0
movd dword [esp + 0x3c0], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x3bc], cl
inc ebx
cmp ebx, 0xc
jl 0x10100ef0
lea edx, [esi + 0x3764]
lea ecx, [esp + 0x3bc]
call fcn.1016c3b0
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10100f96
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
push 1
push 0
lea edx, [esp + 0x74]
mov dword [esp + 0x74], 0
mov ecx, 0x101eb38c
mov dword [esp + 0x78], 0
call fcn.1016ab10
test al, al
je 0x1010100a
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 0x10100ff2
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10101001
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 0x1010102d
mov dword [esi + 0x1c74], 0
jmp 0x10101342
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 0x1010105d
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x1010106c
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x10101342
movq xmm0, qword [str.aGQT_]
xor ebx, ebx
mov al, byte [0x101ee41c]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x514], xmm0
mov byte [esp + 0x51c], al
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 + 0x514], cl
inc ebx
cmp ebx, 9
jl 0x101010a5
lea edx, [esi + 0x3765]
lea ecx, [esp + 0x514]
call fcn.1016c3b0
mov eax, dword [str._RZ6]
xor edx, edx
mov esi, dword [0x10223ca0]
mov dword [esp + 0x148], eax
mov al, byte [0x101ed60c]
mov byte [esp + 0x14c], al
mov dword [esp + 0x10], edx
nop word [eax + eax]
mov eax, 0x29e4129f
mul edx
mov eax, dword [esp + 0x10]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x10]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x148], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 5
jl 0x10101110
lea edx, [esi + 0x3766]
lea ecx, [esp + 0x148]
call fcn.1016c3b0
mov eax, dword [str.eZZF6]
xor ebx, ebx
mov esi, dword [0x10223ca0]
mov dword [esp + 0x124], eax
mov al, byte [0x101ee69c]
mov byte [esp + 0x128], al
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 + 0x124], cl
inc ebx
cmp ebx, 5
jl 0x10101180
lea edx, [esi + 0x3767]
lea ecx, [esp + 0x124]
call fcn.1016c3b0
mov eax, dword [str.zVUYB_8]
xor edx, edx
mov esi, dword [0x10223ca0]
mov dword [esp + 0x1d0], eax
mov ax, word [0x101ee688]
mov word [esp + 0x1d4], ax
mov al, byte [0x101ee68a]
mov byte [esp + 0x1d6], al
mov dword [esp + 0x10], edx
mov eax, 0x29e4129f
mul edx
mov eax, dword [esp + 0x10]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x10]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x1d0], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 7
jl 0x101011f0
lea edx, [esi + 0x3769]
lea ecx, [esp + 0x1d0]
call fcn.1016c3b0
mov eax, dword [str.sAYZD7]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x1e0], eax
mov ax, word [0x101edd38]
mov word [esp + 0x1e4], ax
test ah, ah
je 0x1010128c
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 + 0x1e0], cl
inc ebx
cmp ebx, 6
jl 0x10101260
lea edx, [esi + 0x376a]
lea ecx, [esp + 0x1e0]
call fcn.1016c3b0
mov eax, dword [0x101ee9cc]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x1e8], eax
mov ax, word [0x101ee9d0]
mov word [esp + 0x1ec], ax
test ah, ah
je 0x101012f0
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 + 0x1e8], cl
inc ebx
cmp ebx, 6
jl 0x101012c4
lea edx, [esi + 0x3768]
lea ecx, [esp + 0x1e8]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10101326
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10101336
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]
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x101013bd
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov eax, dword [0x101eddac]
movq xmm0, qword [str.vAUB]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x438], eax
mov ax, word [0x101eddb0]
movq qword [esp + 0x430], xmm0
mov word [esp + 0x43c], ax
test ah, ah
je 0x1010153a
xor eax, eax
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x10101509
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.vAUB]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x430], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x434]
xorps xmm1, xmm0
movd dword [esp + 0x434], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x430], cl
inc ebx
cmp ebx, 0xe
jl 0x10101510
lea edx, [esi + 0x37d8]
lea ecx, [esp + 0x430]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [esi + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x101015b6
movss xmm0, dword [esi + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov esi, dword [esi + 0x1bec]
xor edx, edx
add esi, 0xe0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.Draw_velocity
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x10101606
inc ecx
test edi, edi
je 0x101015f4
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x101015f9
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 + 0x1c]
inc dword [esi]
mov ecx, 0x101eb38c
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
call fcn.1016ab10
test al, al
je 0x10101688
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 0x10101670
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x1010167f
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 0x101016ab
mov dword [esi + 0x1c74], 0
jmp 0x101017e6
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 0x101016db
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x101016ea
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x101017e6
push 0
push str._.3f
lea eax, [esp + 0x1c]
mov dword [esp + 0x18], 0
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x20], 0x3f800000
push eax
mov eax, dword [0x10223ca0]
mov edx, 8
add eax, 0x37dc
mov ecx, str.Position
push eax
call fcn.1016fbe0
push 0
push str._.3f
lea eax, [esp + 0x1c]
mov dword [esp + 0x18], 0
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x20], 0x3f800000
push eax
mov eax, dword [0x10223ca0]
mov edx, 8
add eax, 0x37e0
mov ecx, str.Alpha
push eax
call fcn.1016fbe0
mov eax, dword [0x10223ca0]
push 0
push 0
push 0
lea ecx, [eax + 0x37f9]
push ecx
lea ecx, [eax + 0x37f4]
push ecx
lea ecx, [eax + 0x37f8]
push ecx
push 0
lea edx, [eax + 0x37e4]
mov ecx, str.Force_color
call fcn.100be3c0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x101017ca
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x101017da
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
mov eax, dword [0x1034f0f0]
xor edx, edx
mov dword [esp + 0x10], edx
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov esi, dword [0x10223ca0]
movups xmm0, xmmword [str.yVMWYVJ_]
mov al, byte [0x101ee4f8]
add esi, 0x37fc
cmp dword [0x10224d40], 2
movups xmmword [esp + 0x2a4], xmm0
mov byte [esp + 0x2b4], al
jl 0x10101970
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x2a4]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x2a4], 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 + edx + 0x2a8]
xorps xmm1, xmm0
movd dword [esp + edx + 0x2a8], xmm1
add edx, 8
cmp edx, 0x10
jl 0x10101860
mov dword [esp + 0x10], edx
cmp edx, 0x11
jge 0x101019a2
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x2a4], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x11
jl 0x10101970
mov edx, esi
lea ecx, [esp + 0x2a4]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [esi + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10101a1a
movss xmm0, dword [esi + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov esi, dword [esi + 0x1bec]
xor edx, edx
add esi, 0xe0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.Keyboard_display
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x10101a6a
inc ecx
test edi, edi
je 0x10101a58
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10101a5d
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 + 0x1c]
inc dword [esi]
mov ecx, 0x101eb38c
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
call fcn.1016ab10
test al, al
je 0x10101aec
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 0x10101ad4
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10101ae3
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 0x10101b0f
mov dword [esi + 0x1c74], 0
jmp 0x10101d9b
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 0x10101b3f
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10101b4e
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x10101d9b
push 0
push str._.3f
lea eax, [esp + 0x1c]
mov dword [esp + 0x18], 0
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x20], 0x3f800000
push eax
mov eax, dword [0x10223ca0]
mov edx, 8
add eax, 0x3800
mov ecx, str.Position
push eax
call fcn.1016fbe0
mov eax, dword [0x101ee208]
movq xmm0, qword [0x101ee200]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x3f0], eax
mov ax, word [0x101ee20c]
mov word [esp + 0x3f4], ax
mov al, byte [0x101ee20e]
mov byte [esp + 0x3f6], al
xor eax, eax
cmp dword [0x10224d40], 2
movq qword [esp + 0x3e8], xmm0
mov dword [esp + 0x14], eax
jl 0x10101cf1
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101ee200]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x3e8], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x3ec]
xorps xmm1, xmm0
movd dword [esp + 0x3ec], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x3e8], cl
inc ebx
cmp ebx, 0xf
jl 0x10101cf5
lea edx, [esi + 0x3804]
lea ecx, [esp + 0x3e8]
call fcn.1016c3b0
mov edx, dword [0x10223ca0]
mov ecx, str.Color
push 0
push 0
add edx, 0x3805
push 0
push 0
lea eax, [edx + 0x10]
push eax
lea eax, [edx + 0x14]
push eax
lea eax, [edx + 0xc]
push eax
call fcn.100be3c0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10101d7f
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10101d8f
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]
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10101e16
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov ax, word [0x101eec3c]
mov esi, dword [0x10223ca0]
movq xmm0, qword [str._PUVLVHH_]
add esi, 0x3394
mov word [esp + 0x25c], ax
xor ebx, ebx
mov al, byte [0x101eec3e]
mov byte [esp + 0x25e], al
movq qword [esp + 0x254], xmm0
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 + 0x254], cl
inc ebx
cmp ebx, 0xb
jl 0x10101e50
mov edx, esi
lea ecx, [esp + 0x254]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [esi + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10101ef4
movss xmm0, dword [esi + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov esi, dword [esi + 0x1bec]
xor edx, edx
add esi, 0xe0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.COCKASJIFHAEWIGHUW
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x10101f44
inc ecx
test edi, edi
je 0x10101f32
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10101f37
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 + 0x1c]
inc dword [esi]
mov ecx, 0x101eb38c
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
call fcn.1016ab10
test al, al
je 0x10101fc6
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 0x10101fae
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10101fbd
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 0x10101fe9
mov dword [esi + 0x1c74], 0
jmp 0x10102a17
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 0x10102019
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10102028
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x10102a17
mov eax, dword [0x10224d4c]
mov ecx, dword [esp + 0x44]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x10352590]
cmp eax, dword [ecx + 4]
jle 0x10102085
push 0x10352590
call fcn.10199827
add esp, 4
cmp dword [0x10352590], 0xffffffff
jne 0x10102085
push 0x101c5d20
call fcn.10199573
add esp, 4
push 0x10352590
call fcn.101997d6
add esp, 4
mov esi, dword [0x10223ca0]
xor al, al
mov byte [esp + 0x3f], al
mov eax, dword [str.qXZD7]
mov dword [esp + 0x1f0], eax
mov ax, word [0x101edd8c]
mov word [esp + 0x1f4], ax
test ah, ah
je 0x101020dd
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 + 0x1f0], cl
inc ebx
cmp ebx, 6
jl 0x101020b1
push 0
push 0
push 0
push 0
lea eax, [esi + 0x33ac]
push eax
lea eax, [esi + 0x33b0]
push eax
lea eax, [esi + 0x33a8]
push eax
lea edx, [esi + 0x339c]
lea ecx, [esp + 0x20c]
call fcn.100be3c0
movups xmm0, xmmword [0x101eeaf0]
mov ax, word [0x101eeb08]
xor edx, edx
mov edi, dword [0x10224d40]
mov word [esp + 0x728], ax
mov al, byte [0x101eeb0a]
mov byte [esp + 0x72a], al
mov dword [esp + 0x10], edx
movups xmmword [esp + 0x710], xmm0
movq xmm0, qword [0x101eeb00]
movq qword [esp + 0x720], xmm0
cmp edi, 2
jl 0x101022b0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x710]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x710], 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 + edx + 0x714]
xorps xmm1, xmm0
movd dword [esp + edx + 0x714], xmm1
add edx, 8
cmp edx, 0x18
jl 0x10102180
mov dword [esp + 0x10], edx
cmp edx, 0x1b
jl 0x101022b0
mov ecx, dword [0x10223ca0]
mov al, byte [0x101eedc8]
add ecx, 0x3390
mov dword [esp + 0x14], ecx
mov byte [esp + 0x418], al
jmp 0x101022fc
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x710], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x1b
jl 0x101022b0
mov al, byte [0x101eedc8]
mov byte [esp + 0x418], al
mov eax, dword [0x10223ca0]
add eax, 0x3390
mov dword [esp + 0x14], eax
movups xmm0, xmmword [str._PUVLVHH]
xor edx, edx
mov dword [esp + 0x10], edx
movups xmmword [esp + 0x408], xmm0
cmp edi, 2
jl 0x10102450
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
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
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 + edx + 0x408]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x408], 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 + edx + 0x40c]
xorps xmm1, xmm0
movd dword [esp + edx + 0x40c], xmm1
add edx, 8
cmp edx, 0x10
jl 0x10102340
mov dword [esp + 0x10], edx
cmp edx, 0x11
jge 0x10102482
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x408], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x11
jl 0x10102450
xor esi, esi
lea edx, [esp + 0x710]
cmp byte [esp + 0x710], 0
je 0x101024b7
mov ecx, edx
lea edi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101024a0
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x10102495
mov edi, dword [0x10224d40]
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x710]
push 1
push 0xffffffffffffffff
push esi
push eax
push 0x1016ddf0
lea ecx, [esp + 0x41c]
call fcn.1016de50
mov esi, dword [0x10223ca0]
xor edx, edx
mov ecx, 1
mov eax, ecx
and eax, dword [esi + 0x3398]
cmp eax, ecx
sete al
rol ecx, 1
mov byte [edx + 0x1034ef54], al
inc edx
cmp edx, 0x15
jb 0x101024e6
cmp dword [0x10223ba8], 0xf
mov esi, 0x10223b94
mov eax, dword [str.ISSJ_]
movq xmm0, qword [str.e_UA]
mov dword [esp + 0x178], eax
mov al, byte [0x101ee6b8]
movq qword [esp + 0x170], xmm0
mov byte [esp + 0x17c], al
jbe 0x1010253e
mov esi, dword [0x10223b94]
xor eax, eax
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x10102651
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.e_UA]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x170], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x174]
xorps xmm1, xmm0
movd dword [esp + 0x174], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x170], cl
inc ebx
cmp ebx, 0xd
jl 0x10102655
push 1
push 0
mov edx, esi
lea ecx, [esp + 0x178]
call fcn.1016cf50
mov ebx, dword [esp + 0x1c]
test al, al
je 0x10102733
push 0
push 0x101cf4ee
mov ecx, 0x10223b94
call fcn.10022cd0
xor esi, esi
mov ecx, dword [esi*4 + 0x101ed598]
lea eax, [esp + 0x74]
push eax
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dl, byte [esi + 0x1034ef54]
push 1
call fcn.1017b8e0
test al, al
je 0x101026ed
cmp byte [esi + 0x1034ef54], 0
sete al
mov byte [esi + 0x1034ef54], al
inc esi
cmp esi, 0x15
jb 0x101026b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10102717
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10102727
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
xor esi, esi
cmp byte [esp + 0x3f], 0
jne 0x10102752
push 0
push 0x101cf4ee
mov ecx, 0x10223b94
call fcn.10022cd0
mov byte [esp + 0x3f], 1
cmp byte [esi + 0x1034ef54], 0
je 0x101029b8
cmp dword [0x10223ba4], 0
xorps xmm0, xmm0
mov edx, dword [esi*4 + 0x101ed598]
je 0x10102817
or ebx, 0x40
mov dword [esp + 0x7cc], 2
movups xmmword [esp + 0x7bc], xmm0
mov eax, 0x202c
mov dword [esp + 0x7d0], 0xf
or ebx, 0x80
mov word [esp + 0x7bc], ax
push edx
lea ecx, [esp + 0x7c0]
mov byte [esp + 0x7c2], 0
mov dword [esp + 0x20], ebx
call fcn.10020800
mov dword [esp + 0x7b4], 0
xorps xmm0, xmm0
movups xmmword [esp + 0x7a4], xmm0
mov dword [esp + 0x7b8], 0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x7a4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esp + 0x7b4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [esp + 0x7a4]
jmp 0x10102862
mov ecx, edx
mov dword [esp + 0x8d8], 0
or ebx, 0x100
mov dword [esp + 0x8dc], 0
mov dword [esp + 0x1c], ebx
movups xmmword [esp + 0x8c8], xmm0
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10102844
sub ecx, edi
push ecx
push edx
lea ecx, [esp + 0x8d0]
call fcn.100278e0
lea eax, [esp + 0x8c8]
push eax
mov ecx, 0x10223b94
call fcn.10020870
test ebx, 0x100
je 0x101028d9
mov ecx, dword [esp + 0x8dc]
and ebx, 0xfffffeff
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x101028bb
mov edx, dword [esp + 0x8c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x101028b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x8d8], 0
mov dword [esp + 0x8dc], 0xf
mov byte [esp + 0x8c8], 0
test bl, bl
jns 0x10102941
mov ecx, dword [esp + 0x7b8]
and ebx, 0xffffff7f
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x10102923
mov edx, dword [esp + 0x7a4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10102919
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x7b4], 0
mov dword [esp + 0x7b8], 0xf
mov byte [esp + 0x7a4], 0
test bl, 0x40
je 0x101029a7
mov ecx, dword [esp + 0x7d0]
and ebx, 0xffffffbf
mov dword [esp + 0x1c], ebx
cmp ecx, 0xf
jbe 0x10102989
mov edx, dword [esp + 0x7bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1010297f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov dword [esp + 0x7cc], 0
mov dword [esp + 0x7d0], 0xf
mov byte [esp + 0x7bc], 0
mov ecx, dword [0x10223ca0]
mov eax, dword [ecx + 0x3398]
bts eax, esi
jmp 0x101029c7
mov ecx, dword [0x10223ca0]
mov eax, dword [ecx + 0x3398]
btr eax, esi
inc esi
mov dword [ecx + 0x3398], eax
cmp esi, 0x15
jb 0x10102735
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x101029fb
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10102a0b
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]
mov esi, dword [0x10223ca0]
mov ax, word [0x101ee044]
add esi, 0xacf
movq xmm0, qword [0x101ee03c]
movq qword [esp + 0x560], xmm0
mov word [esp + 0x568], ax
test ah, ah
je 0x10102a8c
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 + 0x560], cl
inc ebx
cmp ebx, 0xa
jl 0x10102a60
lea eax, [esi + 0x16]
mov edx, esi
push eax
push 0
push 0
lea eax, [esi + 0x15]
push eax
lea eax, [esi + 0x10]
push eax
lea eax, [esi + 0x14]
push eax
lea eax, [esi + 0xc]
push eax
lea ecx, [esp + 0x57c]
call fcn.100be3c0
mov eax, dword [0x1034f0f0]
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.aa_arrowss
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x10102b0a
inc ecx
test edi, edi
je 0x10102af8
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10102afd
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]
mov dword [eax + ecx*4], edx
inc dword [esi]
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10102b82
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
push 1
push 0
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
mov ecx, 0x101eb38c
mov dword [esp + 0x20], 0
call fcn.1016ab10
test al, al
je 0x10102bf6
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 0x10102bde
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10102bed
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 0x10102ede
mov dword [esi + 0x1c74], 0
mov edi, dword [0x10224d40]
mov eax, dword [0x1034f0f0]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10102c99
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov eax, dword [0x101ed378]
mov esi, dword [0x10223ca0]
movq xmm0, qword [str.s__evQT]
add esi, 0x199e
mov dword [esp + 0x168], eax
mov ax, word [0x101ed37c]
mov word [esp + 0x16c], ax
mov al, byte [0x101ed37e]
mov byte [esp + 0x16e], al
xor eax, eax
movq qword [esp + 0x160], xmm0
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x10102def
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.s__evQT]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x160], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x164]
xorps xmm1, xmm0
movd dword [esp + 0x164], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x160], cl
inc ebx
cmp ebx, 0xf
jl 0x10102df3
mov edx, esi
lea ecx, [esp + 0x160]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [esi + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10102e95
movss xmm0, dword [esi + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov esi, dword [esi + 0x1bec]
xor edx, edx
add esi, 0xe0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.FOAGDOAS
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x101036a7
inc ecx
test edi, edi
je 0x10103695
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x1010369a
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 0x10102f0e
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10102f1d
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x10102c18
movups xmm0, xmmword [str.vVGLXT8t_UIRL_A]
mov esi, dword [0x10224d40]
movups xmmword [esp + 0x46c], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x101030c1
cmp esi, 2
jl 0x10103095
movaps xmm0, xmmword [0x101f7db0]
xor ecx, ecx
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov edx, dword [esp + 0x20]
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 + 0x46c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x46c], 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 + 0x470]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x470], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x10102f90
jmp 0x101030c1
xor ebx, ebx
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 + 0x46c], cl
inc ebx
cmp ebx, 0x10
jl 0x10103097
mov eax, dword [0x10223ca0]
movq xmm0, qword [str.sAFZAD]
add eax, 0xaec
cmp byte [0x101eee13], 0
mov dword [esp + 0x10], eax
mov eax, dword [0x101eee10]
movq qword [esp + 0x3b0], xmm0
mov dword [esp + 0x3b8], eax
je 0x1010323a
xor eax, eax
mov dword [esp + 0x14], eax
cmp esi, 2
jl 0x1010320c
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.sAFZAD]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x3b0], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x3b4]
xorps xmm1, xmm0
movd dword [esp + 0x3b4], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x3b0], cl
inc ebx
cmp ebx, 0xc
jl 0x10103210
xor esi, esi
lea edx, [esp + 0x46c]
cmp byte [esp + 0x46c], 0
je 0x10103266
nop dword [eax]
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10103255
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x10103250
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x46c]
push 1
push 0xffffffffffffffff
push esi
push eax
push 0x1016ddf0
lea ecx, [esp + 0x3c4]
call fcn.1016de50
mov eax, dword [0x101ee388]
xor edx, edx
movups xmm0, xmmword [0x101ee378]
mov edi, dword [0x10224d40]
mov dword [esp + 0x73c], eax
mov al, byte [0x101ee38c]
mov byte [esp + 0x740], al
mov dword [esp + 0x10], edx
movups xmmword [esp + 0x72c], xmm0
cmp edi, 2
jl 0x10103400
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
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
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 + edx + 0x72c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x72c], 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 + edx + 0x730]
xorps xmm1, xmm0
movd dword [esp + edx + 0x730], xmm1
add edx, 8
cmp edx, 0x10
jl 0x101032f0
mov dword [esp + 0x10], edx
cmp edx, 0x15
jge 0x10103432
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x72c], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x15
jl 0x10103400
push 0
lea eax, [esp + 0x730]
mov dword [esp + 0x14], 0
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0x437a0000
push eax
lea eax, [esp + 0x1c]
mov edx, 8
push eax
mov eax, dword [0x10223ca0]
mov ecx, 0x101cf4ee
add eax, 0xae8
push eax
call fcn.1016fbe0
movups xmm0, xmmword [0x101ecf70]
mov ax, word [0x101ecf80]
mov word [esp + 0x5a0], ax
movups xmmword [esp + 0x590], xmm0
test ah, ah
je 0x10103612
xor edx, edx
mov dword [esp + 0x10], edx
cmp edi, 2
jl 0x101035e0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
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
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 + edx + 0x590]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x590], 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 + edx + 0x594]
xorps xmm1, xmm0
movd dword [esp + edx + 0x594], xmm1
add edx, 8
cmp edx, 0x10
jl 0x101034d0
mov dword [esp + 0x10], edx
cmp edx, 0x12
jge 0x10103612
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x590], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x12
jl 0x101035e0
push 0
lea eax, [esp + 0x594]
mov dword [esp + 0x14], 0
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0x437a0000
push eax
lea eax, [esp + 0x1c]
mov edx, 8
push eax
mov eax, dword [0x10223ca0]
mov ecx, 0x101d0eac
add eax, 0xaf0
push eax
call fcn.1016fbe0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10103674
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10103684
mov byte [esi + 0x1b9e], 1
call fcn.1015a560
mov byte [esi + 0x1b9e], 0
jmp 0x10102c1e
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 + 0x1c]
inc dword [esi]
mov ecx, 0x101eb38c
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
call fcn.1016ab10
test al, al
je 0x10103729
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 0x10103711
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x10103720
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 0x1010374c
mov dword [esi + 0x1c74], 0
jmp 0x10103a5f
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 0x1010377c
mov dword [esi + 0x1c28], eax
cmp dword [esi + 0x1c5c], eax
jne 0x1010378b
mov byte [esi + 0x1c60], 1
mov edx, 0x141
mov ecx, eax
call fcn.1015c4e0
test al, al
je 0x10103a5f
mov ax, word [0x101ee438]
xor ebx, ebx
movq xmm0, qword [str._VUY]
mov esi, dword [0x10223ca0]
mov word [esp + 0x468], ax
mov al, byte [0x101ee43a]
movq qword [esp + 0x460], xmm0
mov byte [esp + 0x46a], al
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 + 0x460], cl
inc ebx
cmp ebx, 0xb
jl 0x101037d2
xorps xmm0, xmm0
mov dword [esp + 0x48c], 0
lea ecx, [esp + 0x460]
mov dword [esp + 0x490], 0
movups xmmword [esp + 0x47c], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10103830
sub ecx, edx
lea eax, [esp + 0x460]
push ecx
push eax
lea ecx, [esp + 0x484]
call fcn.100278e0
cmp dword [esp + 0x490], 0xf
lea eax, [esi + 0x19ab]
push 0
push 0
push 0
push 0
push eax
lea eax, [esi + 0x19af]
push eax
lea ecx, [esp + 0x494]
cmova ecx, dword [esp + 0x494]
lea edx, [esi + 0x199f]
push 0
call fcn.100be3c0
mov ecx, dword [esp + 0x490]
cmp ecx, 0xf
jbe 0x101038c4
mov edx, dword [esp + 0x47c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x101038ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov ax, word [0x101ed16c]
mov esi, dword [0x10223ca0]
movq xmm0, qword [0x101ed164]
add esi, 0x19b0
mov word [esp + 0x194], ax
xor ebx, ebx
mov al, byte [0x101ed16e]
mov byte [esp + 0x196], al
movq qword [esp + 0x18c], xmm0
mov byte [esp + 0x47c], 0
mov dword [esp + 0x490], 0xf
mov dword [esp + 0x48c], 0
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 + 0x18c], cl
inc ebx
cmp ebx, 0xb
jl 0x10103920
xorps xmm0, xmm0
mov dword [esp + 0x690], 0
lea ecx, [esp + 0x18c]
mov dword [esp + 0x694], 0
movups xmmword [esp + 0x680], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10103977
sub ecx, edx
lea eax, [esp + 0x18c]
push ecx
push eax
lea ecx, [esp + 0x688]
call fcn.100278e0
cmp dword [esp + 0x694], 0xf
lea eax, [esi + 0xc]
push 0
push 0
push 0
push 0
push eax
lea eax, [esi + 0x10]
mov edx, esi
push eax
lea ecx, [esp + 0x698]
cmova ecx, dword [esp + 0x698]
push 0
call fcn.100be3c0
mov ecx, dword [esp + 0x694]
cmp ecx, 0xf
jbe 0x10103a01
mov edx, dword [esp + 0x680]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x101039f7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov esi, dword [0x1034f0f0]
mov dword [esp + 0x690], 0
mov dword [esp + 0x694], 0xf
mov byte [esp + 0x680], 0
mov eax, dword [esi + 0x1bec]
cmp dword [esi + 0x1d54], eax
jne 0x10103a43
mov dword [esi + 0x1e58], eax
mov dword [esi + 0x1e5c], 2
test dword [eax + 8], 0x1000000
je 0x10103a53
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]
mov ax, word [0x101ed338]
mov word [esp + 0x40], ax
test ah, ah
je 0x10103aaa
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 + 0x40], cl
inc ebx
cmp ebx, 2
jl 0x10103a81
lea eax, [esp + 0x40]
push eax
call fcn.1016a390
mov al, byte [0x101ed1dc]
add esp, 4
movq xmm0, qword [str.aCUX_RJJ:]
xor ebx, ebx
mov byte [esp + 0x280], al
movq qword [esp + 0x278], xmm0
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 + 0x278], cl
inc ebx
cmp ebx, 9
jl 0x10103ad6
lea eax, [esp + 0x278]
push eax
call fcn.1016a390
mov esi, dword [0x10223ca0]
add esp, 4
mov ecx, dword [str.q_U_BV_9sF_ZTBA9bAQEWE_]
add esi, 0x33d8
cmp byte [0x101ecf33], 0
mov edx, dword [0x101ecf30]
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x100], edx
je 0x10103c7a
xor ebx, ebx
cmp dword [0x10224d40], 2
jl 0x10103c50
movaps xmm2, xmmword [0x101f7c30]
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, ecx
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0xfc], 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, edx
xorps xmm1, xmm0
movd dword [esp + 0x100], xmm1
jmp 0x10103c7a
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 + 0xfc], cl
inc ebx
cmp ebx, 8
jl 0x10103c50
mov edx, esi
lea ecx, [esp + 0xfc]
call fcn.1016c3b0
mov esi, dword [0x10223ca0]
movq xmm0, qword [0x101edd20]
add esi, 0x35a7
mov al, byte [0x101edd28]
xor edx, edx
movq qword [esp + 0x12c], xmm0
mov byte [esp + 0x134], al
mov dword [esp + 0x10], edx
nop word [eax + eax]
mov eax, 0x29e4129f
mul edx
mov eax, dword [esp + 0x10]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [esp + 0x10]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x12c], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 9
jl 0x10103cc0
mov edx, esi
lea ecx, [esp + 0x12c]
call fcn.1016c3b0
mov ax, word [0x101ee898]
movq xmm0, qword [str.v_G]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x5d0], xmm0
mov word [esp + 0x5d8], ax
test ah, ah
je 0x10103d5c
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 + 0x5d0], cl
inc ebx
cmp ebx, 0xa
jl 0x10103d30
lea edx, [esi + 0x33d9]
lea ecx, [esp + 0x5d0]
call fcn.1016c3b0
mov edx, dword [0x10223ca0]
mov ecx, str.Fast_plant
lea edx, [edx + 0x35ac]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [esi + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10103dee
movss xmm0, dword [esi + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov esi, dword [esi + 0x1bec]
xor edx, edx
add esi, 0xe0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.Door_spam_Key
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x10103e3e
inc ecx
test edi, edi
je 0x10103e2c
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10103e31
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 + 0x18], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x18]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x20], 0
lea edx, [edx + 0x33dc]
call fcn.100bfda0
mov eax, dword [0x1034f0f0]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x101edd9c]
movq xmm0, qword [0x101edd94]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x340], eax
mov al, byte [0x101edda0]
mov byte [esp + 0x344], al
xor eax, eax
cmp dword [0x10224d40], 2
movq qword [esp + 0x338], xmm0
mov dword [esp + 0x14], eax
jl 0x10103fcf
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101edd94]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x338], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x33c]
xorps xmm1, xmm0
movd dword [esp + 0x33c], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x338], cl
inc ebx
cmp ebx, 0xd
jl 0x10103fd3
lea edx, [esi + 0x35a5]
lea ecx, [esp + 0x338]
call fcn.1016c3b0
call fcn.100c9da0
mov eax, dword [0x1034f0f0]
mov dword [esp + 0x10], eax
mov eax, dword [eax + 0x1bec]
mov edi, dword [eax + 0x1fc]
lea esi, [eax + 0x1f8]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x1010405f
inc ecx
test edi, edi
je 0x10104049
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x1010404e
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov eax, dword [esp + 0x14]
mov edx, dword [esi]
mov ecx, dword [esi + 8]
mov eax, dword [eax + 0x1f0]
mov dword [ecx + edx*4], eax
inc dword [esi]
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1f0], 0x435c0000
mov eax, dword [esp + 0x10]
and dword [eax + 0x1cd4], 0xfffffffe
mov eax, dword [0x101ed178]
movq xmm0, qword [0x101ed170]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x350], eax
mov al, byte [0x101ed17c]
mov byte [esp + 0x354], al
xor eax, eax
cmp dword [0x10224d40], 2
movq qword [esp + 0x348], xmm0
mov dword [esp + 0x14], eax
jl 0x101041ce
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101ed170]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x348], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x34c]
xorps xmm1, xmm0
movd dword [esp + 0x34c], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x348], cl
inc ebx
cmp ebx, 0xd
jl 0x101041d2
lea edx, [esi + 0xf00]
lea ecx, [esp + 0x348]
call fcn.1016c3b0
mov eax, dword [0x10223ca0]
cmp byte [eax + 0xf00], 0
je 0x101042af
lea esi, [eax + 0xf04]
xor ebx, ebx
mov eax, dword [str.s__XC8]
mov dword [esp + 0x1d8], eax
mov ax, word [0x101ee4e4]
mov word [esp + 0x1dc], ax
mov al, byte [0x101ee4e6]
mov byte [esp + 0x1de], 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 + 0x1d8], cl
inc ebx
cmp ebx, 7
jl 0x10104250
push 0
push str._d_ms
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0x384
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 1
push eax
push esi
mov edx, 4
lea ecx, [esp + 0x1ec]
call fcn.1016fbe0
mov edi, dword [0x1034f0f0]
mov eax, dword [edi + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [edi + 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
mov eax, dword [edi + 0x1bec]
mov ecx, dword [eax + 0x1f8]
lea esi, [eax + 0x1f8]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 4]
cmp ecx, eax
jne 0x10104325
inc ecx
test eax, eax
je 0x10104313
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x10104318
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100bdf50
mov edx, dword [esi]
mov ecx, dword [esi + 8]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1f0]
mov dword [ecx + edx*4], eax
inc dword [esi]
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1f0], 0x42f00000
and dword [edi + 0x1cd4], 0xfffffffe
mov eax, dword [0x101ed7d0]
movq xmm0, qword [str.s___]
mov esi, dword [0x10223ca0]
mov dword [esp + 0x2f0], eax
mov ax, word [0x101ed7d4]
movq qword [esp + 0x2e8], xmm0
mov word [esp + 0x2f4], ax
test ah, ah
je 0x101044cc
xor eax, eax
cmp dword [0x10224d40], 2
mov dword [esp + 0x14], eax
jl 0x1010449e
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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.s___]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x2e8], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x2ec]
xorps xmm1, xmm0
movd dword [esp + 0x2ec], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x2e8], cl
inc ebx
cmp ebx, 0xe
jl 0x101044a2
lea edx, [esi + 0x3370]
lea ecx, [esp + 0x2e8]
call fcn.1016c3b0
movups xmm0, xmmword [0x101ecf3c]
mov esi, dword [0x10223ca0]
xor edx, edx
mov al, byte [0x101ecf4c]
add esi, 0x35ad
cmp dword [0x10224d40], 2
mov byte [esp + 0x42c], al
movups xmmword [esp + 0x41c], xmm0
mov dword [esp + 0x10], edx
jl 0x10104650
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
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
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 + edx + 0x41c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x41c], 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 + edx + 0x420]
xorps xmm1, xmm0
movd dword [esp + edx + 0x420], xmm1
add edx, 8
cmp edx, 0x10
jl 0x10104540
mov dword [esp + 0x10], edx
cmp edx, 0x11
jge 0x10104682
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x41c], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x11
jl 0x10104650
mov edx, esi
lea ecx, [esp + 0x41c]
call fcn.1016c3b0
mov esi, dword [0x1034f0f0]
mov eax, dword [esi + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [esi + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x101046fa
movss xmm0, dword [esi + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
mov esi, dword [esi + 0x1bec]
xor edx, edx
add esi, 0xe0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
push dword [eax + ecx*4 - 4]
mov ecx, str.Prepare_revolver_Key
call fcn.1014f1a0
mov edi, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x14], eax
cmp ecx, edi
jne 0x1010474a
inc ecx
test edi, edi
je 0x10104738
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x1010473d
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 + 0x18], 0x42c80000
mov dword [eax + ecx*4], edx
lea eax, [esp + 0x18]
inc dword [esi]
mov ecx, 0x101cf4ee
mov edx, dword [0x10223ca0]
push eax
mov dword [esp + 0x20], 0
lea edx, [edx + 0x36c0]
call fcn.100bfda0
mov eax, dword [0x1034f0f0]
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
cmp byte [0x101ee223], 0
movq xmm0, qword [0x101ee218]
mov eax, dword [0x101ee220]
mov esi, dword [0x10223ca0]
mov edi, dword [0x10224d40]
movq qword [esp + 0x37c], xmm0
mov dword [esp + 0x384], eax
je 0x1010490c
xor eax, eax
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x101048de
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101ee218]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x37c], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x380]
xorps xmm1, xmm0
movd dword [esp + 0x380], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x37c], cl
inc ebx
cmp ebx, 0xc
jl 0x101048e2
lea edx, [esi + 0x359c]
lea ecx, [esp + 0x37c]
call fcn.1016c3b0
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
mov byte [eax + 0xa8], 1
mov edx, dword [ecx + 0x1bec]
cmp byte [edx + 0xab], 0
jne 0x10104988
movss xmm0, dword [ecx + 0x15a8]
addss xmm0, dword [edx + 0xf4]
movss dword [edx + 0xec], xmm0
mov eax, dword [edx + 0xf8]
mov dword [edx + 0xf0], eax
mov eax, dword [edx + 0x11c]
mov ecx, dword [edx + 0x120]
mov dword [edx + 0x114], eax
mov dword [edx + 0x118], ecx
mov eax, dword [edx + 0x128]
mov dword [edx + 0x124], eax
cmp byte [0x101ed48f], 0
movq xmm0, qword [0x101ed484]
mov eax, dword [0x101ed48c]
mov esi, dword [0x10223ca0]
movq qword [esp + 0x394], xmm0
mov dword [esp + 0x39c], eax
je 0x10104afa
xor eax, eax
mov dword [esp + 0x14], eax
cmp edi, 2
jl 0x10104acb
movaps xmm2, xmmword [0x101f7c30]
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
mov eax, dword [0x101f7db0]
psrad xmm1, 1
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 [0x101ed484]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x394], 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]
movd xmm0, eax
mov eax, 8
packuswb xmm1, xmm1
paddb xmm1, xmm0
mov dword [esp + 0x14], eax
movd xmm0, dword [esp + 0x398]
xorps xmm1, xmm0
movd dword [esp + 0x398], xmm1
mov ebx, dword [esp + 0x14]
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 + 0x394], cl
inc ebx
cmp ebx, 0xc
jl 0x10104ad0
lea edx, [esi + 0x359e]
lea ecx, [esp + 0x394]
call fcn.1016c3b0
mov eax, dword [0x1034f0f0]
xor edx, edx
mov dword [esp + 0x10], edx
mov eax, dword [eax + 0x1bec]
dec dword [eax + 0xe0]
mov eax, dword [0x101eea28]
mov dword [esp + 0x9f0], eax
mov al, byte [0x101eea2c]
mov byte [esp + 0x9f4], al
movups xmm0, xmmword [str.ZP6gYJNZTRQT__f7__F]
movups xmmword [esp + 0x9b0], xmm0
movups xmm0, xmmword [0x101ee9f8]
movups xmmword [esp + 0x9c0], xmm0
movups xmm0, xmmword [str.7_8U]
movups xmmword [esp + 0x9d0], xmm0
movups xmm0, xmmword [0x101eea18]
movups xmmword [esp + 0x9e0], xmm0
cmp edi, 2
jl 0x10104cc0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x9b0]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x9b0], 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 + edx + 0x9b4]
xorps xmm1, xmm0
movd dword [esp + edx + 0x9b4], xmm1
add edx, 8
cmp edx, 0x40
jl 0x10104bb0
mov dword [esp + 0x10], edx
cmp edx, 0x45
jge 0x10104cf2
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x9b0], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x45
jl 0x10104cc0
mov eax, dword [0x10223ca0]
movq xmm0, qword [0x101ed788]
add eax, 0x36e4
mov dword [esp + 0x10], eax
mov ax, word [0x101ed790]
movq qword [esp + 0x4e8], xmm0
mov word [esp + 0x4f0], ax
test ah, ah
je 0x10104d51
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 + 0x4e8], cl
inc ebx
cmp ebx, 0xa
jl 0x10104d25
xorps xmm0, xmm0
mov dword [esp + 0x6a8], 0
lea ecx, [esp + 0x4e8]
mov dword [esp + 0x6ac], 0
movups xmmword [esp + 0x698], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10104d80
sub ecx, edx
lea eax, [esp + 0x4e8]
push ecx
push eax
lea ecx, [esp + 0x6a0]
call fcn.100278e0
cmp dword [esp + 0x6ac], 0xf
lea eax, [esp + 0x698]
lea edx, [esp + 0x9b0]
cmova eax, dword [esp + 0x698]
xor esi, esi
cmp byte [esp + 0x9b0], 0
mov dword [esp + 0x14], eax
je 0x10104df0
nop dword [eax]
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10104dd5
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x10104dd0
mov eax, dword [esp + 0x14]
mov edi, dword [0x10224d40]
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x9b0]
push 1
push 0xffffffffffffffff
push esi
push ecx
push 0x1016ddf0
mov ecx, eax
call fcn.1016de50
mov ecx, dword [esp + 0x6ac]
cmp ecx, 0xf
jbe 0x10104e49
mov edx, dword [esp + 0x698]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10104e3f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov eax, dword [0x10223ca0]
mov dword [esp + 0x6a8], 0
mov dword [esp + 0x6ac], 0xf
mov byte [esp + 0x698], 0
cmp dword [eax + 0x36e4], 9
jne 0x101054b8
movups xmm0, xmmword [0x101ede20]
lea esi, [eax + 0x3708]
xor edx, edx
mov ax, word [0x101ede30]
mov word [esp + 0x504], ax
mov al, byte [0x101ede32]
mov byte [esp + 0x506], al
mov dword [esp + 0x10], edx
movups xmmword [esp + 0x4f4], xmm0
cmp edi, 2
jl 0x10104ff0
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
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
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 + edx + 0x4f4]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x4f4], 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 + edx + 0x4f8]
xorps xmm1, xmm0
movd dword [esp + edx + 0x4f8], xmm1
add edx, 8
cmp edx, 0x10
jl 0x10104ee0
mov dword [esp + 0x10], edx
cmp edx, 0x13
jge 0x10105022
nop dword [eax]
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x4f4], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x13
jl 0x10104ff0
xorps xmm0, xmm0
mov dword [esp + 0x6c0], 0
lea ecx, [esp + 0x4f4]
mov dword [esp + 0x6c4], 0
movups xmmword [esp + 0x6b0], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10105050
sub ecx, edx
lea eax, [esp + 0x4f4]
push ecx
push eax
lea ecx, [esp + 0x6b8]
call fcn.100278e0
cmp dword [esp + 0x6c4], 0xf
lea ecx, [esp + 0x6b0]
mov dword [esp + 0xe4], esi
cmova ecx, dword [esp + 0x6b0]
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
mov eax, dword [esi + 0x14]
lea edx, [eax + 1]
cmp eax, 0xf
jbe 0x101050af
mov esi, dword [esi]
lea eax, [esp + 0xe4]
mov dword [esp + 0x7c], 0
push eax
push 0x100c3980
push 0x40000
lea eax, [esp + 0x88]
mov dword [esp + 0x8c], 0
push eax
push edx
push esi
xor edx, edx
call fcn.10172cf0
mov ecx, dword [esp + 0x6c4]
cmp ecx, 0xf
jbe 0x10105121
mov edx, dword [esp + 0x6b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10105117
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov eax, dword [0x1034f0f0]
mov dword [esp + 0x6c0], 0
mov dword [esp + 0x6c4], 0xf
mov byte [esp + 0x6b0], 0
cmp byte [eax + 0x1dab], 0
mov ecx, dword [eax + 0x1bec]
je 0x10105181
cmp byte [eax + 0x1daa], 0
jne 0x10105181
mov eax, dword [eax + 0x1d58]
cmp eax, dword [ecx + 0x138]
jne 0x10105172
mov edx, dword [ecx + 0x13c]
test dl, 1
je 0x101054b8
cmp dword [eax + 0x1bf4], ecx
je 0x101051a0
mov ecx, 2
call fcn.1015af60
movups xmm0, xmmword [str.ZP6gYJNZTRQT__f7__F]
mov eax, dword [0x101eea28]
xor edx, edx
mov dword [esp + 0x240], eax
mov al, byte [0x101eea2c]
mov byte [esp + 0x244], al
mov dword [esp + 0x10], edx
movups xmmword [esp + 0x200], xmm0
movups xmm0, xmmword [0x101ee9f8]
movups xmmword [esp + 0x210], xmm0
movups xmm0, xmmword [str.7_8U]
movups xmmword [esp + 0x220], xmm0
movups xmm0, xmmword [0x101eea18]
movups xmmword [esp + 0x230], xmm0
cmp edi, 2
jl 0x10105655
movaps xmm0, xmmword [0x101f7db0]
movaps xmm4, xmmword [0x101f7c30]
movaps xmm3, xmmword [0x101f7d90]
movaps xmm5, xmmword [0x101f7cd0]
movaps xmmword [esp + 0x20], xmm0
mov ecx, dword [esp + 0x20]
nop word [eax + eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f7d70]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [esp + edx + 0x200]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + edx + 0x200], 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 + edx + 0x204]
xorps xmm1, xmm0
movd dword [esp + edx + 0x204], xmm1
add edx, 8
cmp edx, 0x40
jl 0x10105550
jmp 0x1010567e
mov eax, 0x94f2095
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
movsx eax, al
mov cl, dl
imul eax, eax, 0x37
sub cl, al
add cl, 0x32
xor byte [esp + edx + 0x200], cl
inc edx
mov dword [esp + 0x10], edx
cmp edx, 0x45
jl 0x10105655
mov ax, word [0x101ed6dc]
mov edi, dword [0x10223ca0]
movq xmm0, qword [0x101ed6d4]
add edi, 0x36ec
mov word [esp + 0x1a0], ax
xor ebx, ebx
mov al, byte [0x101ed6de]
mov dword [esp + 0x10], edi
mov byte [esp + 0x1a2], al
movq qword [esp + 0x198], xmm0
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 + 0x198], cl
inc ebx
cmp ebx, 0xb
jl 0x101056c4
xorps xmm0, xmm0
mov dword [esp + 0x6f0], 0
lea ecx, [esp + 0x198]
mov dword [esp + 0x6f4], 0
movups xmmword [esp + 0x6e0], xmm0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10105720
sub ecx, edx
lea eax, [esp + 0x198]
push ecx
push eax
lea ecx, [esp + 0x6e8]
call fcn.100278e0
cmp dword [esp + 0x6f4], 0xf
lea eax, [esp + 0x6e0]
lea edx, [esp + 0x200]
cmova eax, dword [esp + 0x6e0]
xor esi, esi
cmp byte [esp + 0x200], 0
mov dword [esp + 0x14], eax
je 0x1010578a
mov dword [esp + 0x10], edi
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10105775
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x10105770
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x200]
push 1
push 0xffffffffffffffff
push esi
push ecx
push 0x1016ddf0
mov ecx, eax
call fcn.1016de50
mov ecx, dword [esp + 0x6f4]
cmp ecx, 0xf
jbe 0x101057e3
mov edx, dword [esp + 0x6e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x101057d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10109951
push ecx
push edx
call fcn.1019958d
add esp, 8
mov eax, dword [0x10223ca0]
mov dword [esp + 0x6f0], 0
mov dword [esp + 0x6f4], 0xf
mov byte [esp + 0x6e0], 0
cmp dword [eax + 0x36ec], 9
jne 0x10105e18
cmp byte [0x101eec13], 0
lea esi, [eax + 0x36f0]
movups xmm0, xmmword [0x101eec00]
mov eax, dword [0x101eec10]
mov edi, dword [0x10224d40]
movups xmmword [esp + 0x5a4], xmm0
mov dword [esp + 0x5b4], eax
je 0x101059c2
mov ecx, dword [0x1034f0f0]
mov eax, dword [ecx + 0x1bec]
dec dword [eax + 0xe0]
movups xmm0, xmmword [0x101ee288]
mov ax, word [0x101ee298]
mov esi, dword [0x10223ca0]
mov edi, dword [0x10224d40]
mov word [esp + 0x530], ax
movups xmmword [esp + 0x520], xmm0
test ah, ah
je 0x10105fd2
call fcn.1019e6c6
int3