Function at 0x42eb60
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
sub rsp, 0x2d8
mov rax, qword [0x00507af8]
xor rax, rsp
mov qword [rsp + 0x280], rax
mov qword [r11 - 8], rbx
mov qword [r11 - 0x10], rbp
mov qword [r11 - 0x20], rdi
mov qword [r11 - 0x28], r12
mov qword [r11 - 0x38], r14
xor edi, edi
mov ebx, r8d
mov qword [r11 - 0x40], r15
mov r15d, 1
neg ebx
test r9d, r9d
mov r12d, edx
mov r14d, r15d
mov dword [rsp + 0x6c], r15d
mov dword [rsp + 0x64], edx
mov rbp, rcx
mov qword [rsp + 0x70], rcx
mov dword [rsp + 0x4c], ebx
mov dword [rsp + 0x60], edi
je 0x42ebd5
mov edx, dword [rsp + 0x300]
mov rcx, qword [rcx + 0x30]
call fcn.0046cfd0
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x2c0], rsi
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rcx, qword [rbp + 0x10]
lea rax, [rsp + 0x30]
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.0046aaf0
test rax, rax
mov rsi, rax
jne 0x42ec1a
mov eax, r15d
jmp 0x42fed8
movzx eax, word [rsp + 0x30]
cmp ax, 6
je 0x42ec12
cmp ax, 9
mov qword [rsp + 0x2a8], r13
jne 0x42ecd6
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov rbp, rdi
cmp rsi, rax
mov rbx, rdi
cmove rax, rdi
cmp rsi, rcx
cmove rcx, rdi
test rax, rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rcx
je 0x42ec7a
mov rcx, rax
call qword [sym.imp.USER32.dll_GetParent]
mov rcx, qword [rsp + 0x40]
mov rbp, rax
mov rax, qword [rsp + 0x38]
test rcx, rcx
je 0x42ec92
call qword [sym.imp.USER32.dll_GetParent]
mov rcx, qword [rsp + 0x40]
mov rbx, rax
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x42eca3
cmp rbp, rsi
cmovne rax, rdi
mov qword [rsp + 0x38], rax
test rcx, rcx
je 0x42ecb2
cmp rbx, rsi
je 0x42ecba
mov qword [rsp + 0x40], rdi
mov ebx, edi
mov dword [rsp + 0x4c], edi
jmp 0x42ecbe
mov ebx, dword [rsp + 0x4c]
mov rbp, qword [rsp + 0x70]
test rax, rax
mov word [rsp + 0x30], di
cmove r12d, edi
mov dword [rsp + 0x64], r12d
jmp 0x42ed3c
cmp ax, 7
je 0x42ecee
cmp ax, 8
je 0x42ecee
cmp ax, r14w
je 0x42ecee
cmp ax, 2
jne 0x42ed3c
xor edx, edx
lea r8, [rsp + 0x48]
xor r9d, r9d
lea ecx, [rdx + 0x68]
mov r13d, edi
mov dword [rsp + 0x60], edi
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
je 0x42ed3c
mov r15d, dword [rsp + 0x48]
cmp r15d, r14d
mov dword [rsp + 0x6c], r15d
je 0x42ed3c
xor r9d, r9d
mov r15, r14
xor r8d, r8d
lea ecx, [r9 + 0x69]
mov edx, r15d
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
cmovne r13d, r15d
mov dword [rsp + 0x60], r13d
test r12d, r12d
jle 0x42ed56
mov r15d, r12d
imul r15d, r12d
add dword [0x0050b1f8], r15d
mov dword [rsp + 0x68], r15d
jmp 0x42ed69
mov r15d, r12d
imul r15d, r12d
sub dword [0x0050b1f8], r15d
mov dword [rsp + 0x68], r15d
test ebx, ebx
jle 0x42ed82
imul ebx, dword [rsp + 0x4c]
add dword [0x0050b1f4], ebx
mov dword [rsp + 0x5c], ebx
mov ebx, dword [rsp + 0x4c]
jmp 0x42ed91
mov eax, ebx
imul eax, ebx
sub dword [0x0050b1f4], eax
mov dword [rsp + 0x5c], eax
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x42edab
mov dword [0x0050b1f8], edi
jmp 0x42edf4
mov r9d, dword [0x0050b1f4]
mov ecx, dword [0x0050b1f8]
mov eax, r9d
cdq
mov r8d, eax
mov eax, ecx
xor r8d, edx
sub r8d, edx
cdq
xor eax, edx
sub eax, edx
add eax, eax
cmp eax, r8d
cmovl ecx, edi
mov eax, ecx
mov dword [0x0050b1f8], ecx
cdq
mov ecx, eax
lea eax, [r8 + r8]
xor ecx, edx
sub ecx, edx
cmp eax, ecx
cmovl r9d, edi
mov dword [0x0050b1f4], r9d
lea rdx, [rsp + 0x80]
mov r8d, 0x100
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetClassNameW]
test eax, eax
je 0x42ee8b
lea rdx, str.MozillaWindowClass
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x42ee7c
lea rdx, str.NS_AE_WindowClass
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x42ee7c
mov rcx, qword [rbp + 0x10]
lea r8, str.HwndWrapper
lea rdx, [rsp + 0x80]
call fcn.0046a020
test eax, eax
jne 0x42ee7c
cmp word [rsp + 0x30], r14w
je 0x42ee93
lea rdx, str.Chrome_WidgetWin_0
lea rcx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
jmp 0x42ee8b
mov rcx, qword [0x0050cad0]
call fcn.0046bc00
mov r14d, edi
cmp word [rsp + 0x30], 1
jne 0x42ee9b
mov ecx, edi
mov dword [rsp + 0x58], edi
jmp 0x42eeaf
mov ecx, edi
mov eax, r12d
cdq
xor eax, edx
sub eax, edx
cmp eax, 9
setg cl
mov dword [rsp + 0x58], ecx
mov r10d, dword [0x0050b1f0]
mov r11d, edi
mov eax, ebx
cdq
mov r12d, 0x64
xor eax, edx
mov ebp, r12d
sub eax, edx
cmp eax, 9
mov eax, 0x640
setg r11b
test ecx, ecx
cmovne ebp, eax
test r11d, r11d
mov dword [rsp + 0x48], r11d
je 0x42eef0
mov r8d, dword [0x0050b1f4]
mov r13d, eax
jmp 0x42ef20
test r10d, r10d
mov r13d, r12d
jle 0x42ef19
mov r8d, dword [0x0050b1f4]
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xc8
cmovg r8d, edi
mov dword [0x0050b1f4], r8d
jmp 0x42ef20
mov r8d, dword [0x0050b1f4]
test ecx, ecx
mov r9d, dword [0x0050b1ec]
jne 0x42ef4f
test r9d, r9d
jle 0x42ef4f
mov ecx, dword [0x0050b1f8]
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xc8
cmovg ecx, edi
mov dword [0x0050b1f8], ecx
mov ecx, dword [rsp + 0x58]
test r11d, r11d
je 0x42ef6d
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
cmp eax, r13d
jle 0x42ef6d
mov dword [0x0050b1f0], 5
jmp 0x42ef7d
test r10d, r10d
jle 0x42ef7d
sub r10d, 1
mov dword [0x0050b1f0], r10d
test ecx, ecx
je 0x42ef9c
mov eax, dword [0x0050b1f8]
cdq
xor eax, edx
sub eax, edx
cmp eax, ebp
jle 0x42ef9c
mov dword [0x0050b1ec], 5
jmp 0x42efac
test r9d, r9d
jle 0x42efac
sub r9d, 1
mov dword [0x0050b1ec], r9d
movsxd r12, dword [rsp + 0x48]
mov r15d, dword [rsp + 0x58]
movsxd rax, r14d
mov r14, qword [rsp + 0x70]
mov qword [rsp + 0x78], rax
lea r9, [0x00400000]
mov r10, r12
mov r11d, 3
mov eax, dword [0x0050b1f8]
cdq
xor eax, edx
sub eax, edx
cmp eax, ebp
jg 0x42eff3
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
cmp eax, r13d
jle 0x42fac2
movsx rax, word [rsp + 0x30]
cmp eax, 0xd
ja case.0x42f00d.4
mov ecx, dword [r9 + rax*4 + 0x2ff28]
add rcx, r9
jmp rcx
cmp r8d, r13d
jle 0x42f05d
mov eax, r8d
mov r9d, 0xffffffff
mov ecx, 0x800
cdq
mov dword [rsp + 0x20], edi
idiv r13d
test r10, r10
mov ebx, eax
mov eax, 0xfffffff0
cmovne r9d, eax
xor r8d, r8d
xor edx, edx
imul r9d, ebx
call fcn.0046bb50
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
jmp 0x42f0ae
mov eax, r13d
neg eax
cmp r8d, eax
jge 0x42f0ae
mov eax, r8d
mov r9d, 0xffffffff
mov ecx, 0x800
cdq
mov dword [rsp + 0x20], edi
idiv r13d
test r10, r10
mov ebx, eax
mov eax, 0xfffffff0
cmovne r9d, eax
xor r8d, r8d
xor edx, edx
imul r9d, ebx
call fcn.0046bb50
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
cmp dword [0x0050b1f8], ebp
jle 0x42f0e1
mov r9d, 0x78
xor r8d, r8d
xor edx, edx
mov ecx, 0x1000
mov dword [rsp + 0x20], edi
call fcn.0046bb50
sub dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
jmp case.0x42f00d.4
mov eax, ebp
neg eax
cmp dword [0x0050b1f8], eax
jge case.0x42f00d.4
mov r9d, 0xffffff88
xor r8d, r8d
xor edx, edx
mov ecx, 0x1000
mov dword [rsp + 0x20], edi
call fcn.0046bb50
add dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
jmp case.0x42f00d.4
cmp dword [0x0050b1f8], ebp
jle 0x42f15a
lea rcx, [0x0050b280]
mov r9d, 0x27
mov r8d, 0x100
mov rdx, rsi
mov qword [rsp + 0x20], 0x14d0001
call fcn.004533b0
sub dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
mov r10, r12
jmp 0x42f19a
mov eax, ebp
neg eax
cmp dword [0x0050b1f8], eax
jge 0x42f19a
lea rcx, [0x0050b280]
mov r9d, 0x25
mov r8d, 0x100
mov rdx, rsi
mov qword [rsp + 0x20], 0x14b0001
call fcn.004533b0
add dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
mov r10, r12
cmp r8d, r13d
jle 0x42f1e9
mov rcx, qword [r14 + 0x10]
mov eax, r8d
mov r8d, 0xffffffff
cdq
lea r9, [rsp + 0x50]
idiv r13d
test r10, r10
mov rdx, rsi
mov ebx, eax
mov eax, 0xfffffff0
cmovne r8d, eax
imul r8d, ebx
call fcn.00469fa0
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
mov rcx, qword [r14 + 0x10]
mov eax, r8d
mov r8d, 0xffffffff
cdq
lea r9, [rsp + 0x50]
idiv r13d
test r10, r10
mov rdx, rsi
mov ebx, eax
mov eax, 0xfffffff0
cmovne r8d, eax
imul r8d, ebx
call fcn.00469fa0
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
cmp dword [0x0050b1f8], ebp
jle 0x42f28a
mov rax, qword [rsp + 0x38]
mov ebx, 1
test r15d, r15d
mov r9, rbx
lea rcx, [0x0050b280]
mov r8d, 0x114
mov rdx, rsi
cmovne r9, r11
mov qword [rsp + 0x20], rax
call fcn.004533b0
sub dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
lea r11d, [rbx + 2]
jmp 0x42f2de
mov eax, ebp
neg eax
cmp dword [0x0050b1f8], eax
jge 0x42f2d9
mov eax, r15d
lea rcx, [0x0050b280]
mov r8d, 0x114
neg eax
mov rax, qword [rsp + 0x38]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.004533b0
add dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
mov ebx, 1
lea r11d, [rbx + 2]
jmp 0x42f2de
mov ebx, 1
cmp r8d, r13d
jle 0x42f322
mov rax, qword [rsp + 0x40]
mov r9, rbx
test r12d, r12d
lea rcx, [0x0050b280]
mov r8d, 0x115
mov rdx, rsi
cmovne r9, r11
mov qword [rsp + 0x20], rax
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
sub r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
mov eax, r12d
lea rcx, [0x0050b280]
mov r8d, 0x115
neg eax
mov rax, qword [rsp + 0x40]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
add r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
cmp dword [0x0050b1f8], ebp
jle 0x42f3ba
mov rax, qword [rsp + 0x38]
mov ebx, 1
test r15d, r15d
mov r9, rbx
lea rcx, [0x0050b280]
mov r8d, 0x114
mov rdx, rsi
cmovne r9, r11
mov qword [rsp + 0x20], rax
call fcn.00453210
sub dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
lea r11d, [rbx + 2]
jmp 0x42f40e
mov eax, ebp
neg eax
cmp dword [0x0050b1f8], eax
jge 0x42f409
mov eax, r15d
lea rcx, [0x0050b280]
mov r8d, 0x114
neg eax
mov rax, qword [rsp + 0x38]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.00453210
add dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
mov ebx, 1
lea r11d, [rbx + 2]
jmp 0x42f40e
mov ebx, 1
cmp r8d, r13d
jle 0x42f452
mov rax, qword [rsp + 0x40]
mov r9, rbx
test r12d, r12d
lea rcx, [0x0050b280]
mov r8d, 0x115
mov rdx, rsi
cmovne r9, r11
mov qword [rsp + 0x20], rax
call fcn.00453210
mov r8d, dword [0x0050b1f4]
sub r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
mov eax, r12d
lea rcx, [0x0050b280]
mov r8d, 0x115
neg eax
mov rax, qword [rsp + 0x40]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.00453210
mov r8d, dword [0x0050b1f4]
add r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.USER32.dll_GetParent]
mov ecx, dword [0x0050b1f8]
cmp ecx, ebp
mov rdx, rax
jle 0x42f4f1
mov eax, 3
mov ebx, 1
test r15d, r15d
mov r9, rbx
lea rcx, [0x0050b280]
mov r8d, 0x114
cmovne r9, rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x20], rax
call fcn.004533b0
sub dword [0x0050b1f8], ebp
jmp 0x42f533
mov eax, ebp
neg eax
cmp ecx, eax
jge 0x42f52e
mov eax, r15d
lea rcx, [0x0050b280]
mov r8d, 0x114
neg eax
mov rax, qword [rsp + 0x38]
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.004533b0
add dword [0x0050b1f8], ebp
mov ebx, 1
jmp 0x42f533
mov ebx, 1
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.USER32.dll_GetParent]
mov r8d, dword [0x0050b1f4]
cmp r8d, r13d
mov rsi, rax
jle 0x42f591
mov eax, 3
mov r9, rbx
test r12d, r12d
cmovne r9, rax
mov rax, qword [rsp + 0x40]
lea rcx, [0x0050b280]
mov r8d, 0x115
mov rdx, rsi
mov qword [rsp + 0x20], rax
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
sub r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
mov eax, r12d
lea rcx, [0x0050b280]
mov r8d, 0x115
neg eax
mov rax, qword [rsp + 0x40]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
add r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.USER32.dll_GetParent]
mov ecx, dword [0x0050b1f8]
cmp ecx, ebp
mov rdx, rax
jle 0x42f630
mov eax, 3
mov ebx, 1
test r15d, r15d
mov r9, rbx
lea rcx, [0x0050b280]
mov r8d, 0x114
cmovne r9, rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x20], rax
call fcn.00453210
sub dword [0x0050b1f8], ebp
jmp 0x42f672
mov eax, ebp
neg eax
cmp ecx, eax
jge 0x42f66d
mov eax, r15d
lea rcx, [0x0050b280]
mov r8d, 0x114
neg eax
mov rax, qword [rsp + 0x38]
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.00453210
add dword [0x0050b1f8], ebp
mov ebx, 1
jmp 0x42f672
mov ebx, 1
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.USER32.dll_GetParent]
mov r8d, dword [0x0050b1f4]
cmp r8d, r13d
mov rsi, rax
jle 0x42f6d0
mov eax, 3
mov r9, rbx
test r12d, r12d
cmovne r9, rax
mov rax, qword [rsp + 0x40]
lea rcx, [0x0050b280]
mov r8d, 0x115
mov rdx, rsi
mov qword [rsp + 0x20], rax
call fcn.00453210
mov r8d, dword [0x0050b1f4]
sub r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
mov eax, r12d
lea rcx, [0x0050b280]
mov r8d, 0x115
neg eax
mov rax, qword [rsp + 0x40]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.00453210
mov r8d, dword [0x0050b1f4]
add r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
cmp dword [0x0050b1f8], ebp
jle 0x42f75a
lea rcx, [0x0050b280]
mov r9d, 0x27
mov r8d, 0x100
mov rdx, rsi
mov qword [rsp + 0x20], 0x14d0001
call fcn.004533b0
sub dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
jmp 0x42f797
mov eax, ebp
neg eax
cmp dword [0x0050b1f8], eax
jge 0x42f797
lea rcx, [0x0050b280]
mov r9d, 0x25
mov r8d, 0x100
mov rdx, rsi
mov qword [rsp + 0x20], 0x14b0001
call fcn.004533b0
add dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
cmp r8d, r13d
jle 0x42f7d6
lea rcx, [0x0050b280]
mov r9d, 0x28
mov r8d, 0x100
mov rdx, rsi
mov qword [rsp + 0x20], 0x1500001
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
sub r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
lea rcx, [0x0050b280]
mov r9d, 0x26
mov r8d, 0x100
mov rdx, rsi
mov qword [rsp + 0x20], 0x1480001
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
add r8d, r13d
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
cmp dword [0x0050b1f8], ebp
jle 0x42f864
mov rax, qword [rsp + 0x38]
mov r9d, 1
test r15d, r15d
lea rcx, [0x0050b280]
mov r8d, 0x114
mov rdx, rsi
cmovne r9, r11
mov qword [rsp + 0x20], rax
call fcn.004533b0
sub dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
mov r10, r12
jmp 0x42f8ab
mov eax, ebp
neg eax
cmp dword [0x0050b1f8], eax
jge 0x42f8ab
mov eax, r15d
lea rcx, [0x0050b280]
mov r8d, 0x114
neg eax
mov rax, qword [rsp + 0x38]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.004533b0
add dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
mov r10, r12
cmp r8d, r13d
jle 0x42f8fa
mov rcx, qword [r14 + 0x10]
mov eax, r8d
mov r8d, 0xffffffff
cdq
lea r9, [rsp + 0x50]
idiv r13d
test r10, r10
mov rdx, rsi
mov ebx, eax
mov eax, 0xfffffff0
cmovne r8d, eax
imul r8d, ebx
call fcn.00469fa0
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
mov rcx, qword [r14 + 0x10]
mov eax, r8d
mov r8d, 0xffffffff
cdq
lea r9, [rsp + 0x50]
idiv r13d
test r10, r10
mov rdx, rsi
mov ebx, eax
mov eax, 0xfffffff0
cmovne r8d, eax
imul r8d, ebx
call fcn.00469fa0
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.USER32.dll_GetParent]
cmp dword [0x0050b1f8], ebp
mov rdx, rax
jle 0x42f99e
mov eax, 3
mov r9d, 1
test r15d, r15d
cmovne r9, rax
mov rax, qword [rsp + 0x38]
lea rcx, [0x0050b280]
mov r8d, 0x114
mov qword [rsp + 0x20], rax
call fcn.00453210
sub dword [0x0050b1f8], ebp
jmp 0x42f9d8
mov eax, ebp
neg eax
cmp dword [0x0050b1f8], eax
jge 0x42f9d8
mov eax, r15d
lea rcx, [0x0050b280]
mov r8d, 0x114
neg eax
mov rax, qword [rsp + 0x38]
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.00453210
add dword [0x0050b1f8], ebp
mov r8d, dword [0x0050b1f4]
cmp r8d, r13d
jle 0x42fa2b
mov rcx, qword [r14 + 0x10]
mov eax, r8d
mov r8d, 0xffffffff
cdq
lea r9, [rsp + 0x50]
idiv r13d
test r12d, r12d
mov rdx, rsi
mov ebx, eax
mov eax, 0xfffffff0
cmovne r8d, eax
imul r8d, ebx
call fcn.00469fe0
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
jmp case.0x42f00d.4
mov eax, r13d
neg eax
cmp r8d, eax
jge case.0x42f00d.4
mov rcx, qword [r14 + 0x10]
mov eax, r8d
mov r8d, 0xffffffff
cdq
lea r9, [rsp + 0x50]
idiv r13d
test r12d, r12d
mov rdx, rsi
mov ebx, eax
mov eax, 0xfffffff0
cmovne r8d, eax
imul r8d, ebx
call fcn.00469fe0
mov r8d, dword [0x0050b1f4]
imul ebx, r13d
sub r8d, ebx
mov dword [0x0050b1f4], r8d
cmp qword [rsp + 0x78], rdi
mov r10, r12
mov r11d, 3
lea r9, [0x00400000]
je 0x42efd3
mov rcx, qword [0x0050cad0]
mov edx, 0x102
call fcn.0046bda0
mov r8d, dword [0x0050b1f4]
mov r10, r12
mov r11d, 3
lea r9, [0x00400000]
jmp 0x42efd3
cmp word [rsp + 0x30], 1
mov r15d, dword [rsp + 0x68]
mov r12d, 0x64
jne 0x42fc87
xor bp, bp
cmp r8d, r12d
mov dword [0x0050b1f8], edi
jle 0x42fb0d
lea ecx, [r8 - 0x65]
mov eax, 0x51eb851f
mul ecx
shr edx, 5
add edx, 1
mov eax, edx
mov ebp, edx
imul eax, eax, 0xffffff9c
add r8d, eax
imul bp, bp, 0xff88
mov dword [0x0050b1f4], r8d
cmp r8d, 0xffffff9c
jge 0x42fb40
mov ecx, 0xffffff9b
mov eax, 0x51eb851f
sub ecx, r8d
mul ecx
shr edx, 5
add edx, 1
mov eax, edx
mov ecx, edx
imul eax, eax, 0x64
imul cx, cx, 0x78
add r8d, eax
mov dword [0x0050b1f4], r8d
add bp, cx
test bp, bp
je 0x42fc17
mov eax, dword [0x0050b1e8]
test al, 1
jne 0x42fb6d
or eax, 1
mov ecx, 0x17
mov dword [0x0050b1e8], eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x0050b1e4], eax
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov ecx, 8
mov ebx, edi
test ax, ax
cmovne ebx, ecx
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x42fb98
or ebx, 4
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x42fbb7
cmp dword [0x0050b1e4], edi
setne dil
add edi, 1
or ebx, edi
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x42fbd6
mov eax, dword [0x0050b1e4]
neg eax
sbb ecx, ecx
add ecx, 2
or ebx, ecx
movsx eax, word [rsp + 0x54]
movsx r9d, bp
mov r8d, 0x20a
shl eax, 0x10
shl r9d, 0x10
mov rdx, rsi
movsxd rcx, eax
movsx rax, word [rsp + 0x50]
or rcx, rax
mov eax, ebx
mov qword [rsp + 0x20], rcx
lea rcx, [0x0050b280]
or r9, rax
call fcn.004533b0
mov edi, dword [0x0050b1f8]
mov eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, r12d
jle 0x42fe8f
cmp edi, r12d
jle 0x42fc3c
sub edi, r12d
mov eax, 0x27
mov dword [0x0050b1f8], edi
jmp 0x42fc4a
add edi, r12d
mov eax, 0x25
mov dword [0x0050b1f8], edi
lea rcx, [0x0050b280]
mov r9d, eax
mov r8d, 0x100
mov rdx, rsi
mov qword [rsp + 0x20], 0x14d0001
call fcn.004533b0
mov edi, dword [0x0050b1f8]
mov eax, edi
cdq
xor eax, edx
sub eax, edx
cmp eax, r12d
jg 0x42fc27
mov edi, 1
jmp 0x42fe94
cmp word [rsp + 0x30], 4
jne 0x42fce8
mov ebx, dword [rsp + 0x4c]
test ebx, ebx
je 0x42fcb9
test ebx, ebx
jns 0x42fca3
mov ebx, dword [rsp + 0x5c]
neg ebx
jmp 0x42fca7
mov ebx, dword [rsp + 0x5c]
mov rcx, qword [r14 + 0x10]
xor r9d, r9d
mov r8d, ebx
mov rdx, rsi
call fcn.00469ea0
mov eax, dword [rsp + 0x64]
test eax, eax
je 0x42fe88
test eax, eax
jns 0x42fccc
neg r15d
mov rcx, qword [r14 + 0x10]
mov edi, 1
mov r8d, r15d
mov r9d, edi
mov rdx, rsi
call fcn.00469ea0
jmp 0x42fe94
mov eax, dword [rsp + 0x64]
mov r13d, dword [rsp + 0x48]
mov ebp, edi
cdq
mov ebx, r12d
lea rcx, [rsp + 0x80]
xor eax, edx
sub eax, edx
lea rdx, str.Chrome_WidgetWin_0
cmp eax, 9
mov eax, 0x640
setg bpl
test ebp, ebp
cmovne ebx, eax
test r13d, r13d
cmovne r12d, eax
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
mov ecx, dword [0x0050b1f8]
mov r8d, dword [0x0050b1f4]
test eax, eax
cmove ebp, edi
mov edi, 1
lea r14d, [rdi + 2]
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, ebx
jg 0x42fd5f
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
cmp eax, r12d
jle 0x42fe94
cmp ecx, ebx
jle 0x42fda2
mov rax, qword [rsp + 0x38]
mov r9, rdi
test ebp, ebp
lea rcx, [0x0050b280]
mov r8d, 0x114
mov rdx, rsi
cmovne r9, r14
mov qword [rsp + 0x20], rax
call fcn.004533b0
mov ecx, dword [0x0050b1f8]
mov r8d, dword [0x0050b1f4]
sub ecx, ebx
mov dword [0x0050b1f8], ecx
jmp 0x42fde9
mov eax, ebx
neg eax
cmp ecx, eax
jge 0x42fde9
mov eax, ebp
lea rcx, [0x0050b280]
mov r8d, 0x114
neg eax
mov rax, qword [rsp + 0x38]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.004533b0
mov ecx, dword [0x0050b1f8]
mov r8d, dword [0x0050b1f4]
add ecx, ebx
mov dword [0x0050b1f8], ecx
cmp r8d, r12d
jle 0x42fe33
mov rax, qword [rsp + 0x40]
mov r9, rdi
test r13d, r13d
lea rcx, [0x0050b280]
mov r8d, 0x115
mov rdx, rsi
cmovne r9, r14
mov qword [rsp + 0x20], rax
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
mov ecx, dword [0x0050b1f8]
sub r8d, r12d
mov dword [0x0050b1f4], r8d
jmp 0x42fd43
mov eax, r12d
neg eax
cmp r8d, eax
jge 0x42fd43
mov eax, r13d
lea rcx, [0x0050b280]
mov r8d, 0x115
neg eax
mov rax, qword [rsp + 0x40]
mov rdx, rsi
sbb r9, r9
mov qword [rsp + 0x20], rax
and r9d, 2
call fcn.004533b0
mov r8d, dword [0x0050b1f4]
mov ecx, dword [0x0050b1f8]
add r8d, r12d
mov dword [0x0050b1f4], r8d
jmp 0x42fd43
mov edi, 1
jmp 0x42fe94
mov edi, 1
cmp dword [rsp + 0x60], 0
mov r13, qword [rsp + 0x2a8]
je 0x42fed6
xor edx, edx
lea r8, [rsp + 0x48]
xor r9d, r9d
lea ecx, [rdx + 0x68]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
test eax, eax
je 0x42fed6
mov eax, dword [rsp + 0x6c]
cmp dword [rsp + 0x48], eax
je 0x42fed6
xor r9d, r9d
xor r8d, r8d
mov edx, eax
lea ecx, [r9 + 0x69]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
mov eax, edi
mov r15, qword [rsp + 0x298]
mov r14, qword [rsp + 0x2a0]
mov r12, qword [rsp + 0x2b0]
mov rdi, qword [rsp + 0x2b8]
mov rsi, qword [rsp + 0x2c0]
mov rbp, qword [rsp + 0x2c8]
mov rbx, qword [rsp + 0x2d0]
mov rcx, qword [rsp + 0x280]
xor rcx, rsp
call fcn.004902e0
add rsp, 0x2d8
ret