Function at 0x140056ed0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x338]
sub rsp, 0x420
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
movaps xmmword [rax - 0xa8], xmm14
movaps xmmword [rax - 0xb8], xmm15
mov rax, qword [0x1400de080]
xor rax, rsp
mov qword [rbp + 0x270], rax
mov rax, qword [0x1400e1a98]
test rax, rax
je 0x1400583e5
cmp qword [0x1400e1a90], 0
je 0x1400583e5
xor esi, esi
mov qword [rbp - 0x70], rsi
mov word [rbp + 0x18], 0x100
mov dword [rbp + 0x1a], esi
mov word [rbp + 0x1e], si
mov dword [rbp - 8], 0x55aa556
add rax, 0x608
mov qword [rbp], rax
lea rax, [rbp - 0x70]
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp - 4], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
lea r9d, [rsi + 0x28]
lea r8, [rbp - 8]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x140058410
mov qword [rbp - 0x68], rsi
mov word [rbp + 0x40], 0x100
mov dword [rbp + 0x42], esi
mov word [rbp + 0x46], si
mov dword [rbp + 0x20], 0x55aa556
mov rax, qword [0x1400e1a98]
add rax, 0x778
mov qword [rbp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x24], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
lea r9d, [rsi + 0x28]
lea r8, [rbp + 0x20]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov r14, qword [rbp - 0x68]
test r14, r14
je 0x140058410
mov qword [rbp - 0x60], rsi
mov word [rbp + 0x68], 0x100
mov dword [rbp + 0x6a], esi
mov word [rbp + 0x6e], si
mov dword [rbp + 0x48], 0x55aa556
mov rax, qword [0x1400e1a98]
add rax, 0x840
mov qword [rbp + 0x50], rax
lea rax, [rbp - 0x60]
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x60], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x4c], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
lea r9d, [rsi + 0x28]
lea r8, [rbp + 0x48]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x140058410
call fcn.14006f6b0
mov ecx, dword [rax + 0x20c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400570f5
call fcn.14006f6b0
movss xmm2, dword [rax + 0x214]
jmp 0x140057102
call fcn.14006f6b0
movss xmm2, dword [rax + 0x218]
mov rdx, qword [0x1400e1ab0]
add rdx, 0x18
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
call fcn.14006f6b0
mov ecx, dword [rax + 0x21c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xorps xmm12, xmm12
movss xmm6, dword [0x1400cb1c4]
test ax, ax
je 0x1400577bd
lea rdx, [r14 + 0x10]
movss xmm2, dword [0x1400cb1c8]
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov word [rbp + 0x90], 0x100
mov dword [rbp + 0x92], esi
mov word [rbp + 0x96], si
mov dword [rbp + 0x70], 0x55aa556
lea rax, [rdi + 0x4c]
mov qword [rbp + 0x78], rax
lea rax, [rsp + 0x40]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], 0x10
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x74], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x70]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
xorps xmm15, xmm15
movss xmm13, dword [0x1400cb148]
xorps xmm14, xmm14
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm11, dword [0x1400cb1fc]
test ax, ax
je 0x14005731a
movss xmm1, dword [rsp + 0x40]
movaps xmm4, xmm1
mulss xmm4, xmm11
movss xmm0, dword [rsp + 0x44]
movaps xmm3, xmm0
mulss xmm3, xmm11
movss xmm7, dword [rsp + 0x48]
movaps xmm2, xmm7
mulss xmm2, xmm11
movaps xmm11, xmm4
mulss xmm11, xmm1
movaps xmm10, xmm3
mulss xmm10, xmm0
mulss xmm7, xmm2
movaps xmm6, xmm3
mulss xmm6, xmm1
movaps xmm14, xmm2
mulss xmm14, xmm1
movaps xmm8, xmm2
mulss xmm8, xmm0
movss xmm1, dword [rsp + 0x4c]
movaps xmm9, xmm1
mulss xmm9, xmm4
movaps xmm5, xmm1
mulss xmm5, xmm3
mulss xmm1, xmm2
movaps xmm0, xmm7
addss xmm0, xmm10
movss xmm13, dword [0x1400cb1c4]
movaps xmm15, xmm13
subss xmm15, xmm0
mulss xmm15, xmm12
movaps xmm0, xmm6
subss xmm0, xmm1
mulss xmm0, xmm12
addss xmm15, xmm0
movaps xmm0, xmm5
addss xmm0, xmm14
addss xmm15, xmm0
addss xmm7, xmm11
subss xmm13, xmm7
mulss xmm13, xmm12
addss xmm1, xmm6
mulss xmm1, xmm12
addss xmm13, xmm1
movaps xmm0, xmm8
subss xmm0, xmm9
addss xmm13, xmm0
subss xmm14, xmm5
mulss xmm14, xmm12
addss xmm9, xmm8
mulss xmm9, xmm12
addss xmm14, xmm9
addss xmm11, xmm10
movss xmm6, dword [0x1400cb1c4]
movaps xmm0, xmm6
subss xmm0, xmm11
addss xmm14, xmm0
movss xmm11, dword [0x1400cb1fc]
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140057446
movss xmm1, dword [rsp + 0x40]
movaps xmm4, xmm1
mulss xmm4, xmm11
movss xmm0, dword [rsp + 0x44]
movaps xmm3, xmm0
mulss xmm3, xmm11
movss xmm6, dword [rsp + 0x48]
movaps xmm2, xmm6
mulss xmm2, xmm11
movaps xmm10, xmm4
mulss xmm10, xmm1
movaps xmm9, xmm3
mulss xmm9, xmm0
mulss xmm6, xmm2
movaps xmm5, xmm3
mulss xmm5, xmm1
movaps xmm14, xmm2
mulss xmm14, xmm1
movaps xmm7, xmm2
mulss xmm7, xmm0
movss xmm1, dword [rsp + 0x4c]
movaps xmm8, xmm1
mulss xmm8, xmm4
movaps xmm4, xmm1
mulss xmm4, xmm3
mulss xmm1, xmm2
movaps xmm0, xmm6
addss xmm0, xmm9
movss xmm13, dword [0x1400cb1c4]
movaps xmm15, xmm13
subss xmm15, xmm0
mulss xmm15, xmm12
movaps xmm0, xmm5
subss xmm0, xmm1
mulss xmm0, xmm12
addss xmm15, xmm0
movaps xmm0, xmm4
addss xmm0, xmm14
mulss xmm0, xmm13
subss xmm15, xmm0
addss xmm6, xmm10
subss xmm13, xmm6
mulss xmm13, xmm12
addss xmm1, xmm5
mulss xmm1, xmm12
addss xmm13, xmm1
movaps xmm0, xmm7
subss xmm0, xmm8
movss xmm6, dword [0x1400cb1c4]
mulss xmm0, xmm6
subss xmm13, xmm0
subss xmm14, xmm4
mulss xmm14, xmm12
addss xmm8, xmm7
mulss xmm8, xmm12
addss xmm14, xmm8
addss xmm9, xmm10
movaps xmm0, xmm6
subss xmm0, xmm9
mulss xmm0, xmm6
subss xmm14, xmm0
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140057569
movss xmm1, dword [rsp + 0x40]
movaps xmm4, xmm1
mulss xmm4, xmm11
movss xmm0, dword [rsp + 0x44]
movaps xmm3, xmm0
mulss xmm3, xmm11
movss xmm8, dword [rsp + 0x48]
movaps xmm2, xmm8
mulss xmm2, xmm11
movaps xmm11, xmm4
mulss xmm11, xmm1
movaps xmm10, xmm3
mulss xmm10, xmm0
mulss xmm8, xmm2
movaps xmm6, xmm3
mulss xmm6, xmm1
movaps xmm9, xmm2
mulss xmm9, xmm1
movaps xmm7, xmm2
mulss xmm7, xmm0
movss xmm5, dword [rsp + 0x4c]
movaps xmm14, xmm5
mulss xmm14, xmm4
movaps xmm4, xmm5
mulss xmm4, xmm3
mulss xmm5, xmm2
movaps xmm0, xmm8
addss xmm0, xmm10
movss xmm13, dword [0x1400cb1c4]
movaps xmm15, xmm13
subss xmm15, xmm0
movaps xmm1, xmm6
subss xmm1, xmm5
mulss xmm1, xmm12
addss xmm15, xmm1
movaps xmm0, xmm4
addss xmm0, xmm9
mulss xmm0, xmm12
addss xmm15, xmm0
addss xmm8, xmm11
subss xmm13, xmm8
mulss xmm13, xmm12
addss xmm5, xmm6
addss xmm13, xmm5
movaps xmm0, xmm7
subss xmm0, xmm14
mulss xmm0, xmm12
addss xmm13, xmm0
addss xmm14, xmm7
mulss xmm14, xmm12
subss xmm9, xmm4
addss xmm14, xmm9
addss xmm10, xmm11
movss xmm6, dword [0x1400cb1c4]
movaps xmm0, xmm6
subss xmm0, xmm10
mulss xmm0, xmm12
addss xmm14, xmm0
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14005769f
movss xmm1, dword [rsp + 0x40]
movaps xmm4, xmm1
movss xmm5, dword [0x1400cb1fc]
mulss xmm4, xmm5
movss xmm0, dword [rsp + 0x44]
movaps xmm3, xmm0
mulss xmm3, xmm5
movss xmm7, dword [rsp + 0x48]
movaps xmm2, xmm7
mulss xmm2, xmm5
movaps xmm11, xmm4
mulss xmm11, xmm1
movaps xmm10, xmm3
mulss xmm10, xmm0
mulss xmm7, xmm2
movaps xmm6, xmm3
mulss xmm6, xmm1
movaps xmm9, xmm2
mulss xmm9, xmm1
movaps xmm8, xmm2
mulss xmm8, xmm0
movss xmm5, dword [rsp + 0x4c]
movaps xmm14, xmm5
mulss xmm14, xmm4
movaps xmm4, xmm5
mulss xmm4, xmm3
mulss xmm5, xmm2
movaps xmm15, xmm6
subss xmm15, xmm5
mulss xmm15, xmm12
movaps xmm0, xmm7
addss xmm0, xmm10
movss xmm13, dword [0x1400cb1c4]
movaps xmm1, xmm13
subss xmm1, xmm0
mulss xmm1, xmm13
subss xmm15, xmm1
movaps xmm0, xmm4
addss xmm0, xmm9
mulss xmm0, xmm12
addss xmm15, xmm0
addss xmm7, xmm11
subss xmm13, xmm7
mulss xmm13, xmm12
addss xmm5, xmm6
movss xmm6, dword [0x1400cb1c4]
mulss xmm5, xmm6
subss xmm13, xmm5
movaps xmm0, xmm8
subss xmm0, xmm14
mulss xmm0, xmm12
addss xmm13, xmm0
addss xmm14, xmm8
mulss xmm14, xmm12
subss xmm9, xmm4
mulss xmm9, xmm6
subss xmm14, xmm9
addss xmm10, xmm11
movaps xmm0, xmm6
subss xmm0, xmm10
mulss xmm0, xmm12
addss xmm14, xmm0
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400576b3
movaps xmm13, xmm6
mov ecx, 0xa2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400576d8
movss xmm6, dword [0x1400cb254]
jmp 0x1400576e0
movss xmm6, dword [0x1400cb22c]
lea rdx, [rbx + 0x74]
movss xmm2, dword [0x1400cb1b4]
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0x70]
movss xmm2, dword [0x1400cb1e8]
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
mulss xmm14, xmm6
mulss xmm13, xmm6
mulss xmm15, xmm6
movss dword [rbp - 0x20], xmm15
movss dword [rbp - 0x1c], xmm13
movss dword [rbp - 0x18], xmm14
mov dword [rbp + 0xb9], esi
mov word [rbp + 0xbd], si
mov byte [rbp + 0xbf], sil
mov dword [rbp + 0x98], 0x55aa556
lea rax, [rbx + 0x3c]
mov qword [rbp + 0xa0], rax
lea rax, [rbp - 0x20]
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], 0xc
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x9c], eax
mov byte [rbp + 0xb8], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x98]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm6, dword [0x1400cb1c4]
call fcn.14006f6b0
cmp byte [rax + 0x224], sil
je 0x1400577f7
lea rdx, [rbx + 0xcc]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0xd0]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
call fcn.14006f6b0
cmp byte [rax + 0x225], sil
je 0x140057866
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140057866
lea rdx, [rbx + 0xd8]
movss xmm2, dword [0x1400cb188]
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0xdc]
movss xmm2, dword [0x1400cb16c]
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0xd4]
movss xmm2, dword [0x1400cb480]
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
call fcn.14006f6b0
cmp byte [rax + 0x226], sil
je 0x1400579b3
mov qword [rbp - 0x58], rsi
mov word [rbp + 0xe0], 0x100
mov dword [rbp + 0xe2], esi
mov word [rbp + 0xe6], si
mov dword [rbp + 0xc0], 0x55aa556
mov rax, qword [0x1400e1a98]
add rax, 0x780
mov qword [rbp + 0xc8], rax
lea rax, [rbp - 0x58]
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0xc4], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0xc0]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rbx, qword [rbp - 0x58]
test rbx, rbx
je 0x1400579b3
mov dword [rsp + 0x58], esi
mov word [rbp + 0x108], 0x100
mov dword [rbp + 0x10a], esi
mov word [rbp + 0x10e], si
mov dword [rbp + 0xe8], 0x55aa556
lea rax, [r14 + 0x20]
mov qword [rbp + 0xf0], rax
lea rax, [rsp + 0x58]
mov qword [rbp + 0xf8], rax
mov qword [rbp + 0x100], 4
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0xec], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0xe8]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov eax, dword [rsp + 0x58]
shr eax, 9
test al, 1
je 0x1400579b3
lea rdx, [rbx + 0x3a0]
mov rcx, qword [0x1400e1c48]
call fcn.140076e50
mov rcx, qword [0x1400e1a98]
call fcn.140049100
mov rbx, rax
test rax, rax
je 0x140058410
lea rdx, [rbp + 0x250]
mov rcx, rax
call fcn.140048e70
nop
cmp qword [rbp + 0x260], 0
je 0x14005839d
mov qword [rbp - 0x50], rsi
mov word [rbp + 0x130], 0x100
mov dword [rbp + 0x132], esi
mov word [rbp + 0x136], si
mov dword [rbp + 0x110], 0x55aa556
lea rdi, [rbx + 0xb0]
mov qword [rbp + 0x118], rdi
lea rax, [rbp - 0x50]
mov qword [rbp + 0x120], rax
mov qword [rbp + 0x128], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x114], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x110]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov r14, qword [rbp - 0x50]
test r14, r14
je 0x14005839d
lea rdx, [rbp + 0x200]
mov rcx, rbx
call fcn.140048e70
mov rcx, rax
call fcn.1400478f0
test al, al
je 0x14005839d
mov qword [rbp - 0x48], rsi
mov word [rbp + 0x158], 0x100
mov dword [rbp + 0x15a], esi
mov word [rbp + 0x15e], si
mov dword [rbp + 0x138], 0x55aa556
mov qword [rbp + 0x140], rdi
lea rax, [rbp - 0x48]
mov qword [rbp + 0x148], rax
mov qword [rbp + 0x150], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x13c], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x138]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rax, qword [rbp - 0x48]
test rax, rax
je 0x14005839d
mov qword [rbp - 0x40], rsi
mov word [rbp + 0x180], 0x100
mov dword [rbp + 0x182], esi
mov word [rbp + 0x186], si
mov dword [rbp + 0x160], 0x55aa556
add rax, 0x1a0
mov qword [rbp + 0x168], rax
lea rax, [rbp - 0x40]
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x178], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x164], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x160]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rbx, qword [rbp - 0x40]
test rbx, rbx
je 0x14005839d
call fcn.14006f6b0
cmp byte [rax + 0x227], 0
je 0x140057e73
mov qword [rbp - 0x38], rsi
mov word [rbp + 0x1a8], 0x100
mov dword [rbp + 0x1aa], esi
mov word [rbp + 0x1ae], si
mov dword [rbp + 0x188], 0x55aa556
lea rax, [rbx + 0x30]
mov qword [rbp + 0x190], rax
lea rax, [rbp - 0x38]
mov qword [rbp + 0x198], rax
mov qword [rbp + 0x1a0], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x18c], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x188]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rdi, qword [rbp - 0x38]
test rdi, rdi
je 0x14005839d
mov qword [rsp + 0x50], rsi
mov dword [rbp + 0x1d1], esi
mov word [rbp + 0x1d5], si
mov byte [rbp + 0x1d7], 0
mov dword [rbp + 0x1b0], 0x55aa556
lea rax, [rdi + 0x68]
mov qword [rbp + 0x1b8], rax
lea rax, [rsp + 0x50]
mov qword [rbp + 0x1c0], rax
mov qword [rbp + 0x1c8], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x1b4], eax
mov byte [rbp + 0x1d0], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x1b0]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rbp - 0x30], rsi
mov word [rbp + 0x1f8], 0x100
mov dword [rbp + 0x1fa], esi
mov word [rbp + 0x1fe], si
mov dword [rbp + 0x1d8], 0x55aa556
lea rax, [rdi + 0x90]
mov qword [rbp + 0x1e0], rax
lea rax, [rbp - 0x30]
mov qword [rbp + 0x1e8], rax
mov qword [rbp + 0x1f0], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rbp + 0x1dc], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0x1d8]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x140057dd3
lea rdx, [rbx + 0x24]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0x20]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0x2c]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0x28]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0x30]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
mov qword [rbp - 0x78], rsi
mov word [rbp - 0x80], 0x100
mov dword [rbp - 0x7e], esi
mov word [rbp - 0x7a], si
mov dword [rsp + 0x60], 0x55aa556
lea rax, [rdi + 0x80]
mov qword [rsp + 0x68], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 8
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rsp + 0x64], eax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rsp + 0x60]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rbx, qword [rbp - 0x78]
test rbx, rbx
je 0x140057e73
lea rdx, [rbx + 0x20]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [rbx + 0x24]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
call fcn.14006f6b0
cmp byte [rax + 0x228], 0
je 0x140057e90
lea rdx, [0x140058480]
mov rcx, r14
call fcn.140048c40
call fcn.14006f6b0
cmp byte [rax + 0x22a], 0
je 0x140057eca
lea rdx, [r14 + 0x2f8]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x2fc]
xorps xmm2, xmm2
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
call fcn.14006f6b0
cmp byte [rax + 0x22b], 0
je 0x140057eeb
lea rdx, [r14 + 0x2b0]
mov rcx, qword [0x1400e1c48]
call fcn.140076e50
call fcn.14006f6b0
cmp byte [rax + 0x22c], 0
je 0x140057f50
lea rdx, [r14 + 0x300]
mov rcx, qword [0x1400e1c48]
call fcn.140076d50
mov rbx, rax
lea rdx, [rax + 0x80]
mov rcx, qword [0x1400e1c48]
call fcn.140076d50
mov rdi, rax
test rbx, rbx
jne 0x140057f2f
test rax, rax
je 0x140057f50
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 0x220]
call fcn.14006fef0
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.1400551b0
call fcn.14006f6b0
cmp byte [rax + 0x22d], 0
je 0x1400580fc
movabs rax, 0xbfc088388cc82be4
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x240], rax
movabs rcx, 0x8f4dd69217bedd86
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x248], rax
movabs rax, 0xbfa188538ca72b81
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], rax
movdqa xmm0, xmmword [rbp + 0x240]
xorps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x240], xmm0
lea rax, [rbp + 0x240]
mov r10, 0xffffffffffffffff
inc r10
cmp word [rax + r10*2], 0
jne 0x140057fe3
lea rbx, [rbp + 0x250]
mov r15, qword [rbp + 0x268]
cmp r15, 7
cmova rbx, qword [rbp + 0x250]
mov rax, qword [rbp + 0x260]
cmp r10, rax
ja 0x140058103
sub rax, r10
test r10, r10
je 0x1400580b2
lea rdi, [rbx + 2]
lea rdi, [rdi + rax*2]
mov rcx, rbx
mov r11, qword [rbp + 0x240]
nop word [rax + rax]
mov rax, rdi
sub rax, rcx
sar rax, 1
mov rdx, rsi
je 0x14005806a
cmp word [rcx], r11w
je 0x140058067
cmp rax, 1
je 0x14005806a
dec rax
add rcx, 2
cmp word [rcx], r11w
jne 0x140058054
mov rdx, rcx
mov rcx, rdx
test rdx, rdx
je 0x140058103
mov r8, r10
lea rdx, [rbp + 0x240]
test r10, r10
je 0x1400580a6
lea rax, [rbp + 0x240]
mov r9, rcx
sub r9, rax
movzx eax, word [rdx + r9]
cmp ax, word [rdx]
jne 0x1400580f3
add rdx, 2
sub r8, 1
jne 0x140058092
sub rcx, rbx
sar rcx, 1
cmp rcx, 0xffffffffffffffff
je 0x140058103
lea rdx, [r14 + 0x3bc]
movaps xmm2, xmm6
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x3a8]
movaps xmm2, xmm6
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x3b8]
mov rcx, qword [0x1400e1c48]
call fcn.140076e50
jmp 0x140058103
add rcx, 2
jmp 0x140058040
mov r15, qword [rbp + 0x268]
call fcn.14006f6b0
cmp byte [rax + 0x22f], 0
je 0x1400581cb
lea rdx, [r14 + 0x310]
movss xmm6, dword [0x1400cb4b0]
movaps xmm2, xmm6
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x314]
movaps xmm2, xmm6
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x354]
movaps xmm2, xmm12
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x358]
movaps xmm2, xmm12
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x31c]
movaps xmm2, xmm12
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x328]
movaps xmm2, xmm12
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [r14 + 0x318]
movaps xmm2, xmm12
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
lea rdx, [0x140058510]
mov rcx, r14
call fcn.140048c40
call fcn.14006f6b0
cmp byte [rax + 0x229], 0
je 0x1400582cf
lea rdx, [r14 + 0x370]
mov rcx, qword [0x1400e1c48]
call fcn.140076dd0
test al, al
je 0x1400582bd
movabs r12, 0x431bde82d7b634db
cmp qword [0x1400e1c30], 0
jne 0x140058233
lea rcx, [rbp - 0x10]
call fcn.140037fb0
mov rcx, qword [rax]
mov rax, r12
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [0x1400e1c30], rdx
lea rdx, [r14 + 0x2d8]
mov rcx, qword [0x1400e1c48]
call fcn.140076c50
mulss xmm0, dword [0x1400cb468]
movss dword [0x1400e1c1c], xmm0
lea rcx, [rbp - 0x78]
call fcn.140037fb0
mov rdi, qword [rax]
lea rdx, [r14 + 0x2d8]
mov rcx, qword [0x1400e1c48]
call fcn.140076c50
mulss xmm0, dword [0x1400cb468]
xorps xmm1, xmm1
cvtsi2ss xmm1, qword [0x1400e1c30]
addss xmm0, xmm1
cvttss2si ecx, xmm0
movsxd r8, ecx
mov rax, r12
imul rdi
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sub r8, rdx
xorps xmm0, xmm0
cvtsi2ss xmm0, r8
movss dword [0x1400e1c18], xmm0
jmp 0x1400582cf
mov qword [0x1400e1c30], rsi
mov qword [0x1400e1c18], 0
call fcn.14006f6b0
cmp byte [rax + 0x22e], 0
je 0x1400583a4
lea rdx, [r14 + 0x21c]
movss xmm2, dword [0x1400cb4cc]
mov rcx, qword [0x1400e1c48]
call fcn.140076cd0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400583a4
mov dword [rsp + 0x58], 1
mov dword [rbp - 0x7f], esi
mov word [rbp - 0x7b], si
mov byte [rbp - 0x79], 0
mov dword [rsp + 0x60], 0x55aa556
lea rax, [r14 + 0x398]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 4
mov rcx, qword [0x1400e1c48]
mov eax, dword [rcx]
mov dword [rsp + 0x64], eax
mov byte [rbp - 0x80], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rsp + 0x60]
mov edx, 0x220914
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
lea rdx, [r14 + 0x333]
mov rcx, qword [0x1400e1c48]
call fcn.140076e50
jmp 0x1400583a4
mov r15, qword [rbp + 0x268]
cmp r15, 7
jbe 0x140058410
lea rdx, [r15*2 + 2]
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400583de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140058478
call fcn.1400850ac
jmp 0x140058410
xorps xmm0, xmm0
movdqu xmmword [0x1400e1a90], xmm0
mov rax, qword [0x1400e1ac0]
cmp rax, qword [0x1400e1ac8]
je 0x140058407
mov qword [0x1400e1ac8], rax
xor esi, esi
mov qword [0x1400e1ab0], rsi
mov rcx, qword [rbp + 0x270]
xor rcx, rsp
call fcn.140084e10
lea r11, [rsp + 0x420]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
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 rbp
ret
call fcn.14008f070
int3