Function at 0x1800371f0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x168]
sub rsp, 0x240
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x18004d040]
xor rax, rsp
mov qword [rbp + 0x90], rax
xor r12d, r12d
mov r15d, r12d
mov dword [rbp - 0x18], r12d
mov dword [rbp - 0x20], r12d
cmp qword [0x18004e188], r12
je 0x180038545
mov rax, qword [0x18004dd68]
mov qword [rax + 0x1d18], r12
mov qword [rax + 0x1d20], r12
mov dword [rax + 0x1d0c], 1
movd xmm1, dword [0x18004e22c]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [0x18004e228]
cvtdq2ps xmm0, xmm0
or dword [rax + 0x1d08], 3
movss dword [rax + 0x1d28], xmm0
movss dword [rax + 0x1d2c], xmm1
mov dword [rax + 0x1d10], 1
xor edx, edx
mov r8d, 0x287
lea rcx, str.Overlay
call fcn.18000c230
mov rdi, qword [0x18004e200]
mov rbx, qword [0x18004e1f8]
movdqa xmm13, xmmword [0x180044c70]
xorps xmm8, xmm8
cmp rbx, rdi
je 0x180037411
movdqa xmmword [rsp + 0x50], xmm13
lea rcx, [rsp + 0x50]
call fcn.180003e70
mov esi, eax
movss xmm12, dword [0x1800449ac]
nop dword [rax + rax]
movups xmm6, xmmword [rbx]
movups xmmword [rbp + 0x58], xmm6
movsd xmm0, qword [rbx + 0x10]
movsd qword [rbp + 0x68], xmm0
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x48], r12d
movsd xmm0, qword [rbp + 0x64]
movsd qword [rbp + 0x20], xmm0
mov eax, dword [rbp + 0x6c]
mov dword [rbp + 0x28], eax
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x20]
mov rcx, qword [0x18004e258]
call fcn.1800321d0
mov qword [rbp - 0x10], r12
mov dword [rbp - 8], r12d
movsd qword [rsp + 0x50], xmm6
psrldq xmm6, 8
movd dword [rsp + 0x58], xmm6
lea r8, [rbp - 0x10]
lea rdx, [rsp + 0x50]
mov rcx, qword [0x18004e258]
call fcn.1800321d0
mov rcx, qword [0x18004dd68]
mov rax, qword [rcx + 0x1c10]
mov byte [rax + 0x90], 1
mov rax, qword [rcx + 0x1c10]
movss xmm0, dword [rsp + 0x40]
movss dword [rbp - 0x20], xmm0
movss xmm1, dword [rsp + 0x44]
movss dword [rbp - 0x1c], xmm1
movss xmm0, dword [rbp - 0x10]
movss dword [rbp + 0x40], xmm0
movss xmm1, dword [rbp - 0xc]
movss dword [rbp + 0x44], xmm1
movss dword [rsp + 0x20], xmm12
mov r9d, esi
lea r8, [rbp - 0x20]
lea rdx, [rbp + 0x40]
mov rcx, qword [rax + 0x268]
call fcn.180020810
add rbx, 0x18
cmp rbx, rdi
jne 0x180037330
jmp 0x18003741a
movss xmm12, dword [0x1800449ac]
movss xmm15, dword [0x180044a58]
movsd xmm14, qword [0x1800449c8]
cmp byte [0x18004d0a1], r12b
je 0x180038255
lea rdx, [rbp + 0x58]
call fcn.180032540
nop
mov rsi, qword [rbp + 0x58]
mov r12, qword [rbp + 0x60]
cmp rsi, r12
je 0x180037808
movabs r14, 0xfffffffffffe
movabs r13, 0x7fffffffffffffff
movdqa xmm8, xmmword [0x180044da0]
movss xmm11, dword [0x180044a64]
movss xmm12, dword [0x1800449a4]
movss xmm9, dword [0x180044978]
movss xmm10, dword [0x180044a20]
nop word [rax + rax]
mov rbx, qword [rsi]
cmp rbx, qword [0x18004e188]
je 0x1800377f7
mov rcx, qword [0x18004e288]
mov rax, qword [rcx]
mov rdx, qword [rax + 0xd0]
call rdx
mov rdi, rax
mov rcx, qword [rbx]
mov rdx, qword [rcx + 8]
lea rcx, [rdx - 1]
cmp rcx, r14
ja 0x1800374e0
mov rcx, rbx
call rdx
mov rdx, rax
jmp 0x1800374e2
xor edx, edx
mov rax, qword [rdi]
mov r8, qword [rax + 0x18]
mov rcx, rdi
call r8
mov rdi, rax
test rax, rax
je 0x1800377f7
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x180]
mov rcx, rax
call rdx
test al, al
jne 0x1800377f7
lea rdx, [rbp + 0x70]
mov rcx, rdi
call fcn.180032900
nop
lea r8, str.Bip01_Head
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.180032350
mov qword [rbp + 0x40], 0
mov dword [rbp + 0x48], 0
movsd xmm0, qword [rsp + 0x50]
movsd qword [rbp + 0x20], xmm0
mov eax, dword [rsp + 0x58]
mov dword [rbp + 0x28], eax
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x20]
mov rcx, qword [0x18004e258]
call fcn.1800321d0
test al, al
jne 0x1800375b3
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
jbe 0x1800377dd
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800375a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003784f
call fcn.18003c264
jmp 0x1800377dd
mov rcx, rbx
call fcn.18003c030
lea rdx, [rbp - 0x10]
mov rcx, rbx
cmp rax, 2
jne 0x1800375db
movdqa xmmword [rbp - 0x10], xmm13
call fcn.1800369c0
movdqa xmmword [rbp - 0x10], xmm13
jmp 0x1800375ec
movdqa xmmword [rbp - 0x10], xmm8
call fcn.1800369c0
movdqa xmmword [rbp - 0x10], xmm8
movss xmm0, dword [0x180044a08]
movss xmm6, dword [rbp + 0x44]
movss dword [rsp + 0x20], xmm0
movss xmm7, dword [rbp + 0x40]
lea r9, [rbp - 0x10]
movss xmm2, dword [0x1800449f0]
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18003be00
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xor r8d, r8d
mov qword [rbp - 0x70], r8
mov qword [rbp - 0x68], r8
mov rdi, qword [rbp + 0x80]
lea r14, [rbp + 0x70]
mov rax, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
cmova r14, rax
cmp rdi, r13
ja 0x1800385ad
cmp rdi, 0xf
ja 0x180037673
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], 0xf
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x80], xmm0
jmp 0x180037713
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x180037692
mov rbx, r13
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x1800376c3
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1800376ad
mov rax, r8
jmp 0x1800376ea
cmp rcx, 0x1000
jb 0x1800376e5
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800385b3
mov rcx, rax
call fcn.18003c220
mov rcx, rax
test rax, rax
je 0x180037848
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800376ea
call fcn.18003c220
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], rbx
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp + 0x70]
xor r8d, r8d
lea rcx, [rbp + 0x70]
cmp rdx, 0xf
cmova rcx, rax
mov rax, qword [0x18004dd68]
test rcx, rcx
jne 0x180037730
xorps xmm0, xmm0
jmp 0x180037777
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rcx
movss dword [rsp + 0x20], xmm11
movaps xmm3, xmm15
movss xmm2, dword [rax + 0x1980]
lea rdx, [rbp - 0x20]
mov rcx, qword [rax + 0x1978]
call fcn.180023fa0
movss xmm0, dword [rbp - 0x20]
addss xmm0, xmm12
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x20], xmm0
mulss xmm0, xmm9
subss xmm7, xmm0
subss xmm6, xmm10
lea r8, [rbp - 0x80]
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18003bf00
nop
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
jbe 0x1800377d3
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800377ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003784f
call fcn.18003c264
movabs r14, 0xfffffffffffe
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x88], 0xf
mov byte [rbp + 0x70], 0
add rsi, 8
cmp rsi, r12
jne 0x1800374a0
mov rsi, qword [rbp + 0x58]
test rsi, rsi
je 0x18003786f
mov rax, qword [rbp + 0x68]
sub rax, rsi
sar rax, 3
lea rdx, [rax*8]
mov rax, rsi
cmp rdx, 0x1000
jb 0x180037856
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037856
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, rsi
call fcn.18003c264
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x58], xmm0
xor r12d, r12d
mov qword [rbp + 0x68], r12
jmp 0x180037872
xor r12d, r12d
cmp byte [0x18004dd64], 0
je 0x180037a6a
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x40]
call fcn.1800326d0
nop
mov rbx, qword [rbp + 0x40]
mov r14, qword [rbp + 0x48]
cmp rbx, r14
je 0x180037a16
movss xmm9, dword [0x180044a1c]
movss xmm10, dword [0x180044a14]
mov rsi, qword [0x18004e188]
nop
mov rdi, qword [rbx]
movsd xmm0, qword [rdi + 0xdc]
movsd qword [rsp + 0x50], xmm0
test rsi, rsi
je 0x180037973
movss xmm7, dword [rsi + 0xdc]
subss xmm7, dword [rsp + 0x50]
movss xmm1, dword [rsi + 0xe4]
subss xmm1, dword [rdi + 0xe4]
movss xmm6, dword [rsi + 0xe0]
subss xmm6, dword [rsp + 0x54]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm8, xmm0
cvtps2pd xmm0, xmm7
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm8, xmm0
cvtps2pd xmm0, xmm6
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm8, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm8
ja 0x18003795c
xorps xmm0, xmm0
sqrtsd xmm0, xmm8
jmp 0x180037965
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
comiss xmm0, xmm9
ja 0x180037a01
mov qword [rbp - 0x10], 0
mov dword [rbp - 8], 0
movsd xmm0, qword [rdi + 0xdc]
movsd qword [rbp + 0x20], xmm0
mov eax, dword [rdi + 0xe4]
mov dword [rbp + 0x28], eax
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x20]
mov rcx, qword [0x18004e258]
call fcn.1800321d0
mov rdx, qword [rdi + 0x10]
lea rcx, [rbp - 0x40]
call fcn.180039c60
mov r8, rax
movss xmm7, dword [rbp - 0xc]
movaps xmm1, xmm7
movss xmm6, dword [rbp - 0x10]
movaps xmm0, xmm6
call fcn.18003bf00
mov rax, qword [rdi + 0x18]
mov rdx, qword [rax + 0x10]
lea rcx, [rbp - 0x40]
call fcn.180039c60
or r15d, 4
addss xmm7, xmm10
lea r8, [rbp - 0x40]
movaps xmm1, xmm7
movaps xmm0, xmm6
call fcn.18003bf00
mov rsi, qword [0x18004e188]
add rbx, 8
cmp rbx, r14
jne 0x1800378d0
mov dword [rbp - 0x18], r15d
mov rbx, qword [rbp + 0x40]
test rbx, rbx
je 0x180037a6a
mov rax, qword [rbp + 0x50]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x180037a56
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037a56
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.18003c264
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], r12
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov ecx, 0x20
call fcn.18003c220
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x70], 0x12
mov qword [rsp + 0x78], 0x1f
movups xmm0, xmmword [str.BloodBagConsumable]
movups xmmword [rax], xmm0
movzx ecx, word [0x180044790]
mov word [rax + 0x10], cx
mov byte [rax + 0x12], 0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x10]
call fcn.1800326d0
nop
mov r14, qword [rbp - 8]
mov rbx, qword [rbp - 0x10]
mov edx, 4
mov r13d, dword [0x18004dcf4]
movss xmm10, dword [0x180044a2c]
movss xmm11, dword [0x1800449ac]
cmp rbx, r14
je 0x180037c61
mov rax, qword gs:[0x58]
mov r15d, edx
mov r12, qword [rax + r13*8]
movss xmm8, dword [0x1800449e0]
movss xmm9, dword [0x1800449c4]
nop word [rax + rax]
mov rax, qword [rbx]
movsd xmm0, qword [rax + 0xdc]
movsd qword [rsp + 0x50], xmm0
mov esi, dword [rax + 0xe4]
mov rdi, qword [0x18004e258]
mov eax, dword [r12 + r15]
cmp dword [0x18004e250], eax
jle 0x180037b73
lea rcx, [0x18004e250]
call fcn.18003c7b4
cmp dword [0x18004e250], 0xffffffff
jne 0x180037b73
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rcx, [0x18004e250]
call fcn.18003c748
mov rax, qword [rdi]
mov rdx, qword [rax + 0x238]
lea rax, [rbp - 0x20]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x10]
mov qword [rsp + 0x20], rax
movd xmm3, esi
movss xmm2, dword [rsp + 0x54]
movss xmm1, dword [rsp + 0x50]
mov rcx, rdi
call rdx
movd xmm0, dword [0x18004e228]
cvtdq2ps xmm0, xmm0
divss xmm0, xmm10
movss xmm6, dword [rbp + 0x10]
mulss xmm6, xmm0
movss dword [rbp + 0x10], xmm6
movd xmm1, dword [0x18004e22c]
cvtdq2ps xmm1, xmm1
divss xmm1, xmm10
movss xmm7, dword [rbp + 0x40]
mulss xmm7, xmm1
movss dword [rbp + 0x40], xmm7
comiss xmm11, dword [rbp - 0x20]
jbe 0x180037c49
movdqa xmmword [rbp + 0x20], xmm13
mov rcx, qword [0x18004dd68]
mov rax, qword [rcx + 0x1c10]
mov byte [rax + 0x90], 1
mov rax, qword [rcx + 0x1c10]
mov r8, qword [rax + 0x268]
lea rcx, [rbp + 0x20]
call fcn.180003e70
movss dword [rsp + 0x40], xmm6
movss dword [rsp + 0x44], xmm7
movss dword [rsp + 0x28], xmm8
mov r9d, eax
movaps xmm2, xmm9
lea rdx, [rsp + 0x40]
mov rcx, r8
call fcn.180020d80
add rbx, 8
cmp rbx, r14
jne 0x180037b20
mov rbx, qword [rbp - 0x10]
mov r15d, dword [rbp - 0x18]
xor r12d, r12d
test rbx, rbx
je 0x180037cb5
mov rax, qword [rbp]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x180037ca1
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037ca1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.18003c264
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x10], xmm0
mov qword [rbp], r12
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x58]
call fcn.1800326d0
nop
mov rbx, qword [rbp + 0x58]
mov r14, qword [rbp + 0x60]
cmp rbx, r14
je 0x180037fa7
mov r12, r13
mov r13, qword gs:[0x58]
movabs rdi, 0x7243647261776552
mov rsi, qword [rbx]
mov rdx, qword [rsi + 0x10]
lea rcx, [rbp - 0x80]
call fcn.180039c60
nop
or r15d, 1
mov dword [rbp - 0x20], r15d
mov rcx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x180037d28
mov rax, qword [rax]
cmp rcx, 0xe
jne 0x180037d44
cmp qword [rax], rdi
jne 0x180037d44
cmp dword [rax + 8], 0x2d657461
jne 0x180037d44
cmp word [rax + 0xc], 0x3931
je 0x180037d80
mov rdx, qword [rsi + 0x10]
lea rcx, [rsp + 0x60]
call fcn.180039c60
or r15d, 2
mov rcx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x180037d64
mov rax, qword [rax]
cmp rcx, 0xe
jne 0x180037d85
cmp qword [rax], rdi
jne 0x180037d85
cmp dword [rax + 8], 0x2d657461
jne 0x180037d85
cmp word [rax + 0xc], 0x3032
jne 0x180037d85
mov dil, 1
jmp 0x180037d88
xor dil, dil
test r15b, 2
je 0x180037de6
and r15d, 0xfffffffd
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x180037dcf
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180037dca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180037f2c
call fcn.18003c264
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
test r15b, 1
je 0x180037e3f
and r15d, 0xfffffffe
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x180037e2b
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180037e26
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180037f33
call fcn.18003c264
mov qword [rbp - 0x70], 0
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
test dil, dil
je 0x180037f1e
movsd xmm0, qword [rsi + 0xdc]
movsd qword [rsp + 0x50], xmm0
mov esi, dword [rsi + 0xe4]
mov rdi, qword [0x18004e258]
mov ecx, 4
mov rax, qword [r13 + r12*8]
mov ecx, dword [rcx + rax]
cmp dword [0x18004e250], ecx
jle 0x180037ea1
lea rcx, [0x18004e250]
call fcn.18003c7b4
cmp dword [0x18004e250], 0xffffffff
jne 0x180037ea1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rcx, [0x18004e250]
call fcn.18003c748
mov rax, qword [rdi]
mov rdx, qword [rax + 0x238]
lea rax, [rbp + 0x10]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x20], rax
movd xmm3, esi
movss xmm2, dword [rsp + 0x54]
movss xmm1, dword [rsp + 0x50]
mov rcx, rdi
call rdx
movd xmm0, dword [0x18004e228]
cvtdq2ps xmm0, xmm0
divss xmm0, xmm10
movss xmm6, dword [rbp - 0x18]
mulss xmm6, xmm0
movss dword [rbp - 0x18], xmm6
movd xmm1, dword [0x18004e22c]
cvtdq2ps xmm1, xmm1
divss xmm1, xmm10
movss xmm7, dword [rbp + 0x40]
mulss xmm7, xmm1
movss dword [rbp + 0x40], xmm7
comiss xmm11, dword [rbp + 0x10]
ja 0x180037f3a
add rbx, 8
cmp rbx, r14
je 0x180037fa0
jmp 0x180037cf7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movdqa xmmword [rsp + 0x50], xmm13
mov rcx, qword [0x18004dd68]
mov rax, qword [rcx + 0x1c10]
mov byte [rax + 0x90], 1
mov rax, qword [rcx + 0x1c10]
mov r8, qword [rax + 0x268]
lea rcx, [rsp + 0x50]
call fcn.180003e70
movss dword [rsp + 0x40], xmm6
movss dword [rsp + 0x44], xmm7
movss xmm0, dword [0x1800449f0]
movss dword [rsp + 0x28], xmm0
mov r9d, eax
movss xmm2, dword [0x180044a08]
lea rdx, [rsp + 0x40]
mov rcx, r8
call fcn.180020d80
xor r12d, r12d
mov rbx, qword [rbp + 0x58]
test rbx, rbx
je 0x180037fef
mov rax, qword [rbp + 0x68]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x180037fe7
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037fe7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.18003c264
cmp byte [0x18004dd61], 0
je 0x180038248
mov ecx, 0x54
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180038020
mov ecx, 0x74
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180038248
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], rax
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov ecx, 0x20
call fcn.18003c220
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x70], 0x12
mov qword [rsp + 0x78], 0x1f
movups xmm0, xmmword [str.BloodBagConsumable]
movups xmmword [rax], xmm0
movzx ecx, word [0x180044790]
mov word [rax + 0x10], cx
mov byte [rax + 0x12], 0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x20]
call fcn.1800326d0
nop
movd xmm10, dword [0x18004d0a8]
cvtdq2ps xmm10, xmm10
mov eax, dword [0x18004e22c]
cdq
sub eax, edx
sar eax, 1
movd xmm11, eax
cvtdq2ps xmm11, xmm11
mov eax, dword [0x18004e228]
cdq
sub eax, edx
sar eax, 1
movd xmm12, eax
cvtdq2ps xmm12, xmm12
movaps xmm9, xmm15
mov rsi, r12
mov r14, qword [rbp + 0x28]
mov rbx, qword [rbp + 0x20]
cmp rbx, r14
je 0x180038200
xorps xmm13, xmm13
nop word [rax + rax]
mov rdi, qword [rbx]
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x48], 0
movsd xmm0, qword [rdi + 0xdc]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rdi + 0xe4]
mov dword [rsp + 0x58], eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x50]
mov rcx, qword [0x18004e258]
call fcn.1800321d0
test al, al
je 0x1800381b1
movss xmm7, dword [rsp + 0x40]
subss xmm7, xmm12
movss xmm0, dword [rsp + 0x48]
subss xmm0, xmm13
movss xmm6, dword [rsp + 0x44]
subss xmm6, xmm11
cvtps2pd xmm0, xmm0
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm8, xmm0
cvtps2pd xmm0, xmm7
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm8, xmm0
cvtps2pd xmm0, xmm6
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm8, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm8
ja 0x180038191
xorps xmm0, xmm0
sqrtsd xmm0, xmm8
jmp 0x18003819a
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
comiss xmm0, xmm10
ja 0x1800381b1
comiss xmm9, xmm0
jbe 0x1800381b1
movaps xmm9, xmm0
mov rsi, rdi
add rbx, 8
cmp rbx, r14
jne 0x1800380e0
test rsi, rsi
je 0x1800381fc
mov rcx, qword [0x18004e188]
mov dword [rbp - 0x20], r12d
mov rax, qword [rcx]
mov r9, qword [rax + 0x128]
movsd xmm0, qword [rsi + 0xdc]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsi + 0xe4]
mov dword [rsp + 0x58], eax
lea r8, [rbp - 0x20]
lea rdx, [rsp + 0x50]
call r9
mov rbx, qword [rbp + 0x20]
test rbx, rbx
je 0x180038248
mov rax, qword [rbp + 0x30]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x180038240
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180038240
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.18003c264
movss xmm12, dword [0x1800449ac]
xorps xmm8, xmm8
cmp byte [0x18004d0ac], 0
je 0x180038540
mov ecx, 9
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180038444
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], rax
lea rdx, [rbp + 0x20]
call fcn.180032540
nop
movd xmm9, dword [0x18004d0a8]
cvtdq2ps xmm9, xmm9
mov eax, dword [0x18004e22c]
cdq
sub eax, edx
sar eax, 1
movd xmm10, eax
cvtdq2ps xmm10, xmm10
mov eax, dword [0x18004e228]
cdq
sub eax, edx
sar eax, 1
movd xmm11, eax
cvtdq2ps xmm11, xmm11
mov rsi, r12
mov r14, qword [rbp + 0x28]
mov rbx, qword [rbp + 0x20]
cmp rbx, r14
je 0x180038404
nop word [rax + rax]
mov rdi, qword [rbx]
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x48], 0
movsd xmm0, qword [rdi + 0xdc]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rdi + 0xe4]
mov dword [rsp + 0x58], eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x50]
mov rcx, qword [0x18004e258]
call fcn.1800321d0
test al, al
je 0x1800383b1
movss xmm7, dword [rsp + 0x40]
subss xmm7, xmm11
movss xmm0, dword [rsp + 0x48]
subss xmm0, xmm8
movss xmm6, dword [rsp + 0x44]
subss xmm6, xmm10
cvtps2pd xmm0, xmm0
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm8, xmm0
cvtps2pd xmm0, xmm7
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm8, xmm0
cvtps2pd xmm0, xmm6
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm8, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm8
ja 0x180038391
xorps xmm0, xmm0
sqrtsd xmm0, xmm8
jmp 0x18003839a
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
comiss xmm0, xmm9
ja 0x1800383b1
comiss xmm15, xmm0
jbe 0x1800383b1
movaps xmm15, xmm0
mov rsi, rdi
add rbx, 8
cmp rbx, r14
xorps xmm8, xmm8
jne 0x1800382e0
test rsi, rsi
je 0x180038400
mov rcx, qword [0x18004e188]
mov dword [rbp - 0x20], r12d
mov rax, qword [rcx]
mov r9, qword [rax + 0x128]
movsd xmm0, qword [rsi + 0xdc]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsi + 0xe4]
mov dword [rsp + 0x58], eax
lea r8, [rbp - 0x20]
lea rdx, [rsp + 0x50]
call r9
mov rbx, qword [rbp + 0x20]
test rbx, rbx
je 0x180038444
mov rdx, qword [rbp + 0x30]
sub rdx, rbx
and rdx, 0xfffffffffffffff8
mov rax, rbx
cmp rdx, 0x1000
jb 0x18003843c
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18003843c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.18003c264
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov ecx, dword [0x18004d0a8]
test ax, ax
je 0x1800384e6
test ecx, ecx
jle 0x1800384e6
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
call fcn.180034580
mov qword [0x18004dd80], rax
test rax, rax
je 0x1800384de
lea r8, str.Bip01_Head
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.180032350
mov qword [rbp - 0x10], 0
mov dword [rbp - 8], 0
movsd xmm0, qword [rax]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rax + 8]
mov dword [rsp + 0x58], eax
lea r8, [rbp - 0x10]
lea rdx, [rsp + 0x50]
mov rcx, qword [0x18004e258]
call fcn.1800321d0
cmp byte [0x18004d0a2], 0
je 0x1800384de
movss xmm1, dword [rbp - 0xc]
movss xmm0, dword [rbp - 0x10]
call fcn.1800365c0
mov ecx, dword [0x18004d0a8]
jmp 0x1800384ed
mov qword [0x18004dd80], r12
cmp byte [0x18004d0a1], 0
je 0x180038540
movdqa xmm0, xmmword [0x180044c60]
movdqa xmmword [rsp + 0x50], xmm0
movd xmm2, ecx
cvtdq2ps xmm2, xmm2
mov eax, dword [0x18004e22c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x18004e228]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x20], xmm12
lea r9, [rsp + 0x50]
call fcn.18003be00
call fcn.18000e500
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.18003c200
lea r11, [rsp + 0x240]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.180001270
nop
call fcn.1800011d0
int3