Function at 0x14007bb20
Capabilities:
Log keystrokes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xa0
mov rcx, rdx
mov rbx, r9
mov r13, r8
call fcn.14007a1a0
mov r15d, eax
test eax, eax
je 0x14007c49a
mov r9, qword [rbp + 0x7f]
mov r8, qword [rbp + 0x77]
mov rdx, qword [rbp + 0x6f]
mov rcx, qword [rbp + 0x67]
call fcn.140067bd0
mov r14, rax
test rax, rax
je 0x14007c49a
mov rdx, rbx
mov rcx, rax
call fcn.1400b3c40
mov rsi, rax
test rax, rax
je 0x14007c49a
xor r12d, r12d
lea eax, [r15 - 1]
lea edi, [r12 + 1]
cmp eax, 0x10
ja case.default.0x14007bbc3
lea rdx, [0x140000000]
movsxd rcx, eax
mov eax, dword [rdx + rcx*4 + 0x7cb0c]
add rax, rdx
jmp rax
lea rax, [rbp - 0x49]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x30], rax
mov edx, pe_nt_image_headers64
mov rcx, rsi
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], 2
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
cmp r15d, edi
mov rax, r12
sete al
cmp qword [rbp - 0x49], rax
je case.default.0x14007bbc3
xor edx, edx
mov rcx, r14
xor r15b, r15b
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov r13d, eax
test eax, eax
je 0x14007bc4f
cmp eax, dword [0x14011b1a8]
je 0x14007bc4f
mov rcx, r14
call fcn.1400b4270
test al, al
jne 0x14007bc4f
mov ecx, dword [0x14011b1a8]
mov r8d, edi
mov edx, r13d
call qword [sym.imp.USER32.dll_AttachThreadInput]
test eax, eax
setne r15b
cmp r14, rsi
jne 0x14007bc5f
mov rcx, rsi
call fcn.1400b4210
mov r14, rax
mov rcx, r14
call qword [sym.imp.USER32.dll_SetActiveWindow]
lea rdx, [rbp - 0x39]
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
jne 0x14007bc95
mov ecx, r12d
mov eax, r12d
mov r8d, r12d
mov dword [rbp - 0x31], r12d
mov r9d, r12d
mov dword [rbp - 0x39], r12d
mov dword [rbp - 0x35], ecx
mov dword [rbp - 0x2d], eax
jmp 0x14007bca3
mov eax, dword [rbp - 0x2d]
mov r8d, dword [rbp - 0x31]
mov ecx, dword [rbp - 0x35]
mov r9d, dword [rbp - 0x39]
sub eax, ecx
sub r8d, r9d
cdq
sub eax, edx
sar eax, 1
movzx ebx, ax
mov eax, r8d
mov r8, rdi
cdq
shl ebx, 0x10
sub eax, edx
mov edx, 0x201
sar eax, 1
movzx ecx, ax
or rbx, rcx
mov rcx, rsi
mov r9, rbx
call qword [sym.imp.USER32.dll_PostMessageW]
mov r9, rbx
xor r8d, r8d
mov edx, 0x202
mov rcx, rsi
call qword [sym.imp.USER32.dll_PostMessageW]
test r15b, r15b
je case.default.0x14007bbc3
mov ecx, dword [0x14011b1a8]
xor r8d, r8d
mov edx, r13d
call qword [sym.imp.USER32.dll_AttachThreadInput]
jmp case.default.0x14007bbc3
mov edx, edi
mov rcx, rsi
call qword [sym.imp.USER32.dll_EnableWindow]
jmp case.default.0x14007bbc3
xor edx, edx
mov rcx, rsi
call qword [sym.imp.USER32.dll_EnableWindow]
jmp case.default.0x14007bbc3
mov edx, 4
mov rcx, rsi
call qword [sym.imp.USER32.dll_ShowWindow]
jmp case.default.0x14007bbc3
xor edx, edx
mov rcx, rsi
call qword [sym.imp.USER32.dll_ShowWindow]
jmp case.default.0x14007bbc3
cmp word [r13], r12w
je 0x14007c04c
mov edx, 0xfffffff0
mov r12d, 0xffffffec
cmp r15d, 7
cmove r12d, edx
mov rcx, rsi
mov edx, r12d
call qword [sym.imp.USER32.dll_GetWindowLongW]
movzx edx, word [r13]
lea rcx, [0x1400edce8]
mov edi, eax
call fcn.1400cb634
test rax, rax
jne 0x14007bd9b
mov rcx, r13
call fcn.14001bfa0
mov rbx, rax
jmp 0x14007bdcb
lea rcx, [r13 + 2]
call fcn.14001bfa0
movzx ecx, word [r13]
cmp ecx, 0x2b
je 0x14007bdc7
cmp ecx, 0x2d
je 0x14007bdc1
cmp ecx, 0x5e
jne 0x14007bdbc
xor eax, edi
jmp 0x14007bdc9
mov ebx, dword [rbp - 0x49]
jmp 0x14007bdcb
not eax
and eax, edi
jmp 0x14007bdc9
or eax, edi
mov ebx, eax
cmp ebx, edi
jne 0x14007c09c
mov rsi, qword [0x14011a308]
movzx eax, byte [rsi + 0x23]
test al, al
jne 0x14007be05
mov byte [rsp + 0x20], 1
mov rcx, qword [rsi + 0x10]
lea rdx, [0x1400e350c]
xor r9d, r9d
or r8, 0xffffffffffffffff
call fcn.1400b1500
mov edi, eax
jmp 0x14007c4a5
lea r14, [0x1400e350c]
mov edi, 1
cmp qword [rsi + 8], r14
jne 0x14007be20
mov r13, qword [rsi + 0x10]
shr r13, 1
jmp 0x14007be23
mov r13, rdi
lea rcx, [r13 + 1]
lea r12, [rcx + rcx]
cmp al, 2
jne 0x14007be41
mov rdx, r13
mov rcx, r14
call fcn.140006090
mov edi, eax
jmp 0x14007c4a5
mov r8, qword [0x140114480]
cmp r12, r8
jbe 0x14007be74
cmp r12, qword [rsi + 0x18]
jbe 0x14007be74
lea r8, [0x1400e346c]
lea rdx, [0x1400fff00]
lea rcx, [0x14011b1d0]
call fcn.140040760
mov edi, eax
jmp 0x14007c4a5
cmp rcx, 2
jae 0x14007be90
xor r8d, r8d
mov rcx, rsi
lea edx, [r8 + 4]
call fcn.1400b1bb0
mov eax, edi
jmp 0x14007c4a5
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x14007bead
mov rcx, qword [rsi]
and al, 0x3d
mov byte [rsi + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140114480]
mov r9, qword [rsi + 0x18]
and byte [rsi + 0x21], 0x82
cmp r12, r9
jbe 0x14007c021
movzx r10d, byte [rsi + 0x20]
movzx eax, r10b
cmp r10b, dil
jbe 0x14007bedd
cmp al, 2
je 0x14007bf1f
mov rbx, qword [rbp - 0x41]
mov rax, qword [rbp - 0x41]
jmp 0x14007c015
mov ebx, 0x80
cmp r12, rbx
ja 0x14007bf1f
cmp r12, 8
ja 0x14007bef4
mov ebx, 8
jmp 0x14007bf00
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp r12, rax
cmovbe rbx, rax
mov rcx, rbx
call fcn.1400aa420
test rax, rax
jne 0x14007c1fa
xor r12d, r12d
mov edi, r12d
mov eax, r12d
jmp 0x14007c4a5
cmp r12, 0x20
jae 0x14007bf2f
mov ebx, SafeArrayAllocDescriptor
jmp 0x14007bfdb
mov ebx, 0x208
cmp r12, rbx
jb 0x14007bfdb
cmp r12, 0x50000
jae 0x14007bf95
pxor xmm0, xmm0
cvtsi2sd xmm0, r12
test r12, r12
jns 0x14007bf5c
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14007bf8b
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14007bf8b
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rbx, xmm0
add rbx, rcx
jmp 0x14007bfdb
cmp r12, 0x320000
jae 0x14007bfa8
lea rbx, [r12 + 0x8000]
jmp 0x14007bfdb
cmp r12, 0xc80000
jae 0x14007bfd3
movabs rax, 0x47ae147ae147ae15
mov rbx, r12
mul r12
sub rbx, rdx
shr rbx, 1
add rbx, rdx
shr rbx, 6
add rbx, r12
jmp 0x14007bfdb
lea rbx, [r12 + 0x20000]
cmp rbx, r8
cmova rbx, r8
cmp r10b, 2
jne 0x14007bffc
test r9, r9
je 0x14007bffc
mov rcx, qword [rsi + 8]
movzx r12d, dil
call fcn.1400cb13c
jmp 0x14007bfff
xor r12b, r12b
test rbx, rbx
js 0x14007c053
mov rcx, rbx
call fcn.1400ca9c4
test rax, rax
je 0x14007c053
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov qword [rsi + 0x18], rbx
and byte [rsi + 0x21], 0x7f
mov rcx, qword [rsi + 8]
cmp rcx, r14
je 0x14007c037
lea r8, [r13 + r13]
mov rdx, r14
call fcn.1400cb300
mov rax, qword [rsi + 8]
lea rcx, [r13 + r13]
xor r12d, r12d
mov word [rcx + rax], r12w
mov qword [rsi + 0x10], rcx
mov eax, edi
jmp 0x14007c4a5
test r12b, r12b
je 0x14007c06c
lea rax, [0x14011b184]
xor r12d, r12d
mov qword [rsi + 8], rax
mov qword [rsi + 0x18], r12
jmp 0x14007c077
mov rax, qword [rsi + 8]
xor r12d, r12d
mov word [rax], r12w
lea r8, [0x1400e346c]
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov qword [rsi + 0x10], r12
call fcn.140040760
mov edi, eax
jmp 0x14007c4a5
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r8d, ebx
mov edx, r12d
mov rcx, rsi
call qword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
jne 0x14007c0c5
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x14007c49a
mov edx, r12d
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetWindowLongW]
cmp eax, edi
je 0x14007c49a
mov edi, 1
xor edx, edx
mov rcx, rsi
mov r8d, edi
call qword [sym.imp.USER32.dll_InvalidateRect]
mov rsi, qword [0x14011a308]
movzx eax, byte [rsi + 0x23]
test al, al
jne 0x14007c105
mov byte [rsp + 0x20], dil
jmp 0x14007bde7
lea r14, [0x1400e350c]
cmp qword [rsi + 8], r14
jne 0x14007c11b
mov r13, qword [rsi + 0x10]
shr r13, 1
jmp 0x14007c11e
mov r13, rdi
lea rcx, [r13 + 1]
lea r12, [rcx + rcx]
cmp al, 2
jne 0x14007c13c
mov rdx, r13
mov rcx, r14
call fcn.140006090
mov edi, eax
jmp 0x14007c4a5
mov r8, qword [0x140114480]
cmp r12, r8
jbe 0x14007c16f
cmp r12, qword [rsi + 0x18]
jbe 0x14007c16f
lea r8, [0x1400e346c]
lea rdx, [0x1400fff00]
lea rcx, [0x14011b1d0]
call fcn.140040760
mov edi, eax
jmp 0x14007c4a5
cmp rcx, 2
jb 0x14007be7a
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x14007c196
mov rcx, qword [rsi]
and al, 0x3d
mov byte [rsi + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140114480]
mov r9, qword [rsi + 0x18]
and byte [rsi + 0x21], 0x82
cmp r12, r9
jbe 0x14007c021
movzx r10d, byte [rsi + 0x20]
movzx eax, r10b
cmp r10b, dil
jbe 0x14007c1c6
cmp al, 2
je 0x14007c203
mov rbx, qword [rbp - 0x41]
mov rax, qword [rbp - 0x41]
jmp 0x14007c015
mov ebx, 0x80
cmp r12, rbx
ja 0x14007c203
cmp r12, 8
ja 0x14007c1dd
mov ebx, 8
jmp 0x14007c1e9
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp r12, rax
cmovbe rbx, rax
mov rcx, rbx
call fcn.1400aa420
test rax, rax
je 0x14007bf11
mov byte [rsi + 0x20], dil
jmp 0x14007c015
cmp r12, 0x20
jae 0x14007c213
mov ebx, SafeArrayAllocDescriptor
jmp 0x14007c2bf
mov ebx, 0x208
cmp r12, rbx
jb 0x14007c2bf
cmp r12, 0x50000
jae 0x14007c279
pxor xmm0, xmm0
cvtsi2sd xmm0, r12
test r12, r12
jns 0x14007c240
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14007c26f
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14007c26f
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rbx, xmm0
add rbx, rcx
jmp 0x14007c2bf
cmp r12, 0x320000
jae 0x14007c28c
lea rbx, [r12 + 0x8000]
jmp 0x14007c2bf
cmp r12, 0xc80000
jae 0x14007c2b7
movabs rax, 0x47ae147ae147ae15
mov rbx, r12
mul r12
sub rbx, rdx
shr rbx, 1
add rbx, rdx
shr rbx, 6
add rbx, r12
jmp 0x14007c2bf
lea rbx, [r12 + 0x20000]
cmp rbx, r8
cmova rbx, r8
cmp r10b, 2
jne 0x14007c2e0
test r9, r9
je 0x14007c2e0
mov rcx, qword [rsi + 8]
movzx r12d, dil
call fcn.1400cb13c
jmp 0x14007c2e3
xor r12b, r12b
test rbx, rbx
js 0x14007c2f9
mov rcx, rbx
call fcn.1400ca9c4
test rax, rax
jne 0x14007c011
test r12b, r12b
je 0x14007c312
lea rax, [0x14011b184]
xor r12d, r12d
mov qword [rsi + 8], rax
mov qword [rsi + 0x18], r12
jmp 0x14007c31d
mov rax, qword [rsi + 8]
xor r12d, r12d
mov word [rax], r12w
lea r8, [0x1400e346c]
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov qword [rsi + 0x10], r12
call fcn.140040760
mov edi, eax
jmp 0x14007c4a5
cmp r15d, 9
mov r8, r12
mov edx, 0x14f
sete r8b
xor r9d, r9d
jmp 0x14007c810
cmp word [r13], r12w
je 0x14007c36e
mov rcx, r13
call fcn.1400148f0
mov r14d, eax
jmp 0x14007c371
mov r14d, edi
mov eax, 0x25
mov r13d, 0x27
cmp r15d, 0xb
cmove r13d, eax
xor edx, edx
movzx ecx, r13b
call fcn.14001b2b0
movzx r11d, ax
shl r11d, 0x10
movsxd rbx, r11d
test r14d, r14d
jle case.default.0x14007bbc3
mov r15, rbx
mov eax, 0xc0000001
movzx r13d, r13b
or r15, rdi
or rbx, rax
nop word [rax + rax]
mov r9, r15
mov r8, r13
mov edx, 0x100
mov rcx, rsi
call qword [sym.imp.USER32.dll_PostMessageW]
mov edx, edi
xor ecx, ecx
mov dword [0x140114474], r12d
call fcn.140001a70
mov r9, rbx
mov r8, r13
mov edx, 0x101
mov rcx, rsi
mov dword [0x140114474], edi
call qword [sym.imp.USER32.dll_PostMessageW]
dec r14
jne 0x14007c3c0
jmp case.default.0x14007bbc3
cmp word [rbx], r12w
jne 0x14007c425
lea rdx, [rbp - 0x29]
mov r8d, SafeArrayAllocDescriptor
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetClassNameW]
lea rbx, [rbp - 0x29]
lea rdx, [0x1400ef1b0]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c440
mov edx, 0x143
jmp 0x14007c459
lea rdx, [0x1400ed410]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c49a
mov edx, 0x180
lea rax, [rbp - 0x49]
mov r9, r13
xor r8d, r8d
mov qword [rsp + 0x30], rax
mov rcx, rsi
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], 2
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
mov rax, qword [rbp - 0x49]
cmp rax, 0xffffffffffffffff
je 0x14007c49a
cmp rax, 0xfffffffffffffffe
jne case.default.0x14007bbc3
mov rcx, qword [rbp + 0x47]
mov dl, 1
call fcn.14003f1c0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
cmp word [r13], r12w
je 0x14007c49a
mov rcx, r13
call fcn.1400148f0
mov r13d, eax
dec r13d
js 0x14007c49a
cmp word [rbx], r12w
jne 0x14007c4fa
lea rdx, [rbp - 0x29]
mov r8d, SafeArrayAllocDescriptor
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetClassNameW]
lea rbx, [rbp - 0x29]
lea rdx, [0x1400ef1b0]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c515
mov edx, 0x144
jmp 0x14007c532
lea rdx, [0x1400ed410]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c49a
mov edx, 0x182
lea rax, [rbp - 0x49]
movsxd r8, r13d
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov rcx, rsi
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], 2
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
cmp qword [rbp - 0x49], 0xffffffffffffffff
jmp 0x14007c835
cmp word [r13], r12w
je 0x14007c49a
mov rcx, r13
call fcn.1400148f0
mov r13d, eax
dec r13d
js 0x14007c49a
cmp word [rbx], r12w
jne 0x14007c5a9
lea rdx, [rbp - 0x29]
mov r8d, SafeArrayAllocDescriptor
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetClassNameW]
lea rbx, [rbp - 0x29]
lea rdx, [0x1400ef1b0]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c5d2
mov edx, 0x14e
mov ebx, 9
movsxd r8, r13d
xor r9d, r9d
jmp 0x14007c677
lea rdx, [0x1400ed410]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c49a
mov edx, 0xfffffff0
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetWindowLongW]
mov ebx, 2
and eax, 0x808
neg eax
sbb edx, edx
add edx, 0x186
cmp edx, 0x185
jne 0x14007c5c7
lea rax, [rbp - 0x49]
movsxd r9, r13d
mov r8, rdi
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], ebx
jmp 0x14007c690
cmp word [rbx], r12w
jne 0x14007c64e
lea rdx, [rbp - 0x29]
mov r8d, SafeArrayAllocDescriptor
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetClassNameW]
lea rbx, [rbp - 0x29]
lea rdx, [0x1400ef1b0]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c743
mov edx, 0x14d
mov ebx, 9
mov r9, r13
or r8, 0xffffffffffffffff
lea rax, [rbp - 0x49]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], 2
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
cmp qword [rbp - 0x49], 0xffffffffffffffff
je 0x14007c49a
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetParent]
mov r13, rax
test rax, rax
je 0x14007c49a
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetDlgCtrlID]
mov r14d, eax
test eax, eax
jne 0x14007c6e8
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x14007c49a
lea rax, [rbp - 0x49]
movzx r14d, r14w
mov r9, rsi
mov qword [rsp + 0x30], rax
movsxd r8, r14d
mov edx, 0x111
bts r8, 0x10
mov rcx, r13
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], 2
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
movzx eax, bx
mov r9, rsi
mov edx, 0x111
shl eax, 0x10
mov rcx, r13
movsxd r8, eax
or r8, r14
jmp 0x14007c813
lea rdx, [0x1400ed410]
mov rcx, rbx
call fcn.1400ad670
test rax, rax
je 0x14007c49a
mov edx, 0xfffffff0
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, 0x18f
mov edx, 0x18c
test eax, 0x808
mov ebx, 2
cmovne edx, ecx
cmp edx, ecx
jne 0x14007c670
lea rax, [rbp - 0x41]
mov edx, ecx
mov r9, r13
mov qword [rsp + 0x30], rax
or r8, 0xffffffffffffffff
mov rcx, rsi
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], ebx
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
mov r9, qword [rbp - 0x41]
cmp r9, 0xffffffffffffffff
je 0x14007c49a
lea rax, [rbp - 0x49]
mov r8, rdi
mov edx, 0x185
mov qword [rsp + 0x30], rax
mov rcx, rsi
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], ebx
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
cmp qword [rbp - 0x49], 0xffffffffffffffff
jne 0x14007c6ad
jmp 0x14007c49a
mov r9, r13
mov r8, rdi
mov edx, 0xc2
mov rcx, rsi
lea rax, [rbp - 0x49]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x7d0
mov dword [rsp + 0x20], 2
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
je 0x14007c49a
mov rax, qword [0x1401144a8]
mov ecx, dword [rax + 0x78]
cmp ecx, 0xffffffff
jle 0x14007c851
mov edx, edi
call fcn.140001a70
mov rsi, qword [0x14011a308]
movzx eax, byte [rsi + 0x23]
test al, al
jne 0x14007c883
mov rcx, qword [rsi + 0x10]
lea rdx, [0x1400e350c]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov byte [rsp + 0x20], dil
call fcn.1400b1500
mov edi, eax
jmp 0x14007c4a5
lea r14, [0x1400e350c]
cmp qword [rsi + 8], r14
jne 0x14007c899
mov r15, qword [rsi + 0x10]
shr r15, 1
jmp 0x14007c89c
mov r15, rdi
lea rcx, [r15 + 1]
lea r13, [rcx + rcx]
cmp al, 2
jne 0x14007c8ba
mov rdx, r15
mov rcx, r14
call fcn.140006090
mov edi, eax
jmp 0x14007c4a5
mov r8, qword [0x140114480]
cmp r13, r8
jbe 0x14007c8ed
cmp r13, qword [rsi + 0x18]
jbe 0x14007c8ed
lea r8, [0x1400e346c]
lea rdx, [0x1400fff00]
lea rcx, [0x14011b1d0]
call fcn.140040760
mov edi, eax
jmp 0x14007c4a5
cmp rcx, 2
jae 0x14007c909
xor r8d, r8d
mov rcx, rsi
lea edx, [r8 + 4]
call fcn.1400b1bb0
mov eax, edi
jmp 0x14007c4a5
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x14007c926
mov rcx, qword [rsi]
and al, 0x3d
mov byte [rsi + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov r8, qword [0x140114480]
mov r9, qword [rsi + 0x18]
and byte [rsi + 0x21], 0x82
cmp r13, r9
jbe 0x14007ca9a
movzx r10d, byte [rsi + 0x20]
movzx eax, r10b
cmp r10b, dil
jbe 0x14007c956
cmp al, 2
je 0x14007c99a
mov rbx, qword [rbp - 0x41]
mov rax, qword [rbp - 0x41]
jmp 0x14007ca8e
mov ebx, 0x80
cmp r13, rbx
ja 0x14007c99a
cmp r13, 8
ja 0x14007c96d
mov ebx, 8
jmp 0x14007c979
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmp r13, rax
cmovbe rbx, rax
mov rcx, rbx
call fcn.1400aa420
test rax, rax
jne 0x14007c991
mov edi, r12d
mov eax, r12d
jmp 0x14007c4a5
mov byte [rsi + 0x20], dil
jmp 0x14007ca8e
cmp r13, 0x20
jae 0x14007c9aa
mov ebx, SafeArrayAllocDescriptor
jmp 0x14007ca54
mov ebx, 0x208
cmp r13, rbx
jb 0x14007ca54
cmp r13, 0x50000
jae 0x14007ca10
pxor xmm0, xmm0
cvtsi2sd xmm0, r13
test r13, r13
jns 0x14007c9d7
addsd xmm0, qword [0x140101ea8]
mulsd xmm0, qword [0x140101ee0]
movsd xmm1, qword [0x140101ed8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x14007ca06
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14007ca06
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rbx, xmm0
add rbx, rcx
jmp 0x14007ca54
cmp r13, 0x320000
jae 0x14007ca22
lea rbx, [r13 + 0x8000]
jmp 0x14007ca54
cmp r13, 0xc80000
jae 0x14007ca4d
movabs rax, 0x47ae147ae147ae15
mov rbx, r13
mul r13
sub rbx, rdx
shr rbx, 1
add rbx, rdx
shr rbx, 6
add rbx, r13
jmp 0x14007ca54
lea rbx, [r13 + 0x20000]
cmp rbx, r8
cmova rbx, r8
cmp r10b, 2
jne 0x14007ca75
test r9, r9
je 0x14007ca75
mov rcx, qword [rsi + 8]
movzx r13d, dil
call fcn.1400cb13c
jmp 0x14007ca78
xor r13b, r13b
test rbx, rbx
js 0x14007cac7
mov rcx, rbx
call fcn.1400ca9c4
test rax, rax
je 0x14007cac7
mov byte [rsi + 0x20], 2
and byte [rsi + 0x21], 0x7f
mov qword [rsi + 8], rax
mov qword [rsi + 0x18], rbx
mov rcx, qword [rsi + 8]
cmp rcx, r14
je 0x14007caaf
lea r8, [r15 + r15]
mov rdx, r14
call fcn.1400cb300
mov rax, qword [rsi + 8]
lea rcx, [r15 + r15]
mov word [rcx + rax], r12w
mov qword [rsi + 0x10], rcx
mov eax, edi
jmp 0x14007c4a5
test r13b, r13b
je 0x14007cadd
lea rax, [0x14011b184]
mov qword [rsi + 0x18], r12
mov qword [rsi + 8], rax
jmp 0x14007cae5
mov rax, qword [rsi + 8]
mov word [rax], r12w
lea r8, [0x1400e346c]
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
mov qword [rsi + 0x10], r12
call fcn.140040760
mov edi, eax
jmp 0x14007c4a5