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

Disassembly:
push rbp
push rbx
push rsi
push r14
lea rbp, [rsp - 0x88]
sub rsp, 0x188
mov rax, qword [0x180079010]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov ecx, 0x2d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x18004d3ce
cmp byte [0x18007fe0a], 0
jne 0x18004d3ca
cmp byte [0x180079064], 0
sete byte [0x180079064]
mov al, 1
jmp 0x18004d3d0
xor al, al
xor esi, esi
mov byte [0x18007fe0a], al
cmp byte [0x180079064], sil
je 0x18004d3f5
mov eax, 0x1f4
mov byte [0x18007e800], 1
mov dword [0x180079048], eax
jmp 0x18004d40c
mov eax, esi
cmp qword [0x18007e470], rax
mov dword [0x180079048], eax
mov byte [0x18007e800], al
je 0x18004d420
cmp byte [0x18007e9ec], sil
je 0x18004d420
call fcn.18004c980
mov eax, dword [0x180079048]
mov rbx, qword [0x18007f7d8]
lea rdx, [rsp + 0x70]
mov qword [rsp + 0x1b0], rdi
mov r14d, 1
mov qword [rsp + 0x1b8], r12
mov qword [rsp + 0x1c0], r13
or dword [rbx + 0x1ab8], 2
lea rcx, [rbx + 0x1b30]
movaps xmmword [rsp + 0x170], xmm6
movaps xmmword [rsp + 0x160], xmm7
movaps xmmword [rsp + 0x150], xmm8
movaps xmmword [rsp + 0x140], xmm9
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov dword [rbx + 0x1ac0], r14d
mov dword [rsp + 0x70], 0x15
movaps xmmword [rsp + 0x100], xmm13
movaps xmm0, xmm1
movss dword [rbx + 0x1adc], xmm1
mulss xmm0, dword [0x18006d174]
movaps xmmword [rsp + 0xf0], xmm14
movss dword [rbx + 0x1ad8], xmm0
movups xmm0, xmmword [rbx + 0x1758]
movups xmmword [rsp + 0x74], xmm0
call fcn.180024c10
mov dword [rbx + 0x1758], 0x3f400000
mov dword [rbx + 0x175c], 0x3f400000
mov dword [rbx + 0x1760], 0x3f400000
mov dword [rbx + 0x1764], 0x3f800000
cmp dword [0x180079048], esi
je 0x180050cb1
movzx ecx, word [0x18006c320]
xor edx, edx
movzx eax, byte [0x18006c322]
mov r8d, 0x133
movsd xmm0, qword [str.__Y_OWW]
xor al, 0x3d
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x34
xor byte [rsp + 0x42], 0x35
xor byte [rsp + 0x43], 0x36
xor byte [rsp + 0x44], 0x37
xor byte [rsp + 0x45], 0x38
xor byte [rsp + 0x46], 0x39
xor byte [rsp + 0x47], 0x3a
mov word [rsp + 0x48], cx
xor cl, 0x3b
xor byte [rsp + 0x49], 0x3c
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x53
mov byte [rsp + 0x4a], al
call fcn.18001b3e0
mov rcx, qword [0x18007f7d8]
movd xmm0, dword [0x180079048]
movss xmm13, dword [0x18006d0f0]
cvtdq2ps xmm0, xmm0
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rbx, qword [rcx + 0x1a18]
movaps xmm2, xmm0
mulss xmm2, xmm13
lea rcx, [rsp + 0x70]
movsd xmm1, qword [rbx + 0x10]
addss xmm2, xmm0
movsd qword [rbp - 0x30], xmm1
movaps xmm0, xmmword [0x18006d4a0]
movaps xmm7, xmm1
movups xmmword [rsp + 0x70], xmm0
shufps xmm7, xmm7, 0x55
movaps xmm6, xmm1
subss xmm2, dword [0x18006d1c4]
movaps xmm0, xmm7
movss dword [rbp - 0x3c], xmm7
addss xmm6, xmm2
addss xmm0, xmm2
movss dword [rsp + 0x40], xmm6
movss dword [rsp + 0x44], xmm0
movss dword [rbp - 0x40], xmm6
call fcn.180013480
movss xmm0, dword [0x18006d160]
lea r8, [rsp + 0x40]
mov rcx, qword [rbx + 0x2a8]
lea rdx, [rbp - 0x40]
mov r9d, eax
movss dword [rsp + 0x20], xmm0
call fcn.18002e7e0
movaps xmm0, xmmword [0x18006d4a0]
lea rcx, [rsp + 0x70]
addss xmm7, dword [0x18006d224]
movss dword [rsp + 0x40], xmm6
movups xmmword [rsp + 0x70], xmm0
movss dword [rsp + 0x44], xmm7
call fcn.180013480
movss xmm0, dword [0x18006d194]
lea r8, [rsp + 0x40]
mov rcx, qword [rbx + 0x2a8]
lea rdx, [rbp - 0x30]
mov r9d, eax
mov dword [rsp + 0x28], 3
movss dword [rsp + 0x20], xmm0
call fcn.18002ea10
movsd xmm0, qword [str.__Y_OWW]
movzx ecx, word [0x18006c320]
movzx eax, byte [0x18006c322]
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
mov word [rbp - 0x38], cx
mov byte [rbp - 0x40], 0x53
mov rbx, qword [0x18007f7d8]
lea rdx, [rsp + 0x40]
movss xmm14, dword [0x18006d2d4]
xor al, 0x3d
movss xmm3, dword [0x18006d2b4]
xor cl, 0x3b
xor byte [rbp - 0x3b], 0x38
movss xmm2, dword [rbx + 0x1910]
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
xor byte [rbp - 0x37], 0x3c
mov byte [rbp - 0x36], al
lea rax, [rbp - 0x40]
mov byte [rbp - 0x38], cl
mov rcx, qword [rbx + 0x1908]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
call fcn.1800327c0
mov rax, qword [rbx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rcx, qword [rbx + 0x1a18]
mov eax, dword [0x180079048]
cdq
sub eax, edx
movss xmm3, dword [rcx + 0x10]
movss xmm2, dword [rcx + 0x14]
subss xmm3, dword [rcx + 0x54]
subss xmm2, dword [rcx + 0x58]
sar eax, 1
addss xmm2, dword [0x18006d1f0]
movd xmm0, eax
movzx eax, byte [0x18006c322]
cvtdq2ps xmm0, xmm0
xor al, 0x3d
mov byte [rsp + 0x4a], al
movss dword [rcx + 0xd4], xmm2
addss xmm3, xmm0
movss dword [rcx + 0xd0], xmm3
movss xmm0, dword [rcx + 0xec]
movss xmm1, dword [rcx + 0xe8]
maxss xmm0, xmm2
maxss xmm1, xmm3
movss dword [rcx + 0xec], xmm0
movsd xmm0, qword [str.__Y_OWW]
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x34
xor byte [rsp + 0x42], 0x35
xor byte [rsp + 0x43], 0x36
xor byte [rsp + 0x44], 0x37
xor byte [rsp + 0x45], 0x38
xor byte [rsp + 0x46], 0x39
xor byte [rsp + 0x47], 0x3a
movss dword [rcx + 0xe8], xmm1
movzx ecx, word [0x18006c320]
mov word [rsp + 0x48], cx
xor cl, 0x3b
xor byte [rsp + 0x49], 0x3c
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x53
call fcn.1800360e0
mov rcx, qword [0x18007f7d8]
movss xmm9, dword [0x18006d1f4]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0x10]
subss xmm0, dword [rax + 0x54]
movss xmm2, dword [rax + 0x14]
subss xmm2, dword [rax + 0x58]
addss xmm0, xmm9
addss xmm2, dword [0x18006d228]
movss dword [rax + 0xd0], xmm0
movss dword [rax + 0xd4], xmm2
movss xmm1, dword [rax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xec]
maxss xmm0, xmm2
movss dword [rax + 0xe8], xmm1
movss dword [rax + 0xec], xmm0
movss xmm6, dword [0x18006d25c]
movaps xmm0, xmm6
call fcn.18001da80
cmp dword [0x180079060], esi
lea r13, [0x18007e7e0]
mov ebx, dword [0x180079018]
lea r12d, [r14 + 0x1e]
jne 0x18004df87
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, dword [0x18006d1e0]
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rdx, qword [rcx + 0x1a18]
movsxd rcx, dword [rdx + 0x1a0]
lea eax, [rcx - 1]
mov dword [rdx + 0x1a0], eax
test eax, eax
jne 0x18004d91c
movss xmm0, dword [rdx + 0x258]
jmp 0x18004d929
mov rax, qword [rdx + 0x1a8]
movss xmm0, dword [rax + rcx*4 - 8]
movss dword [rdx + 0x184], xmm0
movss xmm0, dword [0x18006d274]
call fcn.18001da80
xorps xmm0, xmm0
mov qword [rbp - 0x50], rsi
mov r8d, 6
mov qword [rbp - 0x48], rsi
lea rdx, str.NLHOST
lea rcx, [rbp - 0x60]
movups xmmword [rbp - 0x60], xmm0
call fcn.180051ab0
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x70]
call fcn.18004b7c0
mov rdi, rax
cmp r13, rax
je 0x18004d9f0
mov rdx, qword [0x18007e7f8]
cmp rdx, 0x10
jb 0x18004d9b5
mov rcx, qword [0x18007e7e0]
inc rdx
cmp rdx, 0x1000
jb 0x18004d9b0
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, r12
ja 0x18004da22
mov rcx, r8
call fcn.180061ec0
movdqa xmm0, xmmword [0x18006d370]
movdqu xmmword [0x18007e7f0], xmm0
mov byte [0x18007e7e0], sil
movups xmm0, xmmword [rdi]
movups xmmword [0x18007e7e0], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [0x18007e7f0], xmm1
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], 0xf
mov byte [rdi], sil
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x18004da2e
mov rcx, qword [rsp + 0x70]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004da29
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, r12
jbe 0x18004da29
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180061ec0
mov rcx, qword [0x18007f7d8]
movdqa xmm0, xmmword [0x18006d370]
movdqu xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x70], sil
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rdx, qword [rcx + 0x1a18]
movsxd rcx, dword [rdx + 0x1a0]
lea eax, [rcx - 1]
mov dword [rdx + 0x1a0], eax
test eax, eax
jne 0x18004da7a
movss xmm0, dword [rdx + 0x258]
jmp 0x18004da87
mov rax, qword [rdx + 0x1a8]
movss xmm0, dword [rax + rcx*4 - 8]
movss dword [rdx + 0x184], xmm0
movaps xmm0, xmm6
call fcn.18001da80
mov rax, qword [0x18007f7d8]
lea rdx, [rsp + 0x40]
mov dword [rsp + 0x40], 0x42dc0000
mov dword [rsp + 0x44], 0x42960000
mov rcx, qword [rax + 0x1a18]
movzx eax, byte [0x18006c298]
xor al, 0x3b
mov byte [rbp - 0x38], al
movss xmm0, dword [rcx + 0xd4]
subss xmm0, dword [rcx + 0x14]
addss xmm0, dword [rcx + 0x58]
lea rcx, [rbp - 0x40]
cvttss2si edi, xmm0
movsd xmm0, qword [str._UCS]
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x40], 0x53
call fcn.180036a00
test al, al
je 0x18004db1b
call fcn.180059d80
mov rcx, qword [0x18007f7d8]
lea rdx, [rsp + 0x40]
movd xmm6, edi
cvtdq2ps xmm6, xmm6
mov dword [rsp + 0x40], 0x42dc0000
mov rax, qword [rcx + 0x1a18]
mov dword [rsp + 0x44], 0x42960000
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, [rbp - 0x40]
movss xmm0, dword [rax + 0x10]
subss xmm0, dword [rax + 0x54]
movss xmm2, dword [rax + 0x14]
subss xmm2, dword [rax + 0x58]
addss xmm0, dword [0x18006d250]
addss xmm2, xmm6
movss dword [rax + 0xd0], xmm0
movss dword [rax + 0xd4], xmm2
movss xmm1, dword [rax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xec]
maxss xmm0, xmm2
movss dword [rax + 0xe8], xmm1
movss dword [rax + 0xec], xmm0
movzx eax, byte [0x18006c550]
movsd xmm0, qword [0x18006c548]
xor al, 0x3b
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x38], al
mov byte [rbp - 0x40], 0x4c
call fcn.180036a00
test al, al
je 0x18004dbf6
call fcn.1800588f0
cmp byte [0x18006c307], sil
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
mov dword [rbp - 0x40], 0x42dc0000
mov dword [rbp - 0x3c], 0x42960000
movss xmm0, dword [rax + 0x10]
subss xmm0, dword [rax + 0x54]
movss xmm2, dword [rax + 0x14]
subss xmm2, dword [rax + 0x58]
addss xmm0, dword [0x18006d270]
addss xmm2, xmm6
movss dword [rax + 0xd0], xmm0
movss dword [rax + 0xd4], xmm2
movss xmm1, dword [rax + 0xe8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xec]
maxss xmm0, xmm2
movss dword [rax + 0xe8], xmm1
movss dword [rax + 0xec], xmm0
mov rax, qword [str.aQSDRKQ:rAAY]
mov qword [rsp + 0x40], rax
je 0x18004ddd0
cmp ebx, 2
jl 0x18004dd96
movdqa xmm2, xmmword [0x18006d3c0]
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rsp + 0x40]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x18006d430]
xorps xmm2, xmm0
punpckldq xmm1, xmm3
movd dword [rsp + 0x40], xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rsp + 0x44]
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x18006d430]
xorps xmm2, xmm0
movd dword [rsp + 0x44], xmm2
jmp 0x18004ddd0
lea r9, [rsp + 0x40]
mov r8d, esi
nop
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x18004dda0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x40]
call fcn.180036a00
test al, al
je 0x18004dde7
call fcn.18004bae0
cmp byte [0x18006c523], sil
movsd xmm0, qword [str.DPX]
mov eax, dword [0x18006c520]
movsd qword [rbp - 0x70], xmm0
mov dword [rsp + 0x40], 0x43bf0000
mov dword [rsp + 0x44], 0x420c0000
mov dword [rbp - 0x68], eax
je 0x18004df70
mov r8d, esi
cmp ebx, 2
jl 0x18004df2b
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.DPX]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp - 0x70], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rbp - 0x6c]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x6c], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x70]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x18004df40
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.180036a00
test al, al
je 0x18004df87
call fcn.18004c3b0
cmp dword [0x180079060], r14d
movss xmm8, dword [0x18006d214]
movaps xmmword [rsp + 0x130], xmm10
movaps xmmword [rsp + 0x110], xmm12
jne 0x18004e735
mov eax, dword [str.aURS7]
lea rdx, [0x18007e945]
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x40]
movzx eax, byte [0x18006c258]
xor byte [rsp + 0x41], 0x34
xor al, 0x37
xor byte [rsp + 0x42], 0x35
xor byte [rsp + 0x43], 0x36
mov byte [rsp + 0x44], al
mov byte [rsp + 0x40], 0x52
call fcn.180037c90
cmp byte [0x18007e945], sil
je 0x18004e735
cmp byte [0x18006c3bd], sil
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
movss xmm0, dword [rax + 0xe8]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movups xmm1, xmmword [str.qUV_CJXYP]
movups xmmword [rsp + 0x50], xmm1
movss dword [rax + 0xe8], xmm0
mov eax, dword [0x18006c3b8]
mov dword [rsp + 0x60], eax
movzx eax, word [0x18006c3bc]
mov word [rsp + 0x64], ax
je 0x18004e200
mov r8d, esi
cmp ebx, 2
jl 0x18004e1c5
movdqa xmm0, xmmword [0x18006d430]
lea rcx, [rsp + 0x54]
movdqa xmm5, xmmword [0x18006d3c0]
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm7, xmmword [0x18006d3f0]
movdqa xmmword [rsp + 0x70], xmm0
mov edx, dword [rsp + 0x70]
movd xmm6, r14d
movd xmm10, r12d
nop dword [rax]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm10
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm10
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x18004e0c0
cmp r8d, 0x16
jge 0x18004e200
movsxd rax, r8d
lea r9, [rsp + 0x50]
add r9, rax
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0x16
jl 0x18004e1d0
lea rdx, [0x18007e9ce]
lea rcx, [rsp + 0x50]
call fcn.180037c90
mov rcx, qword [0x18007f7d8]
lea r8, str.None
mov r9d, 9
lea rdx, [0x18007fe18]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, str.Weapon_group
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
call fcn.18004a220
cmp dword [0x18007fe18], esi
je 0x18004e735
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsxd rax, dword [0x18007fe18]
movsd xmm0, qword [str._AU_YWY_]
movsd qword [rbp - 0x40], xmm0
lea r8, [rax*4 + 0x170]
movzx eax, word [0x18006c360]
add r8, r13
mov word [rbp - 0x38], ax
cmp byte [0x18006c361], sil
je 0x18004e326
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
xor byte [rbp - 0x38], 0x3b
xor byte [rbp - 0x37], 0x3c
mov byte [rbp - 0x40], 0x48
lea rax, [rbp - 0x20]
mov dword [rbp - 0x20], 0x64
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x40]
mov dword [rbp - 0x30], esi
call fcn.18003a960
mov rcx, qword [0x18007f7d8]
lea r9, [rbp - 0x20]
mov dword [rbp - 0x30], 0x64
mov dword [rbp - 0x20], esi
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movzx ecx, word [0x18006c470]
mov word [rbp - 0x38], cx
xor cl, 0x3b
xor byte [rbp - 0x37], 0x3c
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
mov byte [rbp - 0x38], cl
lea rcx, [rbp - 0x40]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movsxd rax, dword [0x18007fe18]
movsd xmm0, qword [0x18006c468]
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
lea r8, [rax*4 + 0x194]
movzx eax, byte [0x18006c472]
add r8, r13
xor byte [rbp - 0x3d], 0x36
xor al, 0x3d
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x36], al
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x40], 0x4d
call fcn.18003a960
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
lea rax, [0x18007e9bc]
movsxd rdx, dword [0x18007fe18]
movsd xmm0, qword [0x18006c308]
add rdx, rax
cmp byte [0x18006c311], sil
movzx eax, word [0x18006c310]
mov word [rbp - 0x38], ax
movsd qword [rbp - 0x40], xmm0
je 0x18004e4ae
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
xor byte [rbp - 0x38], 0x3b
xor byte [rbp - 0x37], 0x3c
mov byte [rbp - 0x40], 0x41
lea rcx, [rbp - 0x40]
call fcn.180037c90
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
lea rax, [0x18007e9c5]
movsxd r10, dword [0x18007fe18]
movsd xmm0, qword [str.cFPPRJ]
add r10, rax
cmp byte [0x18006c3a3], sil
mov eax, dword [0x18006c3a0]
movsd qword [rbp - 0x40], xmm0
mov dword [rbp - 0x38], eax
je 0x18004e680
mov r8d, esi
cmp ebx, 2
jl 0x18004e643
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.cFPPRJ]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp - 0x40], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rbp - 0x3c]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x3c], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x40]
add r9, rax
nop dword [rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x18004e650
mov rdx, r10
lea rcx, [rbp - 0x40]
call fcn.180037c90
lea rax, [rbp - 0x40]
mov qword [rbp - 0x40], rsi
mov r9d, 0x32
mov qword [rsp + 0x20], rax
lea r8, [0x18007e804]
lea rdx, [0x18007e808]
lea rcx, str.Min_dmg_overridemin_dmg
call fcn.180052ec0
mov rcx, qword [0x18007f7d8]
lea r9, [rbp - 0x20]
mov dword [rbp - 0x30], 0x64
mov dword [rbp - 0x20], esi
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, [0x18006c6e8]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movsxd rax, dword [0x18007fe18]
lea r8, [rax*4 + 0x1b8]
lea rax, [rbp - 0x30]
add r8, r13
mov qword [rsp + 0x20], rax
call fcn.18003a960
cmp dword [0x180079060], 2
movss xmm12, dword [0x18006d16c]
jne 0x18004ee51
cmp byte [0x18007e945], sil
jne 0x18004ebc6
cmp byte [0x18006c355], sil
mov rdi, qword [0x18007f7d8]
movups xmm0, xmmword [str.dgd]
mov rax, qword [rdi + 0x1a18]
movss xmm6, dword [rax + 0x18]
mov eax, dword [0x18006c350]
mov dword [rsp + 0x60], eax
movzx eax, word [0x18006c354]
mov word [rsp + 0x64], ax
movups xmmword [rsp + 0x50], xmm0
je 0x18004e940
mov r8d, esi
cmp ebx, 2
jl 0x18004e900
movdqa xmm0, xmmword [0x18006d430]
lea rcx, [rsp + 0x54]
movdqa xmm5, xmmword [0x18006d3c0]
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm10, xmmword [0x18006d3f0]
movdqa xmmword [rsp + 0x70], xmm0
mov edx, dword [rsp + 0x70]
movaps xmmword [rsp + 0x120], xmm11
movd xmm7, r14d
movd xmm11, r12d
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm7
movdqa xmm0, xmm1
psrld xmm0, xmm11
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm7
movdqa xmm0, xmm1
psrld xmm0, xmm11
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x18004e7f0
movaps xmm11, xmmword [rsp + 0x120]
cmp r8d, 0x16
jge 0x18004e940
movsxd rax, r8d
lea r9, [rsp + 0x50]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0x16
jl 0x18004e910
movss xmm3, dword [0x18006d2b4]
lea rax, [rsp + 0x50]
movss xmm2, dword [rdi + 0x1910]
lea rdx, [rbp - 0x40]
mov rcx, qword [rdi + 0x1908]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm14
call fcn.1800327c0
cmp byte [0x18006c355], sil
movss xmm0, dword [rbp - 0x40]
addss xmm0, dword [0x18006d15c]
movd xmm2, dword [0x180079048]
cvtdq2ps xmm2, xmm2
cvttss2si eax, xmm0
movd xmm1, eax
mov rax, qword [rdi + 0x1a18]
cvtdq2ps xmm1, xmm1
mov byte [rax + 0x80], r14b
mov rax, qword [rdi + 0x1a18]
subss xmm6, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm12
movss xmm0, dword [rax + 0x10]
subss xmm0, dword [rax + 0x54]
mulss xmm6, dword [0x18006d124]
subss xmm1, xmm2
mulss xmm1, dword [0x18006d124]
subss xmm6, xmm1
movups xmm1, xmmword [str.dgd]
movups xmmword [rbp - 0x60], xmm1
addss xmm6, xmm0
movss xmm0, dword [rax + 0xe8]
movss dword [rax + 0xd0], xmm6
maxss xmm0, xmm6
movss dword [rax + 0xe8], xmm0
mov eax, dword [0x18006c350]
mov dword [rbp - 0x50], eax
movzx eax, word [0x18006c354]
mov word [rbp - 0x4c], ax
je 0x18004ebb0
mov r8d, esi
cmp ebx, 2
jl 0x18004eb75
movdqa xmm0, xmmword [0x18006d430]
lea rcx, [rbp - 0x5c]
movdqa xmm5, xmmword [0x18006d3c0]
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm7, xmmword [0x18006d3f0]
movdqa xmmword [rsp + 0x70], xmm0
mov edx, dword [rsp + 0x70]
movd xmm6, r14d
movd xmm10, r12d
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm10
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm10
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x18004ea70
cmp r8d, 0x16
jge 0x18004ebb0
movsxd rax, r8d
lea r9, [rbp - 0x60]
add r9, rax
nop
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0x16
jl 0x18004eb80
lea rcx, [rbp - 0x60]
call fcn.1800360e0
cmp byte [0x18007e945], sil
je 0x18004ee51
mov rcx, qword [0x18007f7d8]
lea r8, str.Normal
mov r9d, 2
lea rdx, [0x18007e9e0]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, str.Pitch_type
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
call fcn.18004a220
cmp byte [0x18006c2c7], sil
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
mov eax, dword [0x18006c2c4]
mov dword [rbp - 0x20], eax
je 0x18004ed50
cmp ebx, 2
jl 0x18004ed18
movdqa xmm3, xmmword [0x18006d3c0]
movdqa xmm2, xmm3
movdqa xmm0, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x18006d420]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x18006d420]
shufps xmm2, xmm0, 0xdd
movd xmm0, r14d
psrad xmm2, xmm0
movd xmm0, r12d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x18006d3f0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x18006d430]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rbp - 0x20], xmm2
jmp 0x18004ed50
lea r9, [rbp - 0x20]
mov r8d, esi
nop
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x18004ed20
lea rax, [rbp - 0x30]
mov dword [rbp - 0x30], 0xb4
lea r9, [rbp - 0x40]
mov qword [rsp + 0x20], rax
lea r8, [0x18007e9d8]
mov dword [rbp - 0x40], 0xffffff4c
lea rcx, [rbp - 0x20]
call fcn.18003a960
mov rcx, qword [0x18007f7d8]
lea rdx, [0x18007e9dd]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, [rbp - 0x40]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
mov eax, dword [str._DX7]
mov dword [rbp - 0x40], eax
movzx eax, byte [0x18006c328]
xor byte [rbp - 0x3f], 0x34
xor al, 0x37
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
mov byte [rbp - 0x3c], al
mov byte [rbp - 0x40], 0x53
call fcn.180037c90
lea rax, [rbp - 0x40]
mov qword [rbp - 0x40], rsi
mov r9d, 0x14
mov qword [rsp + 0x20], rax
lea r8, [0x18007e81c]
lea rdx, [0x18007e820]
lea rcx, str.Manual_left
call fcn.180052ec0
lea rax, [rbp - 0x40]
mov qword [rbp - 0x40], rsi
mov r9d, 0x14
mov qword [rsp + 0x20], rax
lea r8, [0x18007e828]
lea rdx, [0x18007e82c]
lea rcx, str.Manual_right
call fcn.180052ec0
cmp dword [0x180079060], 3
movaps xmm10, xmmword [rsp + 0x130]
jne 0x18004f871
cmp byte [0x18006c43b], sil
mov eax, dword [str.vge6]
mov dword [rbp - 0x20], eax
je 0x18004ef50
cmp ebx, 2
jl 0x18004ef0b
movdqa xmm3, xmmword [0x18006d3c0]
movdqa xmm2, xmm3
movdqa xmm0, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x18006d420]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x18006d420]
shufps xmm2, xmm0, 0xdd
movd xmm0, r14d
psrad xmm2, xmm0
movd xmm0, r12d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x18006d3f0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x18006d430]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rbp - 0x20], xmm2
jmp 0x18004ef50
lea r9, [rbp - 0x20]
mov r8d, esi
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x18004ef20
lea rdx, [0x18007e840]
lea rcx, [rbp - 0x20]
call fcn.180037c90
cmp byte [0x18007e840], sil
je 0x18004f871
cmp byte [0x18006c37f], sil
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
mov rax, qword [0x18006c378]
mov qword [rbp - 0x40], rax
je 0x18004f110
cmp ebx, 2
jl 0x18004f0d3
movdqa xmm2, xmmword [0x18006d3c0]
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rbp - 0x40]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rbp - 0x40], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rbp - 0x3c]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x3c], xmm2
jmp 0x18004f110
lea r9, [rbp - 0x40]
mov r8d, esi
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x18004f0e0
lea rax, [0x18007fe12]
xor r9d, r9d
lea r8, [0x18007e844]
mov qword [rsp + 0x20], rax
lea rdx, [0x18007e842]
lea rcx, [rbp - 0x40]
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
lea r8, [0x18007e864]
xor r9d, r9d
lea rdx, [0x18007e860]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, [rbp - 0x40]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movzx eax, byte [0x18006c250]
movsd xmm0, qword [0x18006c248]
xor al, 0x3b
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x38], al
lea rax, [0x18007fe10]
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x40], 0x45
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
lea r8, [0x18007e874]
xor r9d, r9d
lea rdx, [0x18007e870]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movzx ecx, word [0x18006c578]
mov word [rbp - 0x38], cx
xor cl, 0x3b
xor byte [rbp - 0x37], 0x3c
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
mov byte [rbp - 0x38], cl
lea rcx, [rbp - 0x40]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movzx eax, byte [0x18006c57a]
movsd xmm0, qword [0x18006c570]
xor al, 0x3d
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x36], al
lea rax, [0x18007fe09]
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x40], 0x45
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
movss xmm0, dword [rax + 0xe8]
mov r8d, esi
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
mov eax, dword [0x18006c420]
movsd xmm0, qword [0x18006c418]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x18006c424]
mov byte [rsp + 0x5c], al
movsd qword [rsp + 0x50], xmm0
cmp ebx, 2
jl 0x18004f415
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x18006c418]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rsp + 0x50], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rsp + 0x54]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movsxd rax, r8d
lea r9, [rsp + 0x50]
add r9, rax
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xd
jl 0x18004f420
lea rax, [0x18007fe14]
xor r9d, r9d
lea r8, [0x18007e854]
mov qword [rsp + 0x20], rax
lea rdx, [0x18007e850]
lea rcx, [rsp + 0x50]
call fcn.18004cff0
cmp byte [0x18006c4c1], sil
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsd xmm0, qword [0x18006c4b8]
movzx eax, word [0x18006c4c0]
movsd qword [rbp - 0x40], xmm0
mov word [rbp - 0x38], ax
je 0x18004f507
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
xor byte [rbp - 0x38], 0x3b
xor byte [rbp - 0x37], 0x3c
mov byte [rbp - 0x40], 0x45
lea rax, [0x18007fe15]
xor r9d, r9d
lea r8, [0x18007e884]
mov qword [rsp + 0x20], rax
lea rdx, [0x18007e880]
lea rcx, [rbp - 0x40]
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
lea r8, [0x18007e894]
xor r9d, r9d
lea rdx, [0x18007e890]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, [rbp - 0x40]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movzx eax, byte [0x18006c2a8]
movsd xmm0, qword [0x18006c2a0]
xor al, 0x3b
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x38], al
lea rax, [0x18007fe13]
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x40], 0x45
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
lea r8, [0x18007e8a4]
xor r9d, r9d
lea rdx, [0x18007e8a0]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movzx ecx, word [0x18006c3f8]
mov word [rbp - 0x38], cx
xor cl, 0x3b
xor byte [rbp - 0x37], 0x3c
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
mov byte [rbp - 0x38], cl
lea rcx, [rbp - 0x40]
addss xmm1, xmm8
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movzx eax, byte [0x18006c3fa]
movsd xmm0, qword [0x18006c3f0]
xor al, 0x3d
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x36], al
lea rax, [0x18007fe11]
mov qword [rsp + 0x20], rax
mov byte [rbp - 0x40], 0x45
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
cmp byte [0x18006c4d5], sil
movss xmm0, dword [rax + 0xe8]
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
mov eax, dword [0x18006c4d0]
movsd xmm0, qword [0x18006c4c8]
mov dword [rsp + 0x78], eax
movzx eax, word [0x18006c4d4]
mov word [rsp + 0x7c], ax
movsd qword [rsp + 0x70], xmm0
je 0x18004f860
mov r8d, esi
cmp ebx, 2
jl 0x18004f81a
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x18006c4c8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rsp + 0x70], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rsp + 0x74]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
movsxd rax, r8d
lea r9, [rsp + 0x70]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x18004f830
lea rdx, [0x18007e944]
lea rcx, [rsp + 0x70]
call fcn.180037c90
cmp dword [0x180079060], 4
jne 0x18004fb65
mov eax, dword [str.qZF7]
lea rdx, [0x18007e9cf]
mov dword [rbp - 0x40], eax
lea rcx, [rbp - 0x40]
movzx eax, byte [0x18006c478]
xor byte [rbp - 0x3f], 0x34
xor al, 0x37
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
mov byte [rbp - 0x3c], al
mov byte [rbp - 0x40], 0x42
call fcn.180037c90
cmp byte [0x18007e9cf], sil
je 0x18004f960
cmp byte [0x18006c599], sil
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm8
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsd xmm0, qword [str.w_GSTLPUU_]
movzx eax, word [0x18006c598]
movsd qword [rbp - 0x30], xmm0
mov word [rbp - 0x28], ax
je 0x18004f950
xor byte [rbp - 0x2f], 0x34
xor byte [rbp - 0x2e], 0x35
xor byte [rbp - 0x2d], 0x36
xor byte [rbp - 0x2c], 0x37
xor byte [rbp - 0x2b], 0x38
xor byte [rbp - 0x2a], 0x39
xor byte [rbp - 0x29], 0x3a
xor byte [rbp - 0x28], 0x3b
xor byte [rbp - 0x27], 0x3c
mov byte [rbp - 0x30], 0x44
lea rdx, [0x18007e9d0]
lea rcx, [rbp - 0x30]
call fcn.180037c90
mov rcx, qword [0x18007f7d8]
lea rdx, [0x18007e9e4]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, [rbp - 0x40]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movzx eax, byte [0x18006c500]
movsd xmm0, qword [0x18006c4f8]
xor al, 0x3b
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x38], al
mov byte [rbp - 0x40], 0x4e
call fcn.180037c90
mov rcx, qword [0x18007f7d8]
lea r8, [0x18007e810]
mov r9d, 0x14
lea rdx, [0x18007e814]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, str.ThirdNLHOST....Force_body
mov qword [rbp - 0x40], rsi
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
call fcn.180052ec0
mov rcx, qword [0x18007f7d8]
lea r9, [rbp - 0x30]
lea r8, [0x18007e9e8]
mov dword [rbp - 0x40], 0x190
mov dword [rbp - 0x30], esi
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, str.Thirdperson_dist
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
call fcn.18003a960
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsd xmm0, qword [str.xQLTV_I_]
movzx eax, byte [0x18006c588]
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
mov byte [rbp - 0x40], 0x4b
xor byte [rbp - 0x3e], 0x35
lea rdx, [0x18007e9ec]
xor byte [rbp - 0x3d], 0x36
lea rcx, [rbp - 0x40]
xor byte [rbp - 0x3c], 0x37
xor al, 0x3b
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
mov byte [rbp - 0x38], al
call fcn.180037c90
cmp dword [0x180079060], 5
jne 0x180050505
cmp byte [0x18006c413], sil
mov rcx, qword [0x18007f7d8]
mov qword [rsp + 0x180], r15
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsd xmm0, qword [0x18006c408]
mov eax, dword [0x18006c410]
movsd qword [rsp + 0x50], xmm0
mov dword [rsp + 0x58], eax
je 0x18004fd40
mov r8d, esi
cmp ebx, 2
jl 0x18004fcfa
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x18006c408]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rsp + 0x50], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rsp + 0x54]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movsxd rax, r8d
lea r9, [rsp + 0x50]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x18004fd10
mov r9d, 3
lea r8, str.Enemies
lea rdx, [0x18007fc68]
lea rcx, [rsp + 0x50]
call fcn.18004a220
mov eax, dword [0x18007fc68]
lea rdi, [0x18007e8cc]
test eax, eax
jne 0x18005002d
mov rcx, qword [0x18007f7d8]
mov r8d, esi
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movsxd rax, dword [0x18007fc68]
movsd xmm0, qword [0x18006c3e0]
mov r10, rax
shl r10, 4
add r10, rdi
movsd qword [rbp - 0x30], xmm0
lea r11, [rax + 0xe8]
mov eax, dword [0x18006c3e8]
mov dword [rbp - 0x28], eax
movzx eax, word [0x18006c3ec]
mov word [rbp - 0x24], ax
movzx eax, byte [0x18006c3ee]
mov byte [rbp - 0x22], al
cmp ebx, 2
jl 0x18004ff0e
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x18006c3e0]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp - 0x30], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rbp - 0x2c]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x2c], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xf
jl 0x18004ff20
lea rax, [0x18007fde1]
movzx r9d, r14b
mov r8, r10
mov qword [rsp + 0x20], rax
lea rdx, [r11 + r13]
lea rcx, [rbp - 0x30]
call fcn.18004cff0
cmp byte [0x18006c531], sil
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsd xmm0, qword [str.zZC_DQ_V_]
movzx eax, word [0x18006c530]
movsd qword [rbp - 0x30], xmm0
mov word [rbp - 0x28], ax
je 0x180050000
xor byte [rbp - 0x2f], 0x34
xor byte [rbp - 0x2e], 0x35
xor byte [rbp - 0x2d], 0x36
xor byte [rbp - 0x2c], 0x37
xor byte [rbp - 0x2b], 0x38
xor byte [rbp - 0x2a], 0x39
xor byte [rbp - 0x29], 0x3a
xor byte [rbp - 0x28], 0x3b
xor byte [rbp - 0x27], 0x3c
mov byte [rbp - 0x30], 0x49
lea rax, [0x18007fde2]
movzx r9d, r14b
lea r8, [0x18007e900]
mov qword [rsp + 0x20], rax
lea rdx, [0x18007e8fc]
lea rcx, [rbp - 0x30]
call fcn.18004cff0
mov eax, dword [0x18007fc68]
lea r15, [0x18007e910]
cmp eax, r14d
jne 0x180050293
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsxd rax, dword [0x18007fc68]
movsd xmm0, qword [0x18006c2b8]
mov r10, rax
shl r10, 4
add r10, rdi
movsd qword [rbp - 0x30], xmm0
cmp byte [0x18006c2c3], sil
lea r11, [rax + 0xe8]
mov eax, dword [0x18006c2c0]
mov dword [rbp - 0x28], eax
je 0x180050210
mov r8d, esi
cmp ebx, 2
jl 0x1800501d0
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x18006c2b8]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp - 0x30], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rbp - 0x2c]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x2c], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x1800501e0
lea rax, [0x18007fe08]
movzx r9d, r14b
mov r8, r10
mov qword [rsp + 0x20], rax
lea rdx, [r11 + r13]
lea rcx, [rbp - 0x30]
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, str.Wireframe_arms
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsxd rdx, dword [0x18007fc68]
add rdx, r15
call fcn.180037c90
mov eax, dword [0x18007fc68]
cmp eax, 2
jne 0x1800504fd
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movss dword [rax + 0xe8], xmm0
movsxd rax, dword [0x18007fc68]
movsd xmm0, qword [str.vZTT__]
mov r10, rax
shl r10, 4
add r10, rdi
movsd qword [rbp - 0x30], xmm0
cmp byte [0x18006c435], sil
lea r11, [rax + 0xe8]
mov eax, dword [0x18006c430]
mov dword [rbp - 0x28], eax
movzx eax, word [0x18006c434]
mov word [rbp - 0x24], ax
je 0x180050480
mov r8d, esi
cmp ebx, 2
jl 0x18005043a
movdqa xmm2, xmmword [0x18006d3c0]
mov r8d, 8
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x18006d410]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.vZTT__]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rbp - 0x30], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rbp - 0x2c]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp - 0x2c], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 0xe
jl 0x180050450
lea rax, [0x18007fde0]
movzx r9d, r14b
mov r8, r10
mov qword [rsp + 0x20], rax
lea rdx, [r11 + r13]
lea rcx, [rbp - 0x30]
call fcn.18004cff0
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rax, qword [rcx + 0x1a18]
lea rcx, str.Wireframe_weapon
movss xmm0, dword [rax + 0xe8]
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm1, xmm9
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movss dword [rax + 0xe8], xmm0
movsxd rdx, dword [0x18007fc68]
add rdx, r15
call fcn.180037c90
mov r15, qword [rsp + 0x180]
cmp byte [str.:vZTT__], sil
mov rcx, qword [0x18007f7d8]
movd xmm4, dword [0x180079048]
cvtdq2ps xmm4, xmm4
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
movaps xmm3, xmm4
mov rax, qword [rcx + 0x1a18]
mulss xmm3, xmm13
mov dword [rbp - 0x3c], 0x42820000
movss xmm0, dword [rax + 0x10]
subss xmm0, dword [rax + 0x54]
movss xmm2, dword [rax + 0x14]
addss xmm3, xmm4
subss xmm2, dword [rax + 0x58]
addss xmm3, xmm0
addss xmm2, dword [0x18006d1c4]
movss dword [rax + 0xd0], xmm3
movss dword [rax + 0xd4], xmm2
movss xmm1, dword [rax + 0xe8]
movss xmm0, dword [rax + 0xec]
maxss xmm1, xmm3
maxss xmm0, xmm2
movss dword [rax + 0xe8], xmm1
movaps xmm1, xmm4
mulss xmm1, xmm12
movss dword [rax + 0xec], xmm0
mov rax, qword [str.aurs]
subss xmm1, xmm4
mov qword [rsp + 0x40], rax
movss dword [rbp - 0x40], xmm1
je 0x180050710
cmp ebx, 2
jl 0x1800506cc
movdqa xmm2, xmmword [0x18006d3c0]
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rsp + 0x40]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rsp + 0x40], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rsp + 0x44]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x180050710
lea r9, [rsp + 0x40]
mov r8d, esi
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x1800506e0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x40]
call fcn.180036a00
test al, al
je 0x180050729
mov dword [0x180079060], r14d
mov rcx, qword [0x18007f7d8]
lea rdx, [rbp - 0x40]
movd xmm2, dword [0x180079048]
cvtdq2ps xmm2, xmm2
mov dword [rbp - 0x3c], 0x42820000
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
movaps xmm0, xmm2
mov rax, qword [rcx + 0x1a18]
lea rcx, [rsp + 0x40]
mulss xmm0, xmm13
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm0, xmm2
addss xmm1, xmm0
movss xmm0, dword [rax + 0xe8]
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm12
movss dword [rax + 0xe8], xmm0
mov eax, dword [0x18006c3d8]
subss xmm1, xmm2
mov dword [rsp + 0x40], eax
movzx eax, word [0x18006c3dc]
xor byte [rsp + 0x41], 0x34
xor byte [rsp + 0x42], 0x35
xor byte [rsp + 0x43], 0x36
mov word [rsp + 0x44], ax
xor al, 0x37
xor byte [rsp + 0x45], 0x38
movss dword [rbp - 0x40], xmm1
mov byte [rsp + 0x44], al
mov byte [rsp + 0x40], 0x41
call fcn.180036a00
test al, al
je 0x1800507ef
mov dword [0x180079060], 2
mov rcx, qword [0x18007f7d8]
lea rdx, [rbp - 0x40]
movd xmm2, dword [0x180079048]
cvtdq2ps xmm2, xmm2
mov dword [rbp - 0x3c], 0x42820000
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
movaps xmm0, xmm2
mov rax, qword [rcx + 0x1a18]
movzx ecx, word [0x18006c260]
mov word [rsp + 0x44], cx
xor cl, 0x37
xor byte [rsp + 0x45], 0x38
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
mulss xmm0, xmm13
mov byte [rsp + 0x44], cl
lea rcx, [rsp + 0x40]
addss xmm0, xmm2
addss xmm1, xmm0
movss xmm0, dword [rax + 0xe8]
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm12
movss dword [rax + 0xe8], xmm0
mov eax, dword [0x18006c25c]
subss xmm1, xmm2
mov dword [rsp + 0x40], eax
movzx eax, byte [0x18006c262]
xor byte [rsp + 0x41], 0x34
xor al, 0x39
xor byte [rsp + 0x42], 0x35
xor byte [rsp + 0x43], 0x36
movss dword [rbp - 0x40], xmm1
mov byte [rsp + 0x40], 0x45
mov byte [rsp + 0x46], al
call fcn.180036a00
test al, al
je 0x1800508c3
mov dword [0x180079060], 3
mov rcx, qword [0x18007f7d8]
lea rdx, [rsp + 0x40]
movd xmm2, dword [0x180079048]
cvtdq2ps xmm2, xmm2
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
movaps xmm0, xmm2
mov rax, qword [rcx + 0x1a18]
lea rcx, [rbp - 0x40]
mulss xmm0, xmm13
mov dword [rsp + 0x44], 0x42820000
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm0, xmm2
addss xmm1, xmm0
movss xmm0, dword [rax + 0xe8]
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm12
movss dword [rax + 0xe8], xmm0
movzx eax, byte [0x18006c540]
subss xmm1, xmm2
movsd xmm0, qword [str.ptd]
xor al, 0x3b
movsd qword [rbp - 0x40], xmm0
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
movss dword [rsp + 0x40], xmm1
mov byte [rbp - 0x40], 0x43
mov byte [rbp - 0x38], al
call fcn.180036a00
test al, al
je 0x18005098f
mov dword [0x180079060], 5
cmp byte [str.:pT_D], sil
mov rcx, qword [0x18007f7d8]
movd xmm2, dword [0x180079048]
cvtdq2ps xmm2, xmm2
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
movaps xmm0, xmm2
mov rax, qword [rcx + 0x1a18]
mulss xmm0, xmm13
mov dword [rbp - 0x3c], 0x42820000
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm0, xmm2
addss xmm1, xmm0
movss xmm0, dword [rax + 0xe8]
movss dword [rax + 0xd0], xmm1
maxss xmm0, xmm1
movaps xmm1, xmm2
mulss xmm1, xmm12
movss dword [rax + 0xe8], xmm0
mov rax, qword [str.fu]
subss xmm1, xmm2
mov qword [rsp + 0x40], rax
movss dword [rbp - 0x40], xmm1
je 0x180050b60
cmp ebx, 2
jl 0x180050b28
movdqa xmm2, xmmword [0x18006d3c0]
movdqa xmm4, xmmword [0x18006d420]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x18006d3d0]
movdqa xmm0, xmm2
mov eax, dword [0x18006d430]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r14d
movd xmm5, r12d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rsp + 0x40]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rsp + 0x40], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x18006d3f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x18006d410]
movd xmm1, dword [rsp + 0x44]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x44], xmm2
jmp 0x180050b60
lea r9, [rsp + 0x40]
mov r8d, esi
mov eax, 0x94f2095
lea r9, [r9 + 1]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x33
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x180050b30
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x40]
call fcn.180036a00
test al, al
je 0x180050b7c
mov dword [0x180079060], 4
cmp byte [0x18006c511], sil
mov rcx, qword [0x18007f7d8]
movd xmm2, dword [0x180079048]
cvtdq2ps xmm2, xmm2
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
movaps xmm0, xmm2
mov rax, qword [rcx + 0x1a18]
mulss xmm0, xmm13
mov dword [rsp + 0x44], 0x42820000
movss xmm1, dword [rax + 0x10]
subss xmm1, dword [rax + 0x54]
addss xmm0, xmm2
addss xmm1, xmm0
movss xmm0, dword [rax + 0xe8]
maxss xmm0, xmm1
movss dword [rax + 0xd0], xmm1
movaps xmm1, xmm2
mulss xmm1, xmm12
movaps xmm12, xmmword [rsp + 0x110]
movss dword [rax + 0xe8], xmm0
movsd xmm0, qword [str.pp]
subss xmm1, xmm2
movzx eax, word [0x18006c510]
movsd qword [rbp - 0x40], xmm0
mov word [rbp - 0x38], ax
movss dword [rsp + 0x40], xmm1
je 0x180050c45
xor byte [rbp - 0x3f], 0x34
xor byte [rbp - 0x3e], 0x35
xor byte [rbp - 0x3d], 0x36
xor byte [rbp - 0x3c], 0x37
xor byte [rbp - 0x3b], 0x38
xor byte [rbp - 0x3a], 0x39
xor byte [rbp - 0x39], 0x3a
xor byte [rbp - 0x38], 0x3b
xor byte [rbp - 0x37], 0x3c
mov byte [rbp - 0x40], 0x43
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x40]
call fcn.180036a00
test al, al
je 0x180050c5d
mov dword [0x180079060], esi
mov rcx, qword [0x18007f7d8]
mov rax, qword [rcx + 0x1a18]
mov byte [rax + 0x80], r14b
mov rdx, qword [rcx + 0x1a18]
movsxd rcx, dword [rdx + 0x1a0]
lea eax, [rcx - 1]
mov dword [rdx + 0x1a0], eax
test eax, eax
jne 0x180050c97
movss xmm0, dword [rdx + 0x258]
jmp 0x180050ca4
mov rax, qword [rdx + 0x1a8]
movss xmm0, dword [rax + rcx*4 - 8]
movss dword [rdx + 0x184], xmm0
call fcn.18001d6a0
mov r8, qword [0x18007f7d8]
movaps xmm14, xmmword [rsp + 0xf0]
movaps xmm13, xmmword [rsp + 0x100]
movaps xmm9, xmmword [rsp + 0x140]
movsxd rax, dword [r8 + 0x1b30]
mov rcx, qword [r8 + 0x1b38]
movaps xmm8, xmmword [rsp + 0x150]
movaps xmm7, xmmword [rsp + 0x160]
movaps xmm6, xmmword [rsp + 0x170]
lea rdx, [rax + rax*4]
movsxd rax, dword [rcx + rdx*4 - 0x14]
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
mov r13, qword [rsp + 0x1c0]
add rax, rax
mov r12, qword [rsp + 0x1b8]
mov rdi, qword [rsp + 0x1b0]
movups xmmword [r8 + rax*8 + 0x1608], xmm0
dec dword [r8 + 0x1b30]
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.180061a00
add rsp, 0x188
pop r14
pop rsi
pop rbx
pop rbp
ret