Function at 0x14015b020
Capabilities:
Log keystrokes

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
sub rsp, 0x20
test rcx, rcx
mov ebx, edx
mov rsi, rcx
jne 0x14015b052
mov rcx, qword [0x14020b3e8]
test rcx, rcx
je 0x14015b052
mov rcx, qword [rcx]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rsi
jmp fcn.1400e0110
mov qword [rsp + 0x30], rbp
xor ebp, ebp
test edx, edx
mov qword [rsp + 0x38], rdi
js 0x14015b067
cmp edx, 0x12
jl 0x14015b069
mov ebx, ebp
mov ecx, 0x368
call fcn.1400ce030
xor edx, edx
mov r8d, 0x368
mov rcx, rax
mov rdi, rax
call fcn.1401a6e60
mov rcx, qword [0x14020b3e8]
test rsi, rsi
cmove rcx, rdi
cmp qword [0x14020b3d8], rbp
mov dword [rdi + 0x180], 1
mov qword [0x14020b3e8], rcx
mov dword [rdi + 0x184], 1
mov dword [rdi + 0x188], ebx
mov qword [rdi + 8], rsi
je 0x14015b0d9
mov rax, qword [0x14020b3e0]
mov qword [rax + 0x230], rdi
mov qword [rdi + 0x238], rax
jmp 0x14015b0e7
mov qword [0x14020b3d8], rdi
mov qword [rdi + 0x238], rbp
test rsi, rsi
mov qword [rdi + 0x230], rbp
mov qword [0x14020b3e0], rdi
jne 0x14015b103
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov rsi, rax
lea r8, [0x14015af30]
mov r9, rdi
xor edx, edx
mov rcx, rsi
call fcn.1400d4680
mov r11, qword [0x14020b3e8]
mov rcx, qword [rdi + 0x10]
cmp r11, rdi
cmove r11, rbp
test rcx, rcx
mov qword [0x14020b3e8], r11
je 0x14015b13b
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rcx, qword [rdi + 0x238]
test rcx, rcx
je 0x14015b157
mov rax, qword [rdi + 0x230]
mov qword [rcx + 0x230], rax
jmp 0x14015b165
mov rax, qword [rdi + 0x230]
mov qword [0x14020b3d8], rax
mov rcx, qword [rdi + 0x230]
test rcx, rcx
je 0x14015b181
mov rax, qword [rdi + 0x238]
mov qword [rcx + 0x238], rax
jmp 0x14015b18f
mov rax, qword [rdi + 0x238]
mov qword [0x14020b3e0], rax
mov rsi, qword [rdi + 0x138]
test rsi, rsi
je 0x14015b1d8
nop
nop
mov rcx, qword [rsi + 0x48]
mov rbx, qword [rsi + 0x58]
call fcn.1400ce0b0
mov rcx, qword [rsi + 0x20]
call fcn.1400ce0b0
mov rcx, qword [rsi + 0x18]
call fcn.1400ce0b0
mov rcx, qword [rsi + 0x10]
call fcn.1400ce0b0
mov rcx, rsi
call fcn.1400ce0b0
test rbx, rbx
mov rsi, rbx
jne 0x14015b1a0
mov rsi, qword [rdi + 0x150]
test rsi, rsi
je 0x14015b228
nop
nop
nop
mov rcx, qword [rsi + 0x48]
mov rbx, qword [rsi + 0x58]
call fcn.1400ce0b0
mov rcx, qword [rsi + 0x20]
call fcn.1400ce0b0
mov rcx, qword [rsi + 0x18]
call fcn.1400ce0b0
mov rcx, qword [rsi + 0x10]
call fcn.1400ce0b0
mov rcx, rsi
call fcn.1400ce0b0
test rbx, rbx
mov rsi, rbx
jne 0x14015b1f0
lea rdx, [rdi + 0x270]
lea rcx, [rdi + 0x268]
call fcn.14000a780
lea rdx, [rdi + 0x280]
lea rcx, [rdi + 0x278]
call fcn.14000a780
lea rdx, [rdi + 0x290]
lea rcx, [rdi + 0x288]
call fcn.14000aaa0
mov rcx, qword [rdi + 0x168]
test rcx, rcx
je 0x14015b28a
call fcn.1400ce0b0
mov rcx, qword [rdi + 0x170]
call fcn.1400ce0b0
mov rcx, qword [rdi + 0x178]
call fcn.1400ce0b0
mov eax, dword [rdi + 0x358]
test eax, eax
je 0x14015b2de
test eax, eax
je 0x14015b2d2
mov rbx, rbp
nop
nop
mov rax, qword [rdi + 0x360]
mov rcx, qword [rbx + rax]
mov rcx, qword [rcx]
call fcn.1400ce0b0
mov rcx, qword [rdi + 0x360]
mov rcx, qword [rbx + rcx]
call fcn.1400ce0b0
add ebp, 1
add rbx, 8
cmp ebp, dword [rdi + 0x358]
jb 0x14015b2a0
mov rcx, qword [rdi + 0x360]
call fcn.1400ce0b0
lea rdx, [rdi + 0x198]
lea rcx, [rdi + 0x190]
call fcn.140007ee0
mov rcx, qword [rdi + 0x240]
mov rbp, qword [rsp + 0x30]
test rcx, rcx
je 0x14015b308
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, qword [rdi + 0x248]
test rcx, rcx
je 0x14015b31a
call qword [sym.imp.GDI32.dll_DeleteObject]
cmp dword [rdi + 0x258], 0
je 0x14015b328
call fcn.1400f2470
mov rcx, qword [rdi + 0x298]
test rcx, rcx
je 0x14015b339
call fcn.1400ce0b0
mov rcx, qword [rdi + 0x2a8]
test rcx, rcx
je 0x14015b34a
call fcn.1400ce0b0
mov rcx, qword [rdi + 0x2a0]
test rcx, rcx
je 0x14015b35b
call fcn.1400ce0b0
lea rbx, [rdi + 0x2d8]
mov esi, 8
mov rcx, qword [rbx]
test rcx, rcx
je 0x14015b374
call fcn.1400ce0b0
add rbx, 0x10
sub rsi, 1
jne 0x14015b367
mov rcx, rdi
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rsi
jmp fcn.1400ce0b0