Function at 0x14004ade0
Capabilities:
Encode data using xor
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbx
push r14
sub rsp, 0x4d8
vmovaps xmmword [rax - 0x68], xmm10
vmovaps xmmword [rax - 0x78], xmm11
mov rax, qword [0x14006b060]
xor rax, rsp
mov qword [rsp + 0x420], rax
mov eax, dword [0x14006bcc4]
mov r14d, 1
inc eax
cmp eax, 0x186a0
cmovg eax, r14d
mov dword [0x14006bcc4], eax
mov eax, 0x66666667
imul dword [0x140fb3fec]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 2
cmove edx, eax
mov dword [0x14006bcc8], edx
call fcn.14001cec0
vmovss xmm11, dword [0x140061e04]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmulss xmm1, xmm0, dword [0x140061de0]
mov eax, dword [0x140fb4af4]
vsubss xmm0, xmm1, dword [0x140fb4af0]
inc eax
vcomiss xmm0, xmm11
vmovss dword [0x140fb4af8], xmm1
mov dword [0x140fb4af4], eax
jb 0x14004aea5
vmovss dword [0x140fb4af0], xmm1
mov dword [0x140fb4ae0], eax
mov dword [0x140fb4af4], 0
jmp 0x14004aeab
mov eax, dword [0x140fb4ae0]
cmp byte [0x1401a1d78], 0
mov dword [0x140fb3fec], eax
je 0x14004aebf
call fcn.14004e320
mov eax, dword [0x14006bcc4]
cdq
idiv dword [0x14006bcc8]
test edx, edx
jne 0x14004aef3
lea ecx, [rdx + 0x24]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14004aeee
cmp byte [0x1401a1d78], 0
sete byte [0x1401a1d78]
call fcn.14004dee0
mov eax, dword [0x14006bcb0]
mov r9d, r14d
cdq
mov dword [rsp + 0x30], 0
sub eax, edx
sar eax, 1
mov r8d, eax
mov eax, dword [0x14006bcb4]
cdq
mov dword [rsp + 0x1c4], r8d
sub eax, edx
mov edx, r14d
sar eax, 1
sub eax, 0xd
mov dword [rsp + 0x1c0], eax
vxorps xmm10, xmm10, xmm10
vmovss dword [rsp + 0x28], xmm10
lea ecx, [rax + 0xa]
mov dword [rsp + 0x20], 0xff00ff00
lea eax, [r8 + 1]
mov dword [rsp + 0x1c8], ecx
mov rcx, qword [0x1401a3e98]
lea r8, [rsp + 0x1c0]
mov dword [rsp + 0x1cc], eax
mov rax, qword [rcx]
call qword [rax + 0x158]
mov eax, dword [0x14006bcb0]
mov r9d, r14d
cdq
mov dword [rsp + 0x30], 0
sub eax, edx
sar eax, 1
mov r8d, eax
mov eax, dword [0x14006bcb4]
cdq
mov dword [rsp + 0x1c4], r8d
sub eax, edx
mov edx, r14d
sar eax, 1
add eax, 4
mov dword [rsp + 0x1c0], eax
vmovss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 0xff00ff00
lea ecx, [rax + 0xa]
lea eax, [r8 + 1]
mov dword [rsp + 0x1c8], ecx
mov rcx, qword [0x1401a3e98]
lea r8, [rsp + 0x1c0]
mov dword [rsp + 0x1cc], eax
mov rax, qword [rcx]
call qword [rax + 0x158]
mov eax, dword [0x14006bcb0]
mov r9d, r14d
cdq
mov dword [rsp + 0x30], 0
sub eax, edx
sar eax, 1
vmovss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 0xff00ff00
lea r8d, [rax - 0xd]
mov eax, dword [0x14006bcb4]
cdq
mov dword [rsp + 0x1c4], r8d
sub eax, edx
mov edx, r14d
sar eax, 1
mov dword [rsp + 0x1c0], eax
lea ecx, [rax + 1]
lea eax, [r8 + 0xa]
mov dword [rsp + 0x1c8], ecx
mov rcx, qword [0x1401a3e98]
lea r8, [rsp + 0x1c0]
mov dword [rsp + 0x1cc], eax
mov rax, qword [rcx]
call qword [rax + 0x158]
mov eax, dword [0x14006bcb0]
cdq
sub eax, edx
sar eax, 1
lea r8d, [rax + 4]
mov eax, dword [0x14006bcb4]
cdq
mov dword [rsp + 0x1c4], r8d
sub eax, edx
mov dword [rsp + 0x30], 0
sar eax, 1
mov r9d, r14d
mov dword [rsp + 0x1c0], eax
mov edx, r14d
vmovss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 0xff00ff00
lea ecx, [rax + 1]
lea eax, [r8 + 0xa]
mov dword [rsp + 0x1c8], ecx
mov rcx, qword [0x1401a3e98]
lea r8, [rsp + 0x1c0]
mov dword [rsp + 0x1cc], eax
mov rax, qword [rcx]
call qword [rax + 0x158]
cmp qword [0x1401a3ec8], 0
je 0x14004de2b
mov eax, dword [0x14006bcb4]
cdq
mov qword [rsp + 0x500], r12
sub eax, edx
sar eax, 1
mov r12d, eax
mov dword [rsp + 0x1d4], eax
mov eax, dword [0x14006bcb0]
cdq
sub eax, edx
sar eax, 1
cmp dword [0x140fb3ef4], 0
vxorps xmm0, xmm0, xmm0
vmovss dword [rsp + 0x1e0], xmm0
vmovss dword [rsp + 0x1dc], xmm0
mov dword [rsp + 0x1d8], eax
je 0x14004de23
mov ecx, dword [0x14006bcb8]
add rcx, qword [0x140fb3ee0]
mov qword [rsp + 0x4f8], rdi
mov qword [rsp + 0x508], r13
mov qword [rsp + 0x4d0], r15
call fcn.140003730
mov rcx, rax
call fcn.140003730
lea rcx, [rax + 0x80]
call fcn.140003730
movabs rdx, 0x7fffffeefffe
movabs r8, 0x7fffffffffbffffe
lea rcx, [rax - 0x100001]
cmp rcx, rdx
ja 0x14004b1ae
lea rdx, [rax + 0x100]
lea rax, [rdx - 0x400001]
cmp rax, r8
ja 0x14004b1ae
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x230]
mov r9d, 0x40
call fcn.14003c5c0
vmovups ymm1, ymmword [rsp + 0x230]
vmovups ymm0, ymmword [rsp + 0x250]
mov ecx, dword [0x140fb3ef4]
xor r13d, r13d
mov qword [rsp + 0x4f0], rsi
xor r15d, r15d
vmovaps xmmword [rsp + 0x4c0], xmm6
vmovaps xmmword [rsp + 0x4b0], xmm7
vmovaps xmmword [rsp + 0x4a0], xmm8
lea eax, [rcx - 1]
vmovaps xmmword [rsp + 0x490], xmm9
lea edi, [r13 + 4]
vmovaps xmmword [rsp + 0x460], xmm12
vmovaps xmmword [rsp + 0x450], xmm13
vmovaps xmmword [rsp + 0x440], xmm14
vmovaps xmmword [rsp + 0x430], xmm15
mov qword [rsp + 0x178], r13
mov qword [rsp + 0x170], r15
vmovups ymmword [rsp + 0x230], ymm1
vmovups ymmword [rsp + 0x250], ymm0
vxorps xmm0, xmm0, xmm0
vxorps xmm1, xmm1, xmm1
vmovss dword [rsp + 0x40], xmm0
vmovss dword [rsp + 0x44], xmm0
vmovss dword [rsp + 0xb0], xmm1
vmovss dword [rsp + 0xe0], xmm0
vmovss dword [rsp + 0xe4], xmm0
vmovss dword [rsp + 0xe8], xmm0
cmp eax, 0xc7
ja 0x14004d26d
xor edx, edx
lea eax, [rcx + 0x14]
mov dword [rsp + 0xb4], edx
test eax, eax
jle 0x14004d26d
lea r15d, [r13 + 0x1f]
lea eax, [rdx*8]
movsxd rcx, eax
mov rax, qword [0x140fb3ee8]
add rax, 0x20
add rcx, rax
vzeroupper
call fcn.140003730
mov rbx, rax
test rax, rax
je 0x14004d234
mov eax, dword [0x140fb40a8]
test eax, eax
jne 0x14004b442
cmp byte [0x14006186b], al
vmovsd xmm0, qword [str.oR_DZXRVMI_]
mov ecx, dword [0x140061868]
vmovsd qword [rsp + 0x158], xmm0
mov dword [rsp + 0x160], ecx
je 0x14004b40a
vmovdqu xmm5, xmmword [0x140061ed0]
vmovdqu xmm8, xmmword [0x140062020]
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm8
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm8
vshufps xmm0, xmm3, xmm2, 0xdd
vmovd xmm7, edi
vpsrad xmm4, xmm0, xmm7
vmovd xmm6, r15d
vpsrld xmm1, xmm4, xmm6
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [str.oR_DZXRVMI_]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm0, xmm3, xmmword [0x140061e90]
vpaddb xmm2, xmm0, xmmword [0x140061fe0]
vmovdqu xmm5, xmmword [0x140061ee0]
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x158], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm8
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm8
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm7
vpsrld xmm1, xmm4, xmm6
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [rsp + 0x15c]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm0, xmm3, xmmword [0x140061e90]
vpaddb xmm2, xmm0, xmmword [0x140061fe0]
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x15c], xmm0
mov r8d, 8
lea r9, [rsp + 0x160]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x14004b3e0
mov rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004b42a
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004b42c
xor ecx, ecx
mov r8d, r14d
lea rdx, [rsp + 0x158]
call fcn.14003b520
mov dword [0x140fb40a8], eax
movsxd rcx, eax
add rcx, rbx
call fcn.140003730
mov rdi, rax
mov eax, dword [0x140fb40e0]
test eax, eax
jne 0x14004b619
vmovups xmm0, xmmword [str.oE_GUYuXUIUUYSJL_]
movzx ecx, byte [0x140061d58]
mov eax, 4
vmovdqu xmm7, xmmword [0x140061ed0]
vmovdqu xmm6, xmmword [0x140062020]
vmovdqu xmm9, xmmword [0x140061f20]
vmovups xmmword [rsp + 0xc0], xmm0
vmovdqu xmm0, xmmword [0x140061fe0]
vmovdqu xmmword [rsp + 0x1c0], xmm0
mov edx, dword [rsp + 0x1c0]
xor r8d, r8d
mov byte [rsp + 0xd0], cl
lea rcx, [rsp + 0xc4]
vmovd xmm8, eax
vmovd xmm10, r15d
nop word [rax + rax]
vmovd xmm0, r8d
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm0, xmm4, xmm10
vpaddd xmm1, xmm0, xmm4
vmovd xmm0, dword [rcx - 4]
vpmulld xmm2, xmm1, xmm9
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm1, edx
vpaddb xmm2, xmm4, xmm1
vpxor xmm1, xmm2, xmm0
vmovd dword [rcx - 4], xmm1
lea eax, [r8 + 4]
add r8d, 8
lea rcx, [rcx + 8]
vmovd xmm0, eax
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm10
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmm9
vmovd xmm0, edx
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vpaddb xmm1, xmm4, xmm0
vmovd xmm0, dword [rcx - 8]
vpxor xmm1, xmm1, xmm0
vmovd dword [rcx - 8], xmm1
cmp r8d, 0x10
jl 0x14004b4d0
cmp r8d, 0x11
jge 0x14004b5e1
movsxd rax, r8d
lea r9, [rsp + 0xc0]
add r9, rax
nop
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0x11
jl 0x14004b5b0
mov rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004b601
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004b603
xor ecx, ecx
mov r8d, r14d
lea rdx, [rsp + 0xc0]
call fcn.14003b520
mov dword [0x140fb40e0], eax
test rdi, rdi
je 0x14004d22f
movsxd rcx, eax
add rcx, rbx
call fcn.140007100
mov r13d, dword [rsp + 0xb4]
xor r12d, r12d
mov qword [rsp + 0x188], r12
test r13d, r13d
jne 0x14004b65e
mov ecx, dword [0x14006bcd8]
add rcx, rdi
call fcn.140003730
mov r12, rax
mov qword [rsp + 0x188], rax
mov ecx, dword [0x14006bce0]
add rcx, rdi
call fcn.140003730
mov ecx, dword [0x14006bce4]
mov rsi, rax
add rcx, rdi
call fcn.140003730
mov ecx, dword [0x14006bcd4]
mov rbx, rax
add rcx, rdi
call fcn.140003730
mov ecx, dword [0x14006bcd0]
mov r14, rax
add rcx, rdi
mov qword [rsp + 0x190], rax
call fcn.140003730
mov qword [rsp + 0x198], rax
mov r15, rax
test rbx, rbx
je 0x14004d223
cmp dword [0x140fb40d0], 0
jne 0x14004b793
test r12, r12
je 0x14004b793
cmp byte [0x140061c47], 0
mov ecx, dword [str.vD3SWU]
mov dword [rsp + 0x1d0], ecx
je 0x14004b75b
vmovdqu xmm5, xmmword [0x140061ed0]
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmmword [0x140062020]
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmmword [0x140062020]
vshufps xmm4, xmm3, xmm2, 0xdd
mov eax, 4
vmovd xmm0, eax
vpsrad xmm2, xmm4, xmm0
mov eax, 0x1f
vmovd xmm0, eax
vpsrld xmm1, xmm2, xmm0
vpaddd xmm2, xmm1, xmm2
vpmulld xmm3, xmm2, xmmword [0x140061f20]
vpsubd xmm4, xmm5, xmm3
vpshufb xmm2, xmm4, xmmword [0x140061e90]
vpaddb xmm3, xmm2, xmmword [0x140061fe0]
vmovd xmm0, ecx
vpxor xmm1, xmm3, xmm0
vmovd dword [rsp + 0x1d0], xmm1
mov rcx, r12
call fcn.140003730
test rax, rax
je 0x14004b77b
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004b77d
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x1d0]
call fcn.14003b520
mov dword [0x140fb40d0], eax
cmp dword [0x140fb40d4], 0
jne 0x14004b979
test rsi, rsi
je 0x14004b979
test r13d, r13d
jne 0x14004b979
cmp byte [0x1400619c1], r13b
vmovups xmm0, xmmword [str.vX___eSEKVTsYTYW4A]
movzx eax, word [0x1400619c0]
vmovups xmmword [rsp + 0xc0], xmm0
mov word [rsp + 0xd0], ax
je 0x14004b941
vmovdqu xmm0, xmmword [0x140061fe0]
vmovdqu xmm7, xmmword [0x140061ed0]
vmovdqu xmm6, xmmword [0x140062020]
vmovdqu xmm9, xmmword [0x140061f20]
mov eax, 4
lea rcx, [rsp + 0xc4]
vmovd xmm8, eax
mov eax, 0x1f
xor r8d, r8d
vmovdqu xmmword [rsp + 0x1c0], xmm0
mov edx, dword [rsp + 0x1c0]
vmovd xmm10, eax
nop dword [rax]
vmovd xmm0, r8d
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm0, xmm4, xmm10
vpaddd xmm1, xmm0, xmm4
vmovd xmm0, dword [rcx - 4]
vpmulld xmm2, xmm1, xmm9
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm1, edx
vpaddb xmm2, xmm4, xmm1
vpxor xmm1, xmm2, xmm0
vmovd dword [rcx - 4], xmm1
lea eax, [r8 + 4]
add r8d, 8
lea rcx, [rcx + 8]
vmovd xmm0, eax
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm10
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmm9
vmovd xmm0, edx
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vpaddb xmm1, xmm4, xmm0
vmovd xmm0, dword [rcx - 8]
vpxor xmm1, xmm1, xmm0
vmovd dword [rcx - 8], xmm1
cmp r8d, 0x10
jl 0x14004b830
cmp r8d, 0x12
jge 0x14004b941
movsxd rax, r8d
lea r9, [rsp + 0xc0]
add r9, rax
nop
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0x12
jl 0x14004b910
mov rcx, rsi
call fcn.140003730
test rax, rax
je 0x14004b961
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004b963
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0xc0]
call fcn.14003b520
mov dword [0x140fb40d4], eax
cmp dword [0x140fb40e4], 0
mov r13d, 4
jne 0x14004bb22
test r12, r12
je 0x14004bb22
vmovdqu xmm5, xmmword [0x140061ed0]
vmovdqu xmm9, xmmword [0x140062020]
mov eax, dword [0x140061c90]
lea r9, [rsp + 0x120]
vmovsd xmm0, qword [str.bTWQGfXKPNRSS_]
vmovsd qword [rsp + 0x118], xmm0
mov dword [rsp + 0x120], eax
mov r8d, 8
movzx eax, word [0x140061c94]
mov word [rsp + 0x124], ax
movzx eax, byte [0x140061c96]
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
mov byte [rsp + 0x126], al
mov eax, 0x1f
vmovd xmm7, eax
mov eax, dword [0x140061fe0]
vmovd xmm8, r13d
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [str.bTWQGfXKPNRSS_]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovdqu xmm5, xmmword [0x140061ee0]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x118], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [rsp + 0x11c]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x11c], xmm0
nop dword [rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0xf
jl 0x14004bac0
mov rcx, r12
call fcn.140003730
test rax, rax
je 0x14004bb0a
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004bb0c
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x118]
call fcn.14003b520
mov dword [0x140fb40e4], eax
cmp dword [0x140fb40c8], 0
jne 0x14004bb95
mov eax, dword [str.sD_D5]
mov rcx, rbx
mov dword [rsp + 0x68], eax
movzx eax, word [0x140061a3c]
xor byte [rsp + 0x69], 0x31
xor byte [rsp + 0x6a], 0x32
xor byte [rsp + 0x6b], 0x33
mov word [rsp + 0x6c], ax
xor al, 0x34
xor byte [rsp + 0x6d], 0x35
mov byte [rsp + 0x6c], al
mov byte [rsp + 0x68], 0x43
call fcn.140003730
test rax, rax
je 0x14004bb80
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004bb82
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x68]
call fcn.14003b520
mov dword [0x140fb40c8], eax
cmp dword [0x140fb40a0], 0
jne 0x14004bc2c
cmp byte [0x140061af9], 0
vmovsd xmm0, qword [str.rPAVyTN]
movzx eax, word [0x140061af8]
vmovsd qword [rsp + 0x58], xmm0
mov word [rsp + 0x60], ax
je 0x14004bbf7
xor byte [rsp + 0x59], 0x31
xor byte [rsp + 0x5a], 0x32
xor byte [rsp + 0x5b], 0x33
xor byte [rsp + 0x5c], 0x34
xor byte [rsp + 0x5d], 0x35
xor byte [rsp + 0x5e], 0x36
xor byte [rsp + 0x5f], 0x37
xor byte [rsp + 0x60], 0x38
xor byte [rsp + 0x61], 0x39
mov byte [rsp + 0x58], 0x42
mov rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004bc17
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004bc19
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x58]
call fcn.14003b520
mov dword [0x140fb40a0], eax
cmp dword [0x140fb40d8], 0
jne 0x14004bdf9
cmp byte [0x140061839], 0
vmovups xmm0, xmmword [str.__SJVTUlQSHzO_R_A]
movzx eax, word [0x140061838]
vmovups xmmword [rsp + 0xc0], xmm0
mov word [rsp + 0xd0], ax
je 0x14004bdc1
vmovdqu xmm0, xmmword [0x140061fe0]
vmovdqu xmm7, xmmword [0x140061ed0]
vmovdqu xmm6, xmmword [0x140062020]
vmovdqu xmm9, xmmword [0x140061f20]
mov eax, 0x1f
lea rcx, [rsp + 0xc4]
vmovdqu xmmword [rsp + 0x1c0], xmm0
mov edx, dword [rsp + 0x1c0]
xor r8d, r8d
vmovd xmm8, r13d
vmovd xmm10, eax
nop
vmovd xmm0, r8d
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm0, xmm4, xmm10
vpaddd xmm1, xmm0, xmm4
vmovd xmm0, dword [rcx - 4]
vpmulld xmm2, xmm1, xmm9
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm1, edx
vpaddb xmm2, xmm4, xmm1
vpxor xmm1, xmm2, xmm0
vmovd dword [rcx - 4], xmm1
lea eax, [r8 + 4]
add r8d, 8
lea rcx, [rcx + 8]
vmovd xmm0, eax
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm10
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmm9
vmovd xmm0, edx
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vpaddb xmm1, xmm4, xmm0
vmovd xmm0, dword [rcx - 8]
vpxor xmm1, xmm1, xmm0
vmovd dword [rcx - 8], xmm1
cmp r8d, 0x10
jl 0x14004bcb0
cmp r8d, 0x12
jge 0x14004bdc1
movsxd rax, r8d
lea r9, [rsp + 0xc0]
add r9, rax
nop
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0x12
jl 0x14004bd90
mov rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004bde1
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004bde3
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0xc0]
call fcn.14003b520
mov dword [0x140fb40d8], eax
cmp dword [0x140fb40b0], 0
jne 0x14004bf82
cmp byte [0x140061c1b], 0
vmovsd xmm0, qword [str.oW_KQQ_VTL__]
mov eax, dword [0x140061c18]
vmovsd qword [rsp + 0x148], xmm0
mov dword [rsp + 0x150], eax
je 0x14004bf4a
vmovdqu xmm5, xmmword [0x140061ed0]
vmovdqu xmm9, xmmword [0x140062020]
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vmovd xmm8, r13d
vpsrad xmm4, xmm0, xmm8
mov eax, 0x1f
lea r9, [rsp + 0x150]
vmovd xmm7, eax
mov eax, dword [0x140061fe0]
mov r8d, 8
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [str.oW_KQQ_VTL__]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovdqu xmm5, xmmword [0x140061ee0]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x148], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [rsp + 0x14c]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x14c], xmm0
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x14004bf20
mov rcx, r15
call fcn.140003730
test rax, rax
je 0x14004bf6a
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004bf6c
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x148]
call fcn.14003b520
mov dword [0x140fb40b0], eax
cmp dword [0x140fb4004], 0
jne 0x14004c003
mov eax, dword [str.oA_GW_6]
movzx ecx, byte [0x140061bce]
mov dword [rsp + 0x78], eax
xor cl, 0x36
movzx eax, word [0x140061bcc]
xor byte [rsp + 0x79], 0x31
xor byte [rsp + 0x7a], 0x32
xor byte [rsp + 0x7b], 0x33
mov word [rsp + 0x7c], ax
xor al, 0x34
xor byte [rsp + 0x7d], 0x35
mov byte [rsp + 0x7e], cl
mov rcx, r14
mov byte [rsp + 0x7c], al
mov byte [rsp + 0x78], 0x5f
call fcn.140003730
test rax, rax
je 0x14004bfee
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004bff0
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x78]
call fcn.14003b520
mov dword [0x140fb4004], eax
cmp dword [0x140fb3ff8], 0
jne 0x14004c06c
mov eax, dword [0x1400618cc]
mov rcx, r14
mov dword [rsp + 0x70], eax
movzx eax, byte [0x1400618d0]
xor byte [rsp + 0x71], 0x31
xor al, 0x34
xor byte [rsp + 0x72], 0x32
xor byte [rsp + 0x73], 0x33
mov byte [rsp + 0x74], al
mov byte [rsp + 0x70], 0x5f
call fcn.140003730
test rax, rax
je 0x14004c057
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004c059
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x70]
call fcn.14003b520
mov dword [0x140fb3ff8], eax
cmp dword [0x140fb3ffc], 0
mov r15d, 0x1f
jne 0x14004c1f2
vmovdqu xmm5, xmmword [0x140061ed0]
vmovdqu xmm9, xmmword [0x140062020]
mov eax, dword [0x140061920]
lea r9, [rsp + 0x110]
vmovsd xmm0, qword [str.oSWU_GSgQMYS_]
vmovsd qword [rsp + 0x108], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vmovd xmm8, r13d
vpsrad xmm4, xmm0, xmm8
vmovd xmm7, r15d
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [str.oSWU_GSgQMYS_]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovdqu xmm5, xmmword [0x140061ee0]
mov dword [rsp + 0x110], eax
mov r8d, 8
movzx eax, byte [0x140061924]
mov byte [rsp + 0x114], al
mov eax, dword [0x140061fe0]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x108], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [rsp + 0x10c]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x10c], xmm0
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0xd
jl 0x14004c190
mov rcx, r14
call fcn.140003730
test rax, rax
je 0x14004c1da
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004c1dc
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x108]
call fcn.14003b520
mov dword [0x140fb3ffc], eax
cmp dword [0x140fb3ff0], 0
jne 0x14004c2b9
movzx ecx, byte [0x140061cf2]
movzx eax, word [0x140061cf0]
xor cl, 0x3a
vmovsd xmm0, qword [str.oSWU_GSnYN:]
vmovsd qword [rsp + 0x80], xmm0
xor byte [rsp + 0x81], 0x31
xor byte [rsp + 0x82], 0x32
xor byte [rsp + 0x83], 0x33
xor byte [rsp + 0x84], 0x34
xor byte [rsp + 0x85], 0x35
xor byte [rsp + 0x86], 0x36
xor byte [rsp + 0x87], 0x37
mov word [rsp + 0x88], ax
xor al, 0x38
xor byte [rsp + 0x89], 0x39
mov byte [rsp + 0x8a], cl
mov rcx, r14
mov byte [rsp + 0x80], 0x5f
mov byte [rsp + 0x88], al
call fcn.140003730
test rax, rax
je 0x14004c2a1
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004c2a3
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x80]
call fcn.14003b520
mov dword [0x140fb3ff0], eax
cmp dword [0x140fb4008], 0
jne 0x14004c442
cmp byte [0x1400619d3], 0
vmovsd xmm0, qword [str.oUWPULfLZR_]
mov eax, dword [0x1400619d0]
vmovsd qword [rsp + 0x138], xmm0
mov dword [rsp + 0x140], eax
je 0x14004c40a
vmovdqu xmm5, xmmword [0x140061ed0]
vmovdqu xmm9, xmmword [0x140062020]
mov eax, dword [0x140061fe0]
lea r9, [rsp + 0x140]
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vmovd xmm8, r13d
vpsrad xmm4, xmm0, xmm8
vmovd xmm7, r15d
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [str.oUWPULfLZR_]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovdqu xmm5, xmmword [0x140061ee0]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x138], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [rsp + 0x13c]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x13c], xmm0
mov r8d, 8
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x14004c3e0
mov rcx, r14
call fcn.140003730
test rax, rax
je 0x14004c42a
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004c42c
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x138]
call fcn.14003b520
mov dword [0x140fb4008], eax
cmp dword [0x140fb4000], 0
jne 0x14004c4d9
cmp byte [0x140061a51], 0
vmovsd xmm0, qword [str.oUWPULoVO9]
movzx eax, word [0x140061a50]
vmovsd qword [rsp + 0x48], xmm0
mov word [rsp + 0x50], ax
je 0x14004c4a4
xor byte [rsp + 0x49], 0x31
xor byte [rsp + 0x4a], 0x32
xor byte [rsp + 0x4b], 0x33
xor byte [rsp + 0x4c], 0x34
xor byte [rsp + 0x4d], 0x35
xor byte [rsp + 0x4e], 0x36
xor byte [rsp + 0x4f], 0x37
xor byte [rsp + 0x50], 0x38
xor byte [rsp + 0x51], 0x39
mov byte [rsp + 0x48], 0x5f
mov rcx, r14
call fcn.140003730
test rax, rax
je 0x14004c4c4
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004c4c6
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x48]
call fcn.14003b520
mov dword [0x140fb4000], eax
cmp dword [0x140fb3ff4], 0
jne 0x14004c672
vmovdqu xmm5, xmmword [0x140061ed0]
vmovdqu xmm9, xmmword [0x140062020]
mov eax, dword [0x140061b90]
lea r9, [rsp + 0x130]
vmovsd xmm0, qword [str.o__TSPDvXJOYO_]
vmovsd qword [rsp + 0x128], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
mov dword [rsp + 0x130], eax
mov r8d, 8
movzx eax, word [0x140061b94]
vmovd xmm8, r13d
vpsrad xmm4, xmm0, xmm8
vmovd xmm7, r15d
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [str.o__TSPDvXJOYO_]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovdqu xmm5, xmmword [0x140061ee0]
mov word [rsp + 0x134], ax
movzx eax, byte [0x140061b96]
mov byte [rsp + 0x136], al
mov eax, dword [0x140061fe0]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x128], xmm0
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm9
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm9
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm7
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmmword [0x140061f20]
vmovd xmm1, dword [rsp + 0x12c]
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm0, eax
vpaddb xmm2, xmm4, xmm0
vpxor xmm0, xmm2, xmm1
vmovd dword [rsp + 0x12c], xmm0
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0xf
jl 0x14004c610
mov rcx, r14
call fcn.140003730
test rax, rax
je 0x14004c65a
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004c65c
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x128]
call fcn.14003b520
mov dword [0x140fb3ff4], eax
movsxd rdx, dword [0x140fb40c8]
movabs rcx, 0x7fffffffffbffffe
add rdx, rbx
vxorps xmm15, xmm15, xmm15
vmovss dword [rsp + 0x1d0], xmm15
lea rax, [rdx - 0x400001]
cmp rax, rcx
ja 0x14004c6bf
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1d0]
mov r9, r13
call fcn.14003c5c0
vmovss xmm15, dword [rsp + 0x1d0]
movsxd rcx, dword [0x140fb40a0]
add rcx, rbx
call fcn.140007100
cmp byte [0x1401a3ed3], 0
mov r14d, 1
mov r12d, r14d
mov r13d, eax
jne 0x14004c6f5
movsxd rcx, dword [0x140fb40d8]
add rcx, rbx
call fcn.140007100
mov r12d, eax
vpxor xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0x2a0], ymm0
vmovups ymmword [rsp + 0x2c0], ymm0
vmovups ymmword [rsp + 0x2e0], ymm0
vmovups ymmword [rsp + 0x300], ymm0
xor edx, edx
lea rcx, [rsp + 0x320]
mov r8d, 0x100
vzeroupper
call fcn.140011900
vcomiss xmm15, xmm11
jbe 0x14004d22f
vmovss xmm0, dword [0x140061e64]
vcomiss xmm0, xmm15
jbe 0x14004d22f
mov ecx, dword [0x14006bcdc]
add rcx, rdi
call fcn.140003730
mov ecx, dword [0x14006bcec]
mov r15, rax
add rcx, rdi
mov qword [rsp + 0x168], rax
call fcn.140003730
movsxd rdx, dword [0x140fb40d4]
movabs r8, 0x7fffffffffbffffe
add rdx, rsi
mov rbx, rax
vxorps xmm14, xmm14, xmm14
vmovss dword [rsp + 0x1d0], xmm14
mov edi, 4
lea rcx, [rdx - 0x400001]
cmp rcx, r8
ja 0x14004c7d9
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1d0]
mov r9d, edi
call fcn.14003c5c0
vmovss xmm14, dword [rsp + 0x1d0]
movabs r8, 0x7fffffffffbffffe
vmovss xmm0, dword [0x140061de4]
vcomiss xmm0, xmm14
ja 0x14004c7f2
vcomiss xmm14, dword [0x140061e38]
jbe 0x14004c7fa
vmovss xmm14, dword [0x140061e0c]
vxorps xmm11, xmm11, xmm11
vxorps xmm12, xmm12, xmm12
vxorps xmm13, xmm13, xmm13
vmovss dword [rsp + 0xf0], xmm11
vmovss dword [rsp + 0xf4], xmm12
vmovss dword [rsp + 0xf8], xmm13
test r15, r15
je 0x14004c8b2
movsxd rdx, dword [0x140fb40b0]
add rdx, qword [rsp + 0x198]
vmovss dword [rsp + 0x1b0], xmm11
vmovss dword [rsp + 0x1b4], xmm13
vmovss dword [rsp + 0x1b8], xmm12
lea rax, [rdx - 0x400001]
cmp rax, r8
ja 0x14004c897
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1b0]
mov r9d, 0xc
call fcn.14003c5c0
vmovss xmm12, dword [rsp + 0x1b8]
vmovss xmm13, dword [rsp + 0x1b4]
vmovss xmm11, dword [rsp + 0x1b0]
vmovss dword [rsp + 0xf0], xmm11
vmovss dword [rsp + 0xf4], xmm12
vmovss dword [rsp + 0xf8], xmm13
mov eax, dword [0x140fb40b4]
test eax, eax
jne 0x14004ca41
cmp byte [0x140061887], al
vmovups xmm0, xmmword [str._feWRYR_tSfey_UV.]
vmovsd xmm1, qword [0x140061880]
vmovups xmmword [rsp + 0xc0], xmm0
vmovsd qword [rsp + 0xd0], xmm1
je 0x14004ca09
vmovdqu xmm0, xmmword [0x140061fe0]
vmovdqu xmm7, xmmword [0x140061ed0]
vmovdqu xmm6, xmmword [0x140062020]
vmovdqu xmm9, xmmword [0x140061f20]
mov eax, 0x1f
lea rcx, [rsp + 0xc4]
vmovdqu xmmword [rsp + 0x1c0], xmm0
mov r8d, dword [rsp + 0x1c0]
xor edx, edx
vmovd xmm8, edi
vmovd xmm10, eax
nop word [rax + rax]
vmovd xmm0, edx
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm0, xmm4, xmm10
vpaddd xmm1, xmm0, xmm4
vmovd xmm0, dword [rcx - 4]
vpmulld xmm2, xmm1, xmm9
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm1, r8d
vpaddb xmm2, xmm4, xmm1
vpxor xmm1, xmm2, xmm0
vmovd dword [rcx - 4], xmm1
lea eax, [rdx + 4]
add edx, 8
lea rcx, [rcx + 8]
vmovd xmm0, eax
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm10
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmm9
vmovd xmm0, r8d
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vpaddb xmm1, xmm4, xmm0
vmovd xmm0, dword [rcx - 8]
vpxor xmm1, xmm1, xmm0
vmovd dword [rcx - 8], xmm1
cmp edx, 0x18
jl 0x14004c940
mov rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004ca29
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004ca2b
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0xc0]
call fcn.14003b520
mov dword [0x140fb40b4], eax
cmp dword [0x140fb40dc], 0
jne 0x14004cc1f
mov eax, dword [0x140061dc8]
lea rcx, [rsp + 0xc4]
vmovups xmm0, xmmword [str._fWEQY_bgfxZ_VWQ_a__F]
vmovdqu xmm7, xmmword [0x140061ed0]
vmovdqu xmm6, xmmword [0x140062020]
vmovdqu xmm9, xmmword [0x140061f20]
mov dword [rsp + 0xd0], eax
xor r8d, r8d
movzx eax, word [0x140061dcc]
mov word [rsp + 0xd4], ax
movzx eax, byte [0x140061dce]
vmovups xmmword [rsp + 0xc0], xmm0
vmovdqu xmm0, xmmword [0x140061fe0]
mov byte [rsp + 0xd6], al
mov eax, 0x1f
vmovdqu xmmword [rsp + 0x1c0], xmm0
mov edx, dword [rsp + 0x1c0]
vmovd xmm10, eax
vmovd xmm8, edi
vmovd xmm0, r8d
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm0, xmm4, xmm10
vpaddd xmm1, xmm0, xmm4
vmovd xmm0, dword [rcx - 4]
vpmulld xmm2, xmm1, xmm9
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm1, edx
vpaddb xmm2, xmm4, xmm1
vpxor xmm1, xmm2, xmm0
vmovd dword [rcx - 4], xmm1
lea eax, [r8 + 4]
add r8d, 8
lea rcx, [rcx + 8]
vmovd xmm0, eax
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm10
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmm9
vmovd xmm0, edx
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vpaddb xmm1, xmm4, xmm0
vmovd xmm0, dword [rcx - 8]
vpxor xmm1, xmm1, xmm0
vmovd dword [rcx - 8], xmm1
cmp r8d, 0x10
jl 0x14004cad1
cmp r8d, 0x17
jge 0x14004cbe1
movsxd rax, r8d
lea r9, [rsp + 0xc0]
add r9, rax
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0x17
jl 0x14004cbb0
mov rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004cc01
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004cc03
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0xc0]
call fcn.14003b520
mov dword [0x140fb40dc], eax
mov eax, dword [0x140fb40b4]
movsxd rcx, eax
add rcx, rbx
call fcn.140007100
movsxd rcx, dword [0x140fb40dc]
mov r14d, eax
add rcx, rbx
call fcn.140007100
cmp dword [rsp + 0xb4], 0
mov esi, eax
jne 0x14004cd40
mov rax, qword [rsp + 0x190]
movabs rcx, 0x7fffffffffbffffe
movsxd rdx, dword [0x140fb40e4]
add rdx, qword [rsp + 0x188]
vxorps xmm10, xmm10, xmm10
mov qword [rsp + 0x178], rax
vmovss dword [rsp + 0x1a0], xmm10
lea rax, [rdx - 0x400001]
mov dword [0x140fb4094], r14d
vmovss dword [rsp + 0x1a4], xmm10
vmovss dword [rsp + 0x1a8], xmm10
cmp rax, rcx
ja 0x14004cd09
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1a0]
mov r9d, 0xc
call fcn.14003c5c0
vmovss xmm1, dword [rsp + 0x1a0]
vucomiss xmm1, xmm10
vmovss dword [rsp + 0xe0], xmm1
jp 0x14004ccdc
je 0x14004cd09
vmovss xmm1, dword [rsp + 0x1a8]
vucomiss xmm1, xmm10
vmovss xmm2, dword [rsp + 0x1a4]
vmovss dword [rsp + 0xe4], xmm1
vmovss dword [rsp + 0xe8], xmm2
jp 0x14004cd29
jne 0x14004cd29
vaddss xmm1, xmm13, xmm14
vmovss dword [rsp + 0xe8], xmm1
vmovss dword [rsp + 0xe0], xmm11
vmovss dword [rsp + 0xe4], xmm12
vmovss xmm11, dword [0x140061e04]
mov r14d, 1
lea r15d, [r14 + 0x1e]
jmp 0x14004d234
mov eax, dword [0x140fb40a4]
test eax, eax
jne 0x14004cf29
mov eax, dword [0x140061a30]
lea rcx, [rsp + 0xc4]
vmovups xmm0, xmmword [str._fnb_ULSEvXW]
vmovsd xmm1, qword [0x140061a28]
vmovdqu xmm7, xmmword [0x140061ed0]
vmovdqu xmm6, xmmword [0x140062020]
vmovdqu xmm9, xmmword [0x140061f20]
mov dword [rsp + 0xd8], eax
xor r8d, r8d
movzx eax, byte [0x140061a34]
vmovups xmmword [rsp + 0xc0], xmm0
vmovdqu xmm0, xmmword [0x140061fe0]
mov byte [rsp + 0xdc], al
mov eax, 0x1f
vmovdqu xmmword [rsp + 0x1c0], xmm0
mov edx, dword [rsp + 0x1c0]
vmovd xmm10, eax
vmovsd qword [rsp + 0xd0], xmm1
vmovd xmm8, edi
nop dword [rax]
nop word [rax + rax]
vmovd xmm0, r8d
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm0, xmm4, xmm10
vpaddd xmm1, xmm0, xmm4
vmovd xmm0, dword [rcx - 4]
vpmulld xmm2, xmm1, xmm9
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vmovd xmm1, edx
vpaddb xmm2, xmm4, xmm1
vpxor xmm1, xmm2, xmm0
vmovd dword [rcx - 4], xmm1
lea eax, [r8 + 4]
add r8d, 8
lea rcx, [rcx + 8]
vmovd xmm0, eax
vpshufd xmm0, xmm0, 0
vpaddd xmm5, xmm0, xmm7
vpunpckldq xmm0, xmm5, xmm5
vpmuldq xmm3, xmm0, xmm6
vpunpckhdq xmm1, xmm5, xmm5
vpmuldq xmm2, xmm1, xmm6
vshufps xmm0, xmm3, xmm2, 0xdd
vpsrad xmm4, xmm0, xmm8
vpsrld xmm1, xmm4, xmm10
vpaddd xmm0, xmm1, xmm4
vpmulld xmm2, xmm0, xmm9
vmovd xmm0, edx
vpsubd xmm3, xmm5, xmm2
vpshufb xmm4, xmm3, xmmword [0x140061e90]
vpaddb xmm1, xmm4, xmm0
vmovd xmm0, dword [rcx - 8]
vpxor xmm1, xmm1, xmm0
vmovd dword [rcx - 8], xmm1
cmp r8d, 0x18
jl 0x14004cde0
cmp r8d, 0x1d
jge 0x14004cef1
movsxd rax, r8d
lea r9, [rsp + 0xc0]
add r9, rax
nop
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 0x1d
jl 0x14004cec0
mov rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004cf11
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004cf13
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0xc0]
call fcn.14003b520
mov dword [0x140fb40a4], eax
movsxd rcx, eax
add rcx, rbx
call fcn.140003730
mov rbx, rax
test rax, rax
je 0x14004d0cf
cmp dword [0x140fb409c], 0
jne 0x14004cfe7
movzx ecx, byte [0x140061a80]
vmovsd xmm0, qword [str._npFRSSE8]
vmovsd qword [rsp + 0xa0], xmm0
xor byte [rsp + 0xa1], 0x31
xor cl, 0x38
xor byte [rsp + 0xa2], 0x32
xor byte [rsp + 0xa3], 0x33
xor byte [rsp + 0xa4], 0x34
xor byte [rsp + 0xa5], 0x35
xor byte [rsp + 0xa6], 0x36
xor byte [rsp + 0xa7], 0x37
mov byte [rsp + 0xa8], cl
mov rcx, rax
mov byte [rsp + 0xa0], 0x6d
call fcn.140003730
test rax, rax
je 0x14004cfcf
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004cfd1
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0xa0]
call fcn.14003b520
mov dword [0x140fb409c], eax
mov eax, dword [0x140fb40cc]
test eax, eax
jne 0x14004d08e
movzx eax, byte [0x140061b58]
mov rcx, rbx
vmovsd xmm0, qword [str._nVZRB_8]
vmovsd qword [rsp + 0x90], xmm0
xor byte [rsp + 0x91], 0x31
xor al, 0x38
xor byte [rsp + 0x92], 0x32
xor byte [rsp + 0x93], 0x33
xor byte [rsp + 0x94], 0x34
xor byte [rsp + 0x95], 0x35
xor byte [rsp + 0x96], 0x36
xor byte [rsp + 0x97], 0x37
mov byte [rsp + 0x98], al
mov byte [rsp + 0x90], 0x6d
call fcn.140003730
test rax, rax
je 0x14004d076
mov rcx, rax
call fcn.140003730
xor ecx, ecx
test rax, rax
cmovne rcx, rax
jmp 0x14004d078
xor ecx, ecx
xor r8d, r8d
lea rdx, [rsp + 0x90]
call fcn.14003b520
mov dword [0x140fb40cc], eax
movsxd rcx, eax
add rcx, rbx
call fcn.140003730
mov rdi, rax
test eax, eax
je 0x14004d0cf
movsxd rcx, dword [0x140fb409c]
add rcx, rbx
call fcn.140003730
test rax, rax
je 0x14004d0cf
mov ecx, dword [0x1401a3e80]
lea r9d, [rdi + rdi]
lea rdx, [rax + 0x20]
lea r8, [rsp + 0x2a0]
call fcn.14003c5c0
lea rax, [rsp + 0x180]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x100]
lea rax, [rsp + 0x1c0]
vxorps xmm0, xmm0, xmm0
lea r8, [rsp + 0xb8]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0xf0]
vmovups xmmword [rsp + 0x1c0], xmm0
call fcn.140043db0
test al, al
je 0x14004d21b
lea rcx, [rsp + 0x2a0]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x14004d132
mov ebx, dword [rsp + 0xb8]
lea rcx, [rsp + 0x320]
cmp rax, 1
jbe 0x14004d16e
mov r9d, ebx
mov dword [rsp + 0x20], esi
lea r8, [rsp + 0x2a0]
lea rdx, str.__s_._dM.Lv._d_
call fcn.14000bf80
jmp 0x14004d180
mov r9d, esi
lea rdx, str._Player_._dM.Lv._d_
mov r8d, ebx
call fcn.14000bf80
cmp ebx, 1
jle 0x14004d21b
cmp dword [0x140fb4094], r14d
jne 0x14004d57c
cmp byte [0x14006bcce], 0
vmovss xmm6, dword [rsp + 0x1c8]
vmovss xmm7, dword [rsp + 0x1c4]
vmovss xmm8, dword [rsp + 0x1c0]
je 0x14004d1dd
vmovss xmm2, dword [rsp + 0x1cc]
vmovaps xmm3, xmm6
vmovaps xmm1, xmm7
vmovaps xmm0, xmm8
mov dword [rsp + 0x20], 0xff00ff00
call fcn.140041fa0
cmp byte [0x14006bccd], 0
je 0x14004d21b
vcvtss2sd xmm0, xmm6, xmm6
vmulsd xmm2, xmm0, qword [0x140061e20]
vcvtss2sd xmm1, xmm7, xmm7
vaddsd xmm2, xmm2, xmm1
lea rax, [rsp + 0x320]
mov r8d, 0xff00ff00
vcvttsd2si edx, xmm2
vcvttss2si ecx, xmm8
mov qword [rsp + 0x20], rax
call fcn.1400428e0
vmovss xmm11, dword [0x140061e04]
mov r14d, 1
mov r15d, 0x1f
mov edi, 4
mov edx, dword [rsp + 0xb4]
mov eax, dword [0x140fb3ef4]
inc edx
add eax, 0x14
mov dword [rsp + 0xb4], edx
cmp edx, eax
jl 0x14004b2a0
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0x170]
mov r12d, dword [rsp + 0x1d4]
cmp byte [0x1401a3ed2], 0
vmovss xmm0, dword [0x14006bcc0]
vmovss dword [rsp + 0xb8], xmm0
je 0x14004ddbb
mov eax, dword [0x14006bcb0]
cdq
sub eax, edx
sar eax, 1
mov ebx, eax
mov eax, dword [0x14006bcb4]
vcvttss2si esi, xmm0
vmovss xmm0, dword [0x140061df4]
cdq
mov ecx, ebx
vxorps xmm7, xmm7, xmm7
vxorps xmm15, xmm15, xmm15
vxorps xmm8, xmm8, xmm8
sub eax, edx
sub ecx, esi
sar eax, 1
vcvtsi2ss xmm7, xmm7, eax
vcvtsi2ss xmm15, xmm15, ecx
vcvtsi2ss xmm8, xmm8, esi
vmovss dword [rsp + 0x1d4], xmm7
vmovss dword [rsp + 0x230], xmm7
vmovss dword [rsp + 0x234], xmm15
mov edi, eax
vzeroupper
call fcn.14004f3a0
vmulss xmm12, xmm0, xmm8
vmovss xmm0, dword [0x140061df4]
vxorps xmm13, xmm13, xmm13
vaddss xmm11, xmm7, xmm12
vcvtsi2ss xmm13, xmm13, ebx
call fcn.14004eea0
vmulss xmm9, xmm0, xmm8
vmovss xmm0, dword [0x140061e08]
vsubss xmm14, xmm13, xmm9
vmovss dword [rsp + 0x23c], xmm14
vmovss dword [rsp + 0x238], xmm11
call fcn.14004f3a0
vmulss xmm10, xmm0, xmm8
vmovss xmm0, dword [0x140061e08]
vaddss xmm7, xmm7, xmm10
call fcn.14004eea0
vmovss xmm6, dword [rsp + 0x1d4]
mov rcx, qword [0x1401a3ea8]
lea eax, [rdi + rsi]
vmulss xmm1, xmm0, xmm8
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsp + 0x248], xmm0
vxorps xmm0, xmm0, xmm0
vsubss xmm5, xmm13, xmm1
vaddss xmm4, xmm13, xmm1
lea eax, [rbx + rsi]
sub edi, esi
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsp + 0x264], xmm0
vaddss xmm1, xmm13, xmm9
vsubss xmm3, xmm6, xmm12
vsubss xmm2, xmm6, xmm10
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, edi
vmovss dword [rsp + 0x278], xmm0
vmovss dword [rsp + 0x240], xmm7
vmovss dword [rsp + 0x244], xmm5
vmovss dword [rsp + 0x24c], xmm13
vmovss dword [rsp + 0x250], xmm7
vmovss dword [rsp + 0x254], xmm4
vmovss dword [rsp + 0x258], xmm11
vmovss dword [rsp + 0x25c], xmm1
vmovss dword [rsp + 0x260], xmm6
vmovss dword [rsp + 0x268], xmm3
vmovss dword [rsp + 0x26c], xmm1
vmovss dword [rsp + 0x270], xmm2
vmovss dword [rsp + 0x274], xmm4
vmovss dword [rsp + 0x27c], xmm13
vmovss dword [rsp + 0x280], xmm2
vmovss dword [rsp + 0x284], xmm5
vmovss dword [rsp + 0x288], xmm3
vmovss dword [rsp + 0x28c], xmm14
vmovss dword [rsp + 0x290], xmm6
vmovss dword [rsp + 0x294], xmm15
mov rax, qword [rcx]
vmovss xmm1, dword [0x140061e04]
call qword [rax + 0x58]
mov rcx, qword [0x1401a3ea8]
lea rdx, [rsp + 0x230]
mov r9d, 0xff00ff00
mov r8d, 0xd
mov rax, qword [rcx]
call qword [rax + 0x28]
cmp byte [0x1401a3ed2], 0
je 0x14004ddbb
vmovss xmm4, dword [rsp + 0x1e0]
vmovss xmm5, dword [rsp + 0x1dc]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, dword [0x14006bcb4]
vmulsd xmm0, xmm0, qword [0x140061e18]
vcvtss2sd xmm1, xmm4, xmm4
vsubsd xmm1, xmm1, xmm0
vcvtss2sd xmm2, xmm5, xmm5
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, dword [0x14006bcb0]
vcvtsd2ss xmm9, xmm1, xmm1
vmulsd xmm1, xmm0, qword [0x140061e18]
vmulss xmm0, xmm9, dword [0x140061de8]
vsubsd xmm2, xmm2, xmm1
vcvtsd2ss xmm10, xmm2, xmm2
vmulss xmm2, xmm10, dword [0x140061de8]
vxorps xmm13, xmm13, xmm13
vucomiss xmm4, xmm13
vmovss dword [0x140fb3ef0], xmm2
vmovss dword [0x1401a3ed4], xmm0
jp 0x14004d520
je 0x14004d54b
vxorps xmm3, xmm3, xmm3
vcvtsi2ss xmm3, xmm3, dword [rsp + 0x1d8]
vxorps xmm2, xmm2, xmm2
vcvtsi2ss xmm2, xmm2, r12d
vmovaps xmm1, xmm5
vmovaps xmm0, xmm4
mov dword [rsp + 0x20], 0xff00ffff
call fcn.140042760
cmp byte [0x1401a3ed1], 0
mov eax, 2
cmove r14d, eax
test r15, r15
je 0x14004da4c
mov eax, dword [0x14006bce8]
cmp eax, 2
jne 0x14004d98a
lea r8d, [rax + 0x41]
jmp 0x14004d997
vmovss xmm7, dword [rsp + 0x184]
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, dword [rsp + 0x1d8]
vcvtss2sd xmm1, xmm7, xmm7
vsubsd xmm0, xmm1, xmm0
vmovsd xmm1, qword [0x140061e30]
call fcn.14001f9c0
vmovss xmm8, dword [rsp + 0x180]
vmovaps xmm6, xmm0
vxorps xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, dword [rsp + 0x1d4]
vcvtss2sd xmm1, xmm8, xmm8
vsubsd xmm0, xmm1, xmm0
vmovsd xmm1, qword [0x140061e30]
call fcn.14001f9c0
vaddsd xmm1, xmm6, xmm0
vcvtsd2ss xmm0, xmm1, xmm1
vxorps xmm2, xmm2, xmm2
vucomiss xmm2, xmm0
ja 0x14004d5ef
vsqrtss xmm1, xmm0, xmm0
jmp 0x14004d5f8
call fcn.14004fa98
vmovaps xmm1, xmm0
vmovss xmm0, dword [0x14006bcc0]
vcomiss xmm0, xmm1
jbe 0x14004d64a
test r12d, r12d
je 0x14004d64a
vmovss dword [0x140fb3f00], xmm14
vaddss xmm14, xmm13, dword [0x14006bcbc]
vmovss dword [rsp + 0xb0], xmm14
vmovss dword [rsp + 0x1e0], xmm8
vmovss dword [rsp + 0x1dc], xmm7
vmovss dword [rsp + 0x40], xmm11
vmovss dword [rsp + 0x44], xmm12
mov qword [rsp + 0x170], r15
cmp byte [0x14006bcce], 0
vmovss xmm7, dword [rsp + 0x1cc]
vmovss xmm6, dword [rsp + 0x1c8]
vmovss xmm8, dword [rsp + 0x1c4]
vmovss xmm9, dword [rsp + 0x1c0]
je 0x14004d871
vmovaps xmm3, xmm6
vmovaps xmm2, xmm7
vmovaps xmm1, xmm8
vmovaps xmm0, xmm9
test r12d, r12d
je 0x14004d69c
mov dword [rsp + 0x20], 0xffffff00
jmp 0x14004d6a4
mov dword [rsp + 0x20], 0xffff0000
call fcn.140041fa0
mov rcx, qword [0x1401a3e98]
lea r8, [rsp + 0x1e8]
vmovsd xmm11, qword [0x140061e20]
vcvttss2si edi, xmm8
vcvtss2sd xmm0, xmm7, xmm7
vmulsd xmm2, xmm0, xmm11
vcvtss2sd xmm1, xmm9, xmm9
vaddsd xmm2, xmm2, xmm1
vcvttsd2si esi, xmm2
vcvttss2si ebx, xmm6
mov dword [rsp + 0x1e8], esi
mov edx, 1
mov dword [rsp + 0x1ec], edi
mov r9d, edx
vxorps xmm10, xmm10, xmm10
mov dword [rsp + 0x30], 0
lea r14d, [rsi + 3]
mov dword [rsp + 0x1f0], r14d
lea r15d, [rdi + rbx]
mov dword [rsp + 0x1f4], r15d
mov rax, qword [rcx]
vmovss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 0xc8000000
call qword [rax + 0x158]
vmovss xmm1, dword [0x140061e04]
mov rcx, qword [0x1401a3e98]
test r13d, r13d
vxorps xmm0, xmm0, xmm0
mov eax, 0x64
mov dword [rsp + 0x30], 0
cmove r13d, eax
vcvtsi2ss xmm0, xmm0, r13d
vdivss xmm3, xmm15, xmm0
vsubss xmm1, xmm1, xmm3
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, ebx
vmulss xmm2, xmm1, xmm0
vmovss xmm0, dword [0x140061dec]
vcomiss xmm0, xmm3
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, edi
vaddss xmm2, xmm2, xmm1
vcvttss2si eax, xmm2
vmovss dword [rsp + 0x28], xmm10
jbe 0x14004d7dd
mov dword [rsp + 0x200], r14d
lea r8, [rsp + 0x1f8]
mov dword [rsp + 0x1f8], esi
mov r14d, 1
mov dword [rsp + 0x1fc], eax
mov r9d, r14d
mov dword [rsp + 0x204], r15d
mov edx, r14d
mov rax, qword [rcx]
mov dword [rsp + 0x20], 0xffff0000
call qword [rax + 0x158]
jmp 0x14004d87f
vcomiss xmm3, dword [0x140061dfc]
jbe 0x14004d82c
mov dword [rsp + 0x210], r14d
lea r8, [rsp + 0x208]
mov dword [rsp + 0x208], esi
mov r14d, 1
mov dword [rsp + 0x20c], eax
mov r9d, r14d
mov dword [rsp + 0x214], r15d
mov edx, r14d
mov rax, qword [rcx]
mov dword [rsp + 0x20], 0xff00ff00
call qword [rax + 0x158]
jmp 0x14004d87f
mov dword [rsp + 0x220], r14d
lea r8, [rsp + 0x218]
mov dword [rsp + 0x218], esi
mov r14d, 1
mov dword [rsp + 0x21c], eax
mov r9d, r14d
mov dword [rsp + 0x224], r15d
mov edx, r14d
mov rax, qword [rcx]
mov dword [rsp + 0x20], 0xffffff00
call qword [rax + 0x158]
jmp 0x14004d87f
vmovsd xmm11, qword [0x140061e20]
mov r14d, 1
cmp byte [0x140fb3f08], 0
je 0x14004d8a5
lea r8, [rsp + 0xf0]
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x230]
call fcn.140043200
cmp byte [0x14006bccc], 0
vmovss xmm10, dword [0x140061df0]
je 0x14004d91b
vmovss xmm2, dword [rsp + 0x100]
vmulss xmm0, xmm6, xmm10
vaddss xmm3, xmm0, dword [rsp + 0x104]
mov eax, 0x66666667
imul dword [0x14006bcb0]
vxorps xmm1, xmm1, xmm1
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [0x14006bcb4]
shl edx, 2
vcvtsi2ss xmm1, xmm1, edx
cdq
sub eax, edx
sar eax, 1
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
test r12d, r12d
je 0x14004d90e
mov dword [rsp + 0x20], 0xffffff00
jmp 0x14004d916
mov dword [rsp + 0x20], 0xffff0000
call fcn.140042760
cmp byte [0x14006bccd], 0
je 0x14004d965
lea rax, [rsp + 0x320]
mov qword [rsp + 0x20], rax
vcvtss2sd xmm0, xmm6, xmm6
vmulsd xmm2, xmm0, xmm11
vcvtss2sd xmm1, xmm8, xmm8
vaddsd xmm2, xmm2, xmm1
vmulss xmm0, xmm7, xmm10
vaddss xmm1, xmm0, xmm9
vcvttss2si ecx, xmm1
vcvttsd2si edx, xmm2
test r12d, r12d
je 0x14004d972
mov r8d, 0xff00ffff
call fcn.1400428e0
vmovss xmm11, dword [0x140061e04]
jmp 0x14004d229
mov r8d, 0xffff0000
call fcn.1400428e0
vmovss xmm11, dword [0x140061e04]
jmp 0x14004d229
cmp eax, 1
jne 0x14004da3f
lea r8d, [rax + 0x45]
mov rdx, r15
lea rcx, [rsp + 0x1a0]
call fcn.140042b90
vmovss xmm0, dword [rsp + 0x44]
vmovss xmm7, dword [0x140061e28]
vmovaps xmm1, xmm7
vmovsd xmm8, qword [rax]
mov ebx, dword [rax + 8]
vshufps xmm11, xmm8, xmm8, 0x55
vsubss xmm0, xmm0, xmm11
call fcn.140021060
vmovaps xmm6, xmm0
vmovss xmm0, dword [rsp + 0x40]
vsubss xmm0, xmm0, xmm8
vmovaps xmm1, xmm7
call fcn.140021060
vmovss xmm14, dword [rsp + 0xb0]
vaddss xmm6, xmm6, xmm0
vmovd xmm12, ebx
vsubss xmm0, xmm14, xmm12
vmovaps xmm1, xmm7
call fcn.140021060
vaddss xmm0, xmm6, xmm0
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
ja 0x14004da1b
vsqrtss xmm0, xmm0, xmm0
jmp 0x14004da20
call fcn.14004fa98
vmovss xmm1, dword [0x140061e40]
vcomiss xmm1, xmm0
jbe 0x14004da55
vmovaps xmm6, xmm8
vmovaps xmm8, xmm11
vmovaps xmm14, xmm12
jmp 0x14004da61
test eax, eax
jne 0x14004da4c
lea r8d, [rax + 0x6e]
jmp 0x14004d997
vmovss xmm14, dword [rsp + 0xb0]
vmovss xmm6, dword [rsp + 0x40]
vmovss xmm8, dword [rsp + 0x44]
mov ecx, r14d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jb 0x14004da7e
cmp byte [0x140fb3f09], 0
je 0x14004ddbb
vmovss xmm11, dword [0x140062040]
vmovss xmm0, dword [rsp + 0xb8]
vxorps xmm1, xmm0, xmm11
vcomiss xmm9, xmm1
jb 0x14004ddbb
vcomiss xmm0, xmm9
jb 0x14004ddbb
vcomiss xmm10, xmm1
jb 0x14004ddbb
vcomiss xmm0, xmm10
jb 0x14004ddbb
test r13, r13
je 0x14004ddbb
vmovss xmm0, dword [rsp + 0xe0]
vucomiss xmm0, xmm13
jp 0x14004dadd
je 0x14004ddbb
vucomiss xmm6, xmm13
jp 0x14004daea
je 0x14004ddbb
movsxd rdi, dword [0x140fb4004]
test edi, edi
je 0x14004ddbb
cmp dword [0x140fb3ff8], 0
je 0x14004ddbb
vsubss xmm7, xmm6, xmm0
vsubss xmm6, xmm8, dword [rsp + 0xe4]
vmovaps xmm0, xmm6
vmovaps xmm1, xmm7
call fcn.14004eaa8
vmovss xmm12, dword [0x140061e3c]
vmovss xmm13, dword [0x140061e58]
vmovss xmm8, dword [0x140061e5c]
vdivss xmm1, xmm0, xmm12
vmovss xmm0, dword [0x140061e68]
vmulss xmm2, xmm1, xmm13
vmulss xmm3, xmm2, xmm8
vsubss xmm1, xmm0, xmm3
lea rcx, [rdi + r13]
vcvttss2si ebx, xmm1
call fcn.140007100
movsxd rcx, dword [0x140fb3ff8]
mov edi, eax
add rcx, r13
call fcn.140007100
movsxd rcx, dword [0x140fb3ffc]
mov esi, eax
add rcx, r13
call fcn.140007100
movsxd rcx, dword [0x140fb3ff0]
mov r14d, eax
add rcx, r13
call fcn.140007100
movsxd rcx, dword [0x140fb4008]
mov r15d, eax
add rcx, r13
call fcn.140007180
movsxd rcx, dword [0x140fb4000]
add rcx, r13
vmovaps xmm9, xmm0
call fcn.140007180
movsxd rcx, dword [0x140fb3ff4]
add rcx, r13
vmovaps xmm10, xmm0
call fcn.140003730
vsubss xmm14, xmm14, dword [rsp + 0xe8]
vmulss xmm2, xmm6, xmm6
vmulss xmm1, xmm7, xmm7
vaddss xmm0, xmm2, xmm1
vxorps xmm3, xmm3, xmm3
vucomiss xmm3, xmm0
mov r12, rax
ja 0x14004dbf4
vsqrtss xmm0, xmm0, xmm0
jmp 0x14004dbf9
call fcn.14004fa98
vmovaps xmm1, xmm0
vmovaps xmm0, xmm14
call fcn.14004eaa8
vxorps xmm1, xmm0, xmm11
vdivss xmm2, xmm1, xmm12
vmulss xmm3, xmm2, xmm13
vmulss xmm0, xmm3, xmm8
vcvttss2si eax, xmm0
vmulss xmm1, xmm9, xmm8
cmp ebx, 0x2bf20
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, eax
vaddss xmm0, xmm1, xmm4
vcvttss2si ecx, xmm0
vmulss xmm0, xmm10, xmm8
lea eax, [rbx - 0x57e40]
mov dword [rsp + 0x1d8], ecx
cmovl eax, ebx
test r12, r12
vxorps xmm3, xmm3, xmm3
vcvtsi2ss xmm3, xmm3, eax
vaddss xmm1, xmm0, xmm3
vmulss xmm0, xmm9, dword [0x140061e60]
vcvttss2si eax, xmm1
vaddss xmm1, xmm0, xmm4
vmulss xmm0, xmm10, dword [0x140061e60]
mov dword [rsp + 0x1dc], eax
movabs r12, 0x7fffffffffbffffe
vcvttss2si eax, xmm1
vaddss xmm1, xmm0, xmm3
mov dword [rsp + 0x1e0], eax
vcvttss2si eax, xmm1
mov dword [rsp + 0x1d4], eax
je 0x14004dce5
movsxd rdx, dword [0x140fb3ff4]
add rdx, r13
mov qword [rsp + 0x168], 0
lea rax, [rdx - 0x400001]
cmp rax, r12
ja 0x14004dce5
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x168]
mov r9d, 8
call fcn.14003b760
mov ecx, dword [rsp + 0x1d8]
mov ebx, 4
cmp edi, ecx
je 0x14004dd1a
movsxd rdx, dword [0x140fb4004]
add rdx, r13
lea rax, [rdx - 0x400001]
cmp rax, r12
ja 0x14004dd1a
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1d8]
mov r9d, ebx
call fcn.14003b760
cmp esi, dword [rsp + 0x1dc]
je 0x14004dd4f
movsxd rdx, dword [0x140fb3ff8]
add rdx, r13
lea rax, [rdx - 0x400001]
cmp rax, r12
ja 0x14004dd4f
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1dc]
mov r9, rbx
call fcn.14003b760
cmp r14d, dword [rsp + 0x1e0]
je 0x14004dd85
movsxd rdx, dword [0x140fb3ffc]
add rdx, r13
lea rax, [rdx - 0x400001]
cmp rax, r12
ja 0x14004dd85
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1e0]
mov r9, rbx
call fcn.14003b760
cmp r15d, dword [rsp + 0x1d4]
je 0x14004ddbb
movsxd rdx, dword [0x140fb3ff0]
add rdx, r13
lea rax, [rdx - 0x400001]
cmp rax, r12
ja 0x14004ddbb
mov ecx, dword [0x1401a3e80]
lea r8, [rsp + 0x1d4]
mov r9, rbx
call fcn.14003b760
vmovaps xmm14, xmmword [rsp + 0x440]
vmovaps xmm13, xmmword [rsp + 0x450]
vmovaps xmm12, xmmword [rsp + 0x460]
vmovaps xmm9, xmmword [rsp + 0x490]
vmovaps xmm8, xmmword [rsp + 0x4a0]
vmovaps xmm7, xmmword [rsp + 0x4b0]
vmovaps xmm6, xmmword [rsp + 0x4c0]
mov rsi, qword [rsp + 0x4f0]
vmovaps xmm15, xmmword [rsp + 0x430]
mov r13, qword [rsp + 0x508]
mov rdi, qword [rsp + 0x4f8]
mov r15, qword [rsp + 0x4d0]
mov r12, qword [rsp + 0x500]
vzeroupper
mov rcx, qword [rsp + 0x420]
xor rcx, rsp
call fcn.14000ee10
lea r11, [rsp + 0x4d8]
vmovaps xmm10, xmmword [r11 - 0x58]
vmovaps xmm11, xmmword [r11 - 0x68]
mov rsp, r11
pop r14
pop rbx
ret