Function at 0x1400edb60
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push rdi
push r12
push r13
sub rsp, 0x188
mov rax, qword [0x1401f22c8]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov rbp, rcx
mov rcx, qword [rcx + 0x78]
movsxd r13, r8d
mov rdi, rdx
call qword [sym.imp.USER32.dll_GetMenu]
test rax, rax
mov r12, rax
je 0x1400eec91
mov qword [rsp + 0x1c0], rbx
mov qword [rsp + 0x180], rsi
xor esi, esi
mov rcx, rax
mov ebx, esi
call qword [sym.imp.USER32.dll_GetMenuItemCount]
test eax, eax
jle case.default.0x1400edc15
mov edx, ebx
mov rcx, r12
call qword [sym.imp.USER32.dll_GetSubMenu]
cmp rdi, rax
je 0x1400edbe9
mov rcx, r12
add ebx, 1
call qword [sym.imp.USER32.dll_GetMenuItemCount]
cmp ebx, eax
jl 0x1400edbc4
jmp case.default.0x1400edc15
cmp r13d, 6
ja case.default.0x1400edc15
lea rdx, [0x140000000]
mov qword [rsp + 0x178], r14
mov qword [rsp + 0x170], r15
mov ecx, dword [rdx + r13*4 + 0xeecb0]
add rcx, rdx
jmp rcx
mov rcx, rdi
call fcn.1400c3830
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x438]
mov r8d, 0x9c4a
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1a48]
mov r8d, 0x9c4e
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
cmp dword [rbp + 0x284], 2
mov r9, qword [r9 + 0x1a58]
mov edx, 3
mov r8d, 0x9c4f
cmove edx, esi
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x440]
mov r8d, 0x9c4b
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0xb20]
mov r8d, 0x9c4c
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov rcx, rbp
call fcn.140149ff0
test eax, eax
je 0x1400ee00f
mov rcx, rbp
mov ebx, 1
call fcn.140149ff0
mov r12d, esi
test eax, eax
mov r13d, eax
jle 0x1400edd19
nop
nop
mov edx, r12d
mov rcx, rbp
call fcn.14014a0f0
test eax, eax
cmove ebx, esi
add r12d, 1
cmp r12d, r13d
jl 0x1400edd00
cmp byte [0x1401e2cc6], sil
je 0x1400ee00f
cmp byte [0x1401e2cc5], sil
je 0x1400ede4b
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa028
mov r9, qword [r9 + 0x540]
mov rcx, rdi
call fcn.1400ce1b0
movsx r11d, byte [0x1401e2d27]
test r11d, r11d
js 0x1400edd80
cmp r11d, 1
jle 0x1400edd7b
cmp r11d, 3
jne 0x1400edd80
lea ecx, [r11 + 0xd]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400edd80
jmp 0x1400edd9e
test r11d, r11d
je 0x1400edd9e
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa02b
mov r9, qword [r9 + 0x538]
mov rcx, rdi
call fcn.1400ce1b0
cmp dword [0x1401f37d4], 6
movsx eax, byte [0x1401e2d28]
mov ecx, esi
setb cl
test eax, eax
js 0x1400eddcf
cmp eax, 1
jle 0x1400eddd1
cmp eax, 3
jne 0x1400eddcf
lea ecx, [rax + 0xd]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1400eddf7
jmp 0x1400eddd5
mov eax, ecx
test eax, eax
je 0x1400eddf7
test ebx, ebx
je 0x1400eddf7
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa029
mov r9, qword [r9 + 0x530]
mov rcx, rdi
call fcn.1400ce1b0
cmp dword [0x1401f37d4], 6
movsx eax, byte [0x1401e2d29]
setb sil
test eax, eax
js 0x1400ede27
cmp eax, 1
jle 0x1400ede29
cmp eax, 3
jne 0x1400ede27
lea ecx, [rax + 0xd]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400ede2d
jmp 0x1400ede4b
mov eax, esi
test eax, eax
je 0x1400ede4b
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa02a
mov r9, qword [r9 + 0x528]
mov rcx, rdi
call fcn.1400ce1b0
movsx eax, byte [0x1401e2d24]
test eax, eax
js 0x1400ede92
cmp eax, 1
jle 0x1400ede70
cmp eax, 3
jne 0x1400ede92
lea ecx, [rax + 0xd]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400ede74
jmp 0x1400ede92
test eax, eax
je 0x1400ede92
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa033
mov r9, qword [r9 + 0x2f98]
mov rcx, rdi
call fcn.1400ce1b0
movsx eax, byte [0x1401e2d25]
test eax, eax
js 0x1400eded9
cmp eax, 1
jle 0x1400edeb7
cmp eax, 3
jne 0x1400eded9
lea ecx, [rax + 0xd]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400edebb
jmp 0x1400eded9
test eax, eax
je 0x1400eded9
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa030
mov r9, qword [r9 + 0x518]
mov rcx, rdi
call fcn.1400ce1b0
movsx eax, byte [0x1401e2d26]
test eax, eax
js 0x1400edf02
cmp eax, 1
jle 0x1400edefe
cmp eax, 3
jne 0x1400edf02
lea ecx, [rax + 0xd]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400edf02
jmp 0x1400edf20
test eax, eax
je 0x1400edf20
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa02f
mov r9, qword [r9 + 0x520]
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
cmp byte [0x1401e2d38], 0
je 0x1400edf57
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa06c
mov r9, qword [r9 + 0x2500]
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa069
mov r9, qword [r9 + 0x1cf8]
mov rcx, rdi
call fcn.1400ce1b0
cmp byte [0x1401e2cc7], 0
je 0x1400edf9c
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa02c
mov r9, qword [r9 + 0x1380]
mov rcx, rdi
call fcn.1400ce1b0
cmp byte [0x1401e2cc8], 0
je 0x1400edfc3
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa02e
mov r9, qword [r9 + 0x1390]
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0xa031
mov r9, qword [r9 + 0x13a0]
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1368]
mov r8d, 0xa068
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
mov r8d, 0x9c4d
mov r9, qword [r9 + 0x1630]
jmp 0x1400eec67
mov rcx, rbp
call fcn.140149ff0
mov r12d, esi
mov ebx, 1
test eax, eax
mov rcx, rdi
cmovne r12d, ebx
call fcn.1400c3830
cmp byte [0x1401e2cc9], sil
mov ebx, 3
je 0x1400ee078
mov r9, qword [0x1401e5d78]
mov edx, ebx
test r12d, r12d
mov r9, qword [r9 + 0x448]
mov r8d, 0x9c54
mov rcx, rdi
cmovne edx, esi
call fcn.1400ce1b0
cmp byte [0x1401e2cca], sil
je 0x1400ee0a5
mov r9, qword [0x1401e5d78]
mov edx, ebx
test r12d, r12d
mov r9, qword [r9 + 0x450]
mov r8d, 0x9c55
mov rcx, rdi
cmovne edx, esi
call fcn.1400ce1b0
cmp byte [0x1401e2ccb], sil
je 0x1400ee0d9
mov rcx, rbp
call fcn.1400e7160
mov r9, qword [0x1401e5d78]
mov edx, ebx
mov r9, qword [r9 + 0x458]
test eax, eax
mov r8d, 0x9c56
cmovne edx, esi
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
cmp byte [0x1401e2cca], sil
je 0x1400ee10e
mov r9, qword [0x1401e5d78]
mov edx, ebx
test r12d, r12d
mov r9, qword [r9 + 0x30c8]
mov r8d, 0x9c9c
mov rcx, rdi
cmovne edx, esi
call fcn.1400ce1b0
movzx eax, byte [0x1401e2cc9]
test al, al
je 0x1400ee143
mov r9, qword [0x1401e5d78]
mov edx, ebx
test r12d, r12d
mov r9, qword [r9 + 0x30d8]
mov r8d, 0x9c9d
mov rcx, rdi
cmovne edx, esi
call fcn.1400ce1b0
mov al, byte [0x1401e2cc9]
cmp byte [0x1401e2cca], sil
jne 0x1400ee150
test al, al
je 0x1400ee158
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0x9c57
mov r9, qword [r9 + 0x460]
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x468]
mov r8d, 0x9c5d
mov rcx, rdi
call fcn.1400ce1b0
cmp byte [0x1401e2cca], sil
jne 0x1400ee1aa
cmp byte [0x1401e2cc9], sil
je 0x1400eec71
mov rcx, rdi
call fcn.1400c5300
mov rdx, qword [0x1401e5d78]
mov r8d, 0x272b
mov rdx, qword [rdx + 0x3168]
mov rcx, rdi
call fcn.1400c3860
cmp byte [0x1401e2cca], sil
mov rdi, rax
je 0x1400ee1fe
mov r9, qword [0x1401e5d78]
mov edx, ebx
test r12d, r12d
mov r9, qword [r9 + 0x3178]
mov r8d, 0x9c9e
mov rcx, rax
cmovne edx, esi
call fcn.1400ce1b0
cmp byte [0x1401e2cc9], sil
je 0x1400eec71
mov r9, qword [0x1401e5d78]
test r12d, r12d
mov r8d, 0x9c9f
mov r9, qword [r9 + 0x3188]
cmovne ebx, esi
mov edx, ebx
jmp 0x1400eec69
mov rcx, rdi
call fcn.1400c3830
mov r11, qword [rbp + 0xf8]
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x1d58]
neg r11
mov r8d, 0x9c63
sbb edx, edx
mov rcx, rdi
and edx, 8
call fcn.1400ce1b0
mov r11, qword [rbp + 0x130]
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x28f0]
neg r11
mov r8d, 0x9c77
sbb edx, edx
mov rcx, rdi
and edx, 8
call fcn.1400ce1b0
mov r11, qword [rbp + 0xb8]
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x1f60]
neg r11
mov r8d, 0x9c67
sbb edx, edx
mov rcx, rdi
and edx, 8
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r11d, dword [rbp + 0x458]
cmp r11d, dword [0x1401e2c68]
jge 0x1400ee2d1
mov ebx, esi
jmp 0x1400ee2e0
cmp r11d, dword [0x1401e2c6c]
mov ebx, esi
setge bl
add ebx, 1
cmp dword [rbp + 0x454], 1
mov r12d, 8
jne 0x1400ee2f9
cmp ebx, 2
jne 0x1400ee2f9
mov edx, r12d
jmp 0x1400ee2fb
mov edx, esi
mov r9, qword [0x1401e5d78]
bts edx, 9
mov r8d, 0x9c76
mov r9, qword [r9 + 0x26f0]
mov rcx, rdi
call fcn.1400ce1b0
cmp dword [rbp + 0x454], 1
jne 0x1400ee32e
cmp ebx, 1
jne 0x1400ee32e
mov edx, r12d
jmp 0x1400ee330
mov edx, esi
mov r9, qword [0x1401e5d78]
bts edx, 9
mov r8d, 0x9c75
mov r9, qword [r9 + 0x26e0]
mov rcx, rdi
call fcn.1400ce1b0
cmp dword [rbp + 0x454], 1
jne 0x1400ee362
test ebx, ebx
jne 0x1400ee362
mov edx, r12d
jmp 0x1400ee364
mov edx, esi
mov r9, qword [0x1401e5d78]
bts edx, 9
mov r8d, 0x9c74
mov r9, qword [r9 + 0x26d0]
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
mov edx, esi
cmp dword [rbp + 0x454], edx
mov r9, qword [r9 + 0x26c0]
mov r8d, 0x9c73
cmove edx, r12d
mov rcx, rdi
bts edx, 9
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov rdx, qword [0x1401e5d78]
mov r8d, 0x2723
mov rdx, qword [rdx + 0x10d0]
mov rcx, rdi
call fcn.1400c3860
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x10f0]
mov r8d, 0x9c6d
mov rcx, rax
mov rbx, rax
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x1100]
xor edx, edx
mov r8d, 0x9c6e
mov rcx, rbx
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1110]
mov r8d, 0x9c6f
mov rcx, rbx
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x10e0]
mov r8d, 0x9c6c
mov rcx, rbx
call fcn.1400ce1b0
mov rdx, qword [0x1401e5d78]
mov r8d, 0x271c
mov rdx, qword [rdx + 0x470]
mov rcx, rdi
call fcn.1400c3860
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x478]
mov r8d, 0x9c5e
mov rcx, rax
mov rbx, rax
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x480]
xor edx, edx
mov r8d, 0x9c5f
mov rcx, rbx
call fcn.1400ce1b0
mov rcx, rbx
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x488]
mov r8d, 0x9c60
mov rcx, rbx
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov rdx, rdi
mov rcx, rbp
call fcn.1400eb090
mov rdx, qword [0x1401e5d78]
mov r8d, 0x2728
mov rdx, qword [rdx + 0x1fb0]
mov rcx, rdi
call fcn.1400c3860
cmp byte [0x1401f35a0], sil
mov r15, rax
je 0x1400ee576
mov rax, qword [rbp + 0x5a8]
mov ebx, 3
test rax, rax
je 0x1400ee526
cmp qword [rax + 0x30], rsi
je 0x1400ee526
mov edx, esi
jmp 0x1400ee528
mov edx, ebx
mov r9, qword [0x1401e5d78]
mov r8d, 0x9c68
mov rcx, r15
mov r9, qword [r9 + 0x1fc0]
call fcn.1400ce1b0
mov r11, qword [rbp + 0x5a8]
test r11, r11
je 0x1400ee558
cmp qword [r11 + 0x28], rsi
je 0x1400ee558
mov ebx, esi
mov r9, qword [0x1401e5d78]
mov r8d, 0x9c69
mov edx, ebx
mov r9, qword [r9 + 0x1fd0]
mov rcx, r15
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0x9c71
mov r9, qword [r9 + 0x2640]
mov rcx, r15
call fcn.1400ce1b0
cmp byte [0x1401f35a0], sil
je 0x1400ee65a
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0x9c78
mov r9, qword [r9 + 0x2a68]
mov rcx, r15
call fcn.1400ce1b0
cmp byte [0x1401f35a0], sil
je 0x1400ee65a
lea rcx, [rsp + 0x40]
call fcn.1401617b0
mov r14, qword [rbp + 0x5a0]
mov r13d, 0xb3b0
test r14, r14
je 0x1400ee650
mov rcx, r15
call fcn.1400c5300
mov ebx, 1
cmp r13d, 0xb798
je 0x1400ee64a
mov rax, qword [rbp + 0x5a8]
mov r12d, esi
test rax, rax
je 0x1400ee614
cmp r14, rax
cmove r12d, ebx
mov rdx, qword [r14 + 0x18]
lea rcx, [rsp + 0x40]
call fcn.1401649c0
mov r9, qword [rsp + 0x48]
neg r12d
sbb edx, edx
movsxd r8, r13d
mov rcx, r15
and edx, 8
bts edx, 9
call fcn.1400ce1b0
mov r14, qword [r14 + 0x30]
add r13d, ebx
test r14, r14
jne 0x1400ee5f5
mov r12d, 8
lea rcx, [rsp + 0x40]
call fcn.140001150
cmp byte [0x1401f3770], sil
je 0x1400ee66e
cmp byte [rbp + 0x230], sil
je 0x1400ee684
jmp 0x1400ee677
cmp byte [rbp + 0x230], sil
jne 0x1400ee684
xor edx, edx
xor ecx, ecx
call fcn.1400caed0
test eax, eax
je 0x1400ee6a2
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0x9c72
mov r9, qword [r9 + 0x2680]
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r8d, 0x9c64
mov r9, qword [r9 + 0x13b0]
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov rdx, qword [0x1401e5d78]
mov r8d, 0x2729
mov rdx, qword [rdx + 0x2358]
mov rcx, rdi
call fcn.1400c3860
mov r9, qword [0x1401e5d78]
mov edx, esi
cmp dword [rbp + 0x3b8], edx
mov r9, qword [r9 + 0x2368]
mov r8d, 0x9c6a
cmove edx, r12d
mov rcx, rax
mov rbx, rax
bts edx, 9
call fcn.1400ce1b0
cmp dword [rbp + 0x3b8], 1
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x2378]
mov edx, esi
mov r8d, 0x9c6b
cmove edx, r12d
mov rcx, rbx
bts edx, 9
call fcn.1400ce1b0
cmp dword [rbp + 0x3b8], 2
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x2388]
cmove esi, r12d
mov r8d, 0x9c70
bts esi, 9
mov rcx, rbx
mov edx, esi
jmp 0x1400eec6c
mov rcx, rdi
call fcn.1400c3830
movzx r11d, byte [rbp + 0x220]
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x490]
neg r11b
mov r8d, 0x9c7c
sbb edx, edx
mov rcx, rdi
and edx, 8
call fcn.1400ce1b0
movzx eax, byte [rbp + 0x221]
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x498]
neg al
movzx eax, byte [rbp + 0x223]
sbb edx, edx
mov r8d, 0x9c7d
and edx, 8
neg al
sbb ecx, ecx
and ecx, 3
or edx, ecx
mov rcx, rdi
call fcn.1400ce1b0
movzx r11d, byte [rbp + 0x222]
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x4a0]
neg r11b
mov r8d, 0x9c7e
sbb edx, edx
mov rcx, rdi
and edx, 8
call fcn.1400ce1b0
movzx r11d, byte [rbp + 0x224]
movzx eax, byte [rbp + 0x223]
mov r9, qword [0x1401e5d78]
neg r11b
mov r8d, 0x9c82
mov r9, qword [r9 + 0x1120]
sbb edx, edx
and edx, 8
neg al
sbb ecx, ecx
and ecx, 3
or edx, ecx
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
movzx r11d, byte [rbp + 0x223]
mov r9, qword [0x1401e5d78]
mov r9, qword [r9 + 0x4a8]
neg r11b
mov r8d, 0x9c7f
sbb edx, edx
mov rcx, rdi
and edx, 8
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x2ba8]
mov r8d, 0x9c85
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1da8]
mov r8d, 0x9c83
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1db8]
mov r8d, 0x9c84
mov rcx, rdi
call fcn.1400ce1b0
cmp qword [0x1401f3760], rsi
je 0x1400eec71
lea rcx, [rsp + 0x40]
call fcn.1401617b0
mov rcx, qword [rbp + 0x108]
mov rsi, qword [0x1401f3760]
call fcn.1400b9350
test rax, rax
mov r12, rax
jne 0x1400ee91a
mov rcx, qword [0x1401f3760]
call fcn.1400b9090
mov r12, rax
mov rcx, rdi
mov r14d, 0xafc8
call fcn.1400c5300
test rsi, rsi
je 0x1400ee9c8
mov ebx, 1
mov r13d, 0xb3b0
mov r15d, 0x208
cmp r14d, r13d
je 0x1400ee9c8
cmp rsi, r12
mov ebp, 0x200
cmove ebp, r15d
cmp dword [0x1401f3494], 0
je 0x1400ee97b
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetMenuItemCount]
test eax, eax
jle 0x1400ee97b
cdq
idiv dword [0x1401f3494]
test edx, edx
jne 0x1400ee97b
or ebp, 0x20
mov rcx, rsi
call fcn.1400b8f90
lea rcx, [rsp + 0x40]
mov rdx, rax
call fcn.1401649c0
movzx r11d, byte [rsi + 0x31]
movzx eax, byte [rsi + 0x30]
mov r9, qword [rsp + 0x48]
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], r11d
movsxd r8, r14d
mov edx, ebp
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.1400cdee0
mov rsi, qword [rsi + 0x18]
add r14d, ebx
test rsi, rsi
jne 0x1400ee942
lea rcx, [rsp + 0x40]
call fcn.140001150
jmp 0x1400eec71
mov rcx, rdi
call fcn.1400c3830
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1468]
mov r8d, 0x9c9a
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1478]
mov r8d, 0x9c9b
mov rcx, rdi
call fcn.1400ce1b0
cmp qword [0x1401f33a0], rsi
je 0x1400eec71
lea rcx, [rsp + 0x40]
call fcn.1401617b0
mov rbp, qword [0x1401f33a0]
mov rcx, rdi
mov r13d, 0xabe0
call fcn.1400c5300
test rbp, rbp
je 0x1400eeacb
mov ebx, 1
mov r14d, 0xafc8
lea r15d, [rbx + 0x1f]
nop
cmp r13d, r14d
je 0x1400eeacb
mov rdx, qword [rbp]
lea rcx, [rsp + 0x40]
call fcn.1401649c0
cmp dword [0x1401f3494], esi
mov r12d, esi
je 0x1400eea98
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetMenuItemCount]
test eax, eax
jle 0x1400eea98
cdq
idiv dword [0x1401f3494]
test edx, edx
cmove r12d, r15d
movzx ecx, byte [rbp + 0x40]
movzx eax, byte [rbp + 0x41]
mov r9, qword [rsp + 0x48]
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov rcx, rdi
movsxd r8, r13d
mov edx, r12d
call fcn.1400cdee0
mov rbp, qword [rbp + 0x28]
add r13d, ebx
test rbp, rbp
jne 0x1400eea60
lea rcx, [rsp + 0x40]
call fcn.140001150
jmp 0x1400eec71
mov rcx, rdi
call fcn.1400c3830
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x4c0]
mov r8d, 0x9c88
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
mov edx, 3
cmp dword [rbp + 0x284], edx
mov r9, qword [r9 + 0x4c8]
mov r8d, 0x9c89
cmove edx, esi
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x16a8]
mov r8d, 0x9c8c
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
mov r8d, 0x9c8a
mov r9, qword [r9 + 0x4d0]
jmp 0x1400eec67
mov rcx, rdi
call fcn.1400c3830
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x4d8]
mov r8d, 0x9c90
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0xeb8]
mov r8d, 0x9c94
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1d08]
mov r8d, 0x9c96
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x1190]
mov r8d, 0x9c95
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x4e0]
mov r8d, 0x9c91
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x4e8]
mov r8d, 0x9c92
mov rcx, rdi
call fcn.1400ce1b0
mov r9, qword [0x1401e5d78]
xor edx, edx
mov r9, qword [r9 + 0x2f78]
mov r8d, 0x9c97
mov rcx, rdi
call fcn.1400ce1b0
mov rcx, rdi
call fcn.1400c5300
mov r9, qword [0x1401e5d78]
mov r8d, 0x9c93
mov r9, qword [r9 + 0x4f0]
xor edx, edx
mov rcx, rdi
call fcn.1400ce1b0
mov r14, qword [rsp + 0x178]
mov r15, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x180]
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1401931f0
add rsp, 0x188
pop r13
pop r12
pop rdi
pop rbp
ret