Function at 0x140015b30
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3c8]
sub rsp, 0x4a0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x140078040]
xor rax, rsp
mov qword [rbp + 0x300], rax
mov dword [rbp + 0x150], 0x50
mov dword [rbp + 0x154], 0x40
lea rax, [0x140015a80]
mov qword [rbp + 0x158], rax
xor r15d, r15d
mov qword [rbp + 0x160], r15
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rbp + 0x168], rax
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x170], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x180], xmm1
lea rax, str.ImGui_Example
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x198], r15
lea rcx, [rbp + 0x150]
call qword [sym.imp.USER32.dll_RegisterClassExW]
mov qword [rsp + 0x58], r15
mov rax, qword [rbp + 0x168]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x38], 0x320
mov dword [rsp + 0x30], 0x500
mov dword [rsp + 0x28], 0x64
mov dword [rsp + 0x20], 0x64
mov r9d, 0x80000000
lea r8, str.ImGui_DirectX11_Example
mov rdx, qword [rbp + 0x190]
mov ecx, 0x80008
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rsi, rax
mov qword [rbp + 0x60], rax
mov r12d, 1
mov r9d, r12d
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
mov qword [rbp + 0xb4], r15
mov qword [rbp + 0xc8], 2
mov qword [rbp + 0xe0], 2
mov qword [rbp + 0xa0], r15
mov dword [rbp + 0xb0], 0x1c
mov dword [rbp + 0xa8], 0x3c
mov dword [rbp + 0xac], r12d
mov dword [rbp + 0xc4], 0x20
mov qword [rbp + 0xd0], rsi
mov qword [rbp + 0xbc], r12
mov qword [rbp + 0xd8], r12
mov dword [rbp + 0x1a0], 0xb000
mov dword [rbp + 0x1a4], 0xa000
lea rbx, [0x140106f78]
mov qword [rsp + 0x58], rbx
lea rax, [rbp + 0x78]
mov qword [rsp + 0x50], rax
lea rdi, [0x140106f70]
mov qword [rsp + 0x48], rdi
lea r14, [0x140106f68]
mov qword [rsp + 0x40], r14
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], 2
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, r12d
xor ecx, ecx
call qword [sym.imp.d3d11.dll_D3D11CreateDeviceAndSwapChain]
cmp eax, 0x887a0004
jne 0x140015dbb
mov qword [rsp + 0x58], rbx
lea rax, [rbp + 0x78]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], r14
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], 2
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 5
xor ecx, ecx
call qword [sym.imp.d3d11.dll_D3D11CreateDeviceAndSwapChain]
test eax, eax
je 0x140015e3b
call fcn.140015a00
mov rdx, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x190]
call qword [sym.imp.USER32.dll_UnregisterClassW]
mov eax, r12d
mov rcx, qword [rbp + 0x300]
xor rcx, rsp
call fcn.140063160
lea r11, [rsp + 0x4a0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rcx, qword [0x140106f68]
mov rax, qword [rcx]
lea r9, [rbp + 0x80]
lea r8, [0x14006b320]
xor edx, edx
call qword [rax + 0x48]
mov rcx, qword [0x140106f70]
mov rax, qword [rcx]
lea r9, [0x140106f60]
xor r8d, r8d
mov rdx, qword [rbp + 0x80]
call qword [rax + 0x48]
mov rcx, qword [rbp + 0x80]
mov rax, qword [rcx]
call qword [rax + 0x10]
call fcn.140013ad0
mov edx, 0xa
mov rcx, rsi
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, rsi
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rbx, qword [0x140106f08]
mov ecx, 0x5610
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r9, rax
mov r8, qword [0x140106f08]
test r8, r8
je 0x140015f20
mov r10d, dword [r8 + 0x3fe8]
movsx rax, word [r8 + 0x5480]
lea rdx, [r8 + 0x5484]
lea rdx, [rdx + rax*8]
cmp dword [rdx], r10d
je 0x140015f15
lea ecx, [rax + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x5480], cx
movsx rax, cx
lea rdx, [r8 + 0x5484]
lea rdx, [rdx + rax*8]
mov dword [rdx], r10d
mov dword [rdx + 4], r15d
inc word [rdx + 4]
inc dword [r8 + 0x5478]
mov qword [rbp - 0x58], r9
lea rax, [rsp + 0x60]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x78], r9
test r9, r9
je 0x140015f42
xor edx, edx
mov rcx, r9
call fcn.14001ee00
jmp 0x140015f45
mov rax, r15
mov qword [0x140106f08], rax
call fcn.14001fea0
test rbx, rbx
je 0x140015f5f
mov qword [0x140106f08], rbx
jmp 0x140015f66
mov rbx, qword [0x140106f08]
or dword [rbx + 8], 3
xorps xmm2, xmm2
movups xmmword [rbp + 0xa0], xmm2
movups xmmword [rbp + 0xb0], xmm2
movups xmmword [rbp + 0xe0], xmm2
movups xmmword [rbp + 0xf0], xmm2
mov byte [rbp + 0xac], 1
mov dword [rbp + 0xb8], 2
mov dword [rbp + 0xbc], r12d
mov dword [rbp + 0xe4], 0x7f7fffff
movss xmm9, dword [0x14006d738]
mov dword [rbp + 0xf0], 0x3f800000
mov dword [rbp + 0xf4], 0x3f800000
mov edi, 0xffff
mov word [rbp + 0xf8], di
movaps xmm0, xmmword [rbp + 0xa0]
movaps xmmword [rbp + 0x210], xmm0
movaps xmm1, xmmword [rbp + 0xb0]
movaps xmmword [rbp + 0x220], xmm1
movaps xmmword [rbp + 0x230], xmm2
movaps xmmword [rbp + 0x240], xmm2
movaps xmm0, xmmword [rbp + 0xe0]
movaps xmmword [rbp + 0x250], xmm0
movaps xmm1, xmmword [rbp + 0xf0]
movaps xmmword [rbp + 0x260], xmm1
movaps xmmword [rbp + 0x270], xmm2
movaps xmmword [rbp + 0x280], xmm2
movaps xmmword [rbp + 0x290], xmm2
lea rax, [0x1400e6d90]
mov qword [rbp + 0x210], rax
mov dword [rbp + 0x218], 0x1f84c
mov dword [rbp + 0x224], 0x41600000
lea rdx, [rbp + 0x210]
mov rcx, qword [rbx + 0x38]
call fcn.140045700
xorps xmm2, xmm2
movups xmmword [rbp + 0xa0], xmm2
movups xmmword [rbp + 0xb0], xmm2
movups xmmword [rbp + 0xc0], xmm2
movups xmmword [rbp + 0xe0], xmm2
movups xmmword [rbp + 0xf0], xmm2
mov byte [rbp + 0xac], 1
mov dword [rbp + 0xb8], 2
mov dword [rbp + 0xbc], r12d
mov dword [rbp + 0xe4], 0x7f7fffff
mov dword [rbp + 0xf0], 0x3f800000
mov dword [rbp + 0xf4], 0x3f800000
mov word [rbp + 0xf8], di
mov byte [rbp + 0xe8], 1
mov byte [rbp + 0xc0], 1
movaps xmm0, xmmword [rbp + 0xa0]
movaps xmmword [rbp + 0x210], xmm0
movaps xmm1, xmmword [rbp + 0xb0]
movaps xmmword [rbp + 0x220], xmm1
movaps xmm0, xmmword [rbp + 0xc0]
movaps xmmword [rbp + 0x230], xmm0
movaps xmmword [rbp + 0x240], xmm2
movaps xmm0, xmmword [rbp + 0xe0]
movaps xmmword [rbp + 0x250], xmm0
movaps xmm1, xmmword [rbp + 0xf0]
movaps xmmword [rbp + 0x260], xmm1
movaps xmmword [rbp + 0x270], xmm2
movaps xmmword [rbp + 0x280], xmm2
movaps xmmword [rbp + 0x290], xmm2
lea rax, [0x140078250]
mov qword [rbp + 0x210], rax
mov dword [rbp + 0x218], 0x6eb40
mov dword [rbp + 0x224], 0x41700000
lea rax, [0x14006b260]
mov qword [rbp + 0x248], rax
lea rdx, [rbp + 0x210]
mov rcx, qword [rbx + 0x38]
call fcn.140045700
mov r14, rax
mov qword [rbp - 0x58], rax
xor ecx, ecx
call fcn.140041220
mov rcx, rsi
call fcn.14004b4e0
call fcn.14004b310
mov qword [rbp + 0x220], r15
mov dword [rbp + 0x240], r15d
mov dword [rbp + 0x2c8], r15d
lea rax, [0x1400780d0]
mov qword [rbp + 0x2e0], rax
mov qword [rbp + 0x2d0], rax
lea rax, [0x140078242]
mov qword [rbp + 0x2e8], rax
mov qword [rbp + 0x2d8], rax
lea rcx, [rbp + 0x210]
call fcn.140002300
mov rbx, rax
mov qword [rbp + 0x90], r15
mov eax, dword [0x140106ef8]
mov dword [rbp + 0x1c0], eax
mov ecx, dword [0x140106ee4]
mov dword [rbp + 0x1c4], ecx
mov dword [rbp + 0x1c8], r12d
mov dword [rbp + 0x1cc], r12d
mov dword [rbp + 0x1d0], 0x1c
mov qword [rbp + 0x1d4], 1
mov dword [rbp + 0x1dc], r15d
mov qword [rbp + 0x1e0], 8
mov dword [rbp + 0x1e8], r15d
mov dword [rbp + 0x144], r15d
mov qword [rbp + 0x138], rbx
lea eax, [rax*4]
mov dword [rbp + 0x140], eax
mov qword [rbp + 0x88], r15
mov rcx, qword [0x140106f70]
mov rax, qword [rcx]
lea r9, [rbp + 0x88]
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x1c0]
call qword [rax + 0x28]
test eax, eax
js 0x1400162d4
mov qword [rbp + 0x200], r15
mov eax, dword [rbp + 0x1d0]
mov dword [rbp + 0x1f0], eax
mov qword [rbp + 0x1f4], 4
mov dword [rbp + 0x1fc], r12d
mov rcx, qword [0x140106f70]
mov rax, qword [rcx]
lea r9, [rbp + 0x90]
lea r8, [rbp + 0x1f0]
mov rdx, qword [rbp + 0x88]
call qword [rax + 0x38]
mov rcx, qword [rbp + 0x88]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov bl, 1
mov byte [rsp + 0x60], bl
xor r13b, r13b
lea rsi, [0x140107000]
movdqa xmm11, xmmword [0x14006dd20]
movdqa xmm10, xmmword [0x14006de00]
movss xmm13, dword [0x14006d700]
movss xmm14, dword [0x14006d748]
movss xmm8, dword [0x14006d814]
movss xmm12, dword [0x14006d7cc]
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14001635f
mov ecx, r12d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14001635f
cmp byte [0x140106ef4], 0
je 0x14001635f
call fcn.1400156d0
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x140016333
mov ecx, 0x70
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x140016377
test bl, bl
sete bl
mov byte [rsp + 0x60], bl
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xa0]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x1400163f0
nop word [rax + rax]
lea rcx, [rbp + 0xa0]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0xa0]
call qword [sym.imp.USER32.dll_DispatchMessageW]
movzx r13d, r13b
cmp dword [rbp + 0xa8], 0x12
cmove r13d, r12d
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xa0]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
jne 0x1400163a0
test r13b, r13b
jne 0x140017666
cmp byte [0x140106f50], 0
je 0x140016422
mov rcx, qword [0x140106f68]
mov rax, qword [rcx]
mov r8d, r12d
xor edx, edx
call qword [rax + 0x40]
cmp eax, 0x87a0001
jne 0x140016422
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140016323
mov byte [0x140106f50], 0
mov r8d, dword [0x140106f58]
test r8d, r8d
je 0x1400164df
mov r9d, dword [0x140106f5c]
test r9d, r9d
je 0x1400164df
mov rcx, qword [0x140106f60]
test rcx, rcx
je 0x140016470
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x140106f60], r15
mov r8d, dword [0x140106f58]
mov r9d, dword [0x140106f5c]
mov rcx, qword [0x140106f68]
mov rax, qword [rcx]
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
xor edx, edx
call qword [rax + 0x68]
mov dword [0x140106f5c], r15d
mov dword [0x140106f58], r15d
mov rcx, qword [0x140106f68]
mov rax, qword [rcx]
lea r9, [rbp + 0x130]
lea r8, [0x14006b320]
xor edx, edx
call qword [rax + 0x48]
mov rcx, qword [0x140106f70]
mov rax, qword [rcx]
lea r9, [0x140106f60]
xor r8d, r8d
mov rdx, qword [rbp + 0x130]
call qword [rax + 0x48]
mov rcx, qword [rbp + 0x130]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rax, qword [0x140106f08]
test rax, rax
je 0x1400164f4
mov rcx, qword [rax + 0xa0]
jmp 0x1400164f7
mov rcx, r15
cmp qword [rcx + 0x48], 0
jne 0x140016503
call fcn.14004acb0
call fcn.14004bef0
call fcn.140022980
test bl, bl
je 0x1400175d4
mov rax, qword [0x140106f08]
or dword [rax + 0x4ac0], 2
mov dword [rax + 0x4ae0], 0x44098000
mov dword [rax + 0x4ae4], 0x43af0000
mov dword [rax + 0x4ac8], r12d
call fcn.1400014c0
xor edx, edx
mov r8d, 0x22
lea rcx, [0x140066210]
call fcn.140028490
mov dword [rbp + 0x80], 0x43480000
mov dword [rbp + 0x84], 0x41a00000
mov dword [rbp - 0x48], 0x43480000
mov dword [rbp - 0x44], 0x439b0000
mov rcx, qword [0x140106f08]
mov rax, qword [rcx + 0x40a0]
mov byte [rax + 0xcc], 1
mov rbx, qword [rcx + 0x40a0]
movsxd r8, dword [rbx + 0x108]
mov rax, qword [rbx + 0x110]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, [0x140066214]
call fcn.14001c030
mov edi, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x40f8], eax
jne 0x1400165d6
lea r8, [0x140066214]
mov edx, 0xc
mov ecx, eax
call fcn.1400379a0
mov dword [rsp + 0x20], r15d
lea r8, [rbp - 0x48]
mov edx, edi
lea rcx, [0x140066214]
call fcn.140025110
mov rbx, qword [0x140106f08]
mov rax, qword [rbx + 0x40a0]
movss xmm7, dword [rax + 0x11c]
subss xmm7, dword [rax + 0x2c]
addss xmm7, dword [rax + 0x9c]
movss xmm6, dword [rax + 0x118]
subss xmm6, dword [rax + 0x28]
addss xmm6, dword [rax + 0x98]
movsd xmm0, qword [rbx + 0x3fe0]
cvtpd2ps xmm0, xmm0
addss xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, xmm13
addss xmm0, xmm13
movd xmm1, dword [0x140106ee4]
cvtdq2ps xmm1, xmm1
movaps xmm2, xmm1
mulss xmm2, xmm14
movd xmm3, dword [0x140106ef8]
cvtdq2ps xmm3, xmm3
movaps xmm4, xmm3
mulss xmm4, xmm14
movss dword [rbp - 0x50], xmm4
movss dword [rbp - 0x4c], xmm2
mov dword [rbp + 0x50], 0x3f4ccccd
mov dword [rbp + 0x54], 0x3f4ccccd
mov dword [rbp + 0x58], 0x3f800000
movss dword [rbp + 0x5c], xmm0
subss xmm2, xmm1
mulss xmm2, xmm13
movaps xmm0, xmm7
subss xmm0, xmm2
mov rax, qword [rbx + 0x40a0]
mov byte [rax + 0xcc], 1
mov rax, qword [rbx + 0x40a0]
movss xmm2, dword [rax + 0x2c]
subss xmm2, dword [rax + 0x9c]
addss xmm2, xmm0
subss xmm4, xmm3
mulss xmm4, xmm13
movaps xmm1, xmm6
subss xmm1, xmm4
movss xmm0, dword [rax + 0x28]
subss xmm0, dword [rax + 0x98]
addss xmm1, xmm0
movss dword [rax + 0x118], xmm1
movss dword [rax + 0x11c], xmm2
mov byte [rax + 0x159], 1
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
mov dword [rbp - 0x40], 0x3f800000
mov dword [rbp - 0x3c], 0x3f800000
mov qword [rbp - 0x38], 0
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x50]
mov rcx, qword [rbp + 0x90]
call fcn.1400558f0
mov rcx, qword [0x140106f08]
mov rax, qword [rcx + 0x40a0]
mov byte [rax + 0xcc], 1
mov rax, qword [rcx + 0x40a0]
movss xmm0, dword [rax + 0x2c]
subss xmm0, dword [rax + 0x9c]
addss xmm7, xmm0
movss xmm1, dword [rax + 0x28]
subss xmm1, dword [rax + 0x98]
addss xmm1, xmm6
movss dword [rax + 0x118], xmm1
movss dword [rax + 0x11c], xmm7
mov byte [rax + 0x159], 1
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rsp + 0x68], xmm10
mov dword [rbp - 0x30], 0x3f800000
mov dword [rbp - 0x2c], 0x3f800000
mov qword [rbp - 0x28], 0
movd xmm1, dword [0x140106ee4]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [0x140106ef8]
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm1
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x30]
lea r8, [rbp - 0x28]
lea rdx, [rbp - 0x20]
mov rcx, qword [rbp + 0x90]
call fcn.1400558f0
mov dword [rbp - 0x18], 0
mov dword [rbp - 0x14], 0x41700000
lea rcx, [rbp - 0x18]
call fcn.140056520
mov rcx, r14
call fcn.14002b400
lea r9, [rbp + 0x80]
xor r8d, r8d
xor edx, edx
lea rcx, str.___Home
call fcn.14005f0a0
test al, al
je 0x140016854
mov dword [0x140106ee0], r15d
mov dword [rbp - 0x10], 0
mov dword [rbp - 0xc], 0x41700000
lea rcx, [rbp - 0x10]
call fcn.140056520
cmp dword [0x140106ee0], 2
sete dl
lea r9, [rbp + 0x80]
xor r8d, r8d
lea rcx, str.___Debug
call fcn.14005f0a0
test al, al
je 0x140016899
mov dword [0x140106ee0], 2
mov dword [rbp - 8], 0
mov dword [rbp - 4], 0x41700000
lea rcx, [rbp - 8]
call fcn.140056520
call fcn.14002b4b0
call fcn.140025390
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
mov dword [rbp], 0
mov dword [rbp + 4], 0x439b0000
mov rcx, qword [0x140106f08]
mov rax, qword [rcx + 0x40a0]
mov byte [rax + 0xcc], 1
mov rbx, qword [rcx + 0x40a0]
movsxd r8, dword [rbx + 0x108]
mov rax, qword [rbx + 0x110]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.MainContent
call fcn.14001c030
mov edi, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x40f8], eax
jne 0x140016931
lea r8, str.MainContent
mov edx, 0xc
mov ecx, eax
call fcn.1400379a0
mov dword [rsp + 0x20], r15d
lea r8, [rbp]
mov edx, edi
lea rcx, str.MainContent
call fcn.140025110
cmp dword [0x140106ee0], 0
jne 0x140016cb3
mov dword [rbp + 8], 0x43960000
mov dword [rbp + 0xc], 0x42dc0000
mov rcx, qword [0x140106f08]
mov rax, qword [rcx + 0x40a0]
mov byte [rax + 0xcc], 1
mov rbx, qword [rcx + 0x40a0]
movsxd r8, dword [rbx + 0x108]
mov rax, qword [rbx + 0x110]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.HomeMiniWindow1
call fcn.14001c030
mov edi, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x40f8], eax
jne 0x1400169c0
lea r8, str.HomeMiniWindow1
mov edx, 0xc
mov ecx, eax
call fcn.1400379a0
mov dword [rsp + 0x20], r15d
lea r8, [rbp + 8]
mov edx, edi
lea rcx, str.HomeMiniWindow1
call fcn.140025110
call fcn.140013520
mov dword [rbp + 0x10], 0
mov dword [rbp + 0x14], 0x40400000
lea rcx, [rbp + 0x10]
call fcn.140056520
mov dword [rbp + 0x78], 0x3f800000
mov dword [rbp + 0x1a0], 0x3dcccccd
lea rbx, str._.2f
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x78]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1a0]
lea r8, [0x1400780c0]
mov edx, 8
lea rcx, str.Multiplier_X
call fcn.1400583a0
mov dword [rbp + 0x1a0], 0x3f800000
mov dword [rbp + 0x78], 0x3dcccccd
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x78]
lea r8, [0x1400780c4]
mov edx, 8
lea rcx, str.Multiplier_Y
call fcn.1400583a0
call fcn.140025390
mov dword [rbp + 0x18], 0x43960000
mov dword [rbp + 0x1c], 0x432b0000
mov rcx, qword [0x140106f08]
mov rax, qword [rcx + 0x40a0]
mov byte [rax + 0xcc], 1
mov rbx, qword [rcx + 0x40a0]
movsxd r8, dword [rbx + 0x108]
mov rax, qword [rbx + 0x110]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.HomeMiniWindow2
call fcn.14001c030
mov edi, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x40f8], eax
jne 0x140016ae6
lea r8, str.HomeMiniWindow2
mov edx, 0xc
mov ecx, eax
call fcn.1400379a0
mov dword [rsp + 0x20], r15d
lea r8, [rbp + 0x18]
mov edx, edi
lea rcx, str.HomeMiniWindow2
call fcn.140025110
mov dword [rbp + 0x20], 0
mov dword [rbp + 0x24], 0x3f800000
lea rcx, [rbp + 0x20]
call fcn.140056520
call fcn.14002fe90
lea rdx, str.Attackers
lea rcx, [rsp + 0x68]
cmp dword [0x140106f54], 1
jne 0x140016b36
movups xmmword [rsp + 0x68], xmm10
jmp 0x140016b3c
movups xmmword [rsp + 0x68], xmm11
call fcn.1400538e0
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
cmp dword [0x140106f54], 1
sete dl
lea rcx, str.attackers
call fcn.140055d10
test al, al
je 0x140016b6e
mov dword [0x140106f54], r12d
call fcn.14002ffd0
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
lea rdx, [0x1400662bc]
lea rcx, [rsp + 0x68]
cmp dword [0x140106f54], 1
jne 0x140016b9c
movups xmmword [rsp + 0x68], xmm10
jmp 0x140016ba2
movups xmmword [rsp + 0x68], xmm11
call fcn.1400538e0
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
mov qword [rbp + 0x28], 0x41f00000
lea rcx, [rbp + 0x28]
call fcn.140056520
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
call fcn.14002fe90
lea rdx, str.Defenders
lea rcx, [rsp + 0x68]
cmp dword [0x140106f54], 2
jne 0x140016bf2
movups xmmword [rsp + 0x68], xmm10
jmp 0x140016bf8
movups xmmword [rsp + 0x68], xmm11
call fcn.1400538e0
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
cmp dword [0x140106f54], 2
sete dl
lea rcx, str.defenders
call fcn.140055d10
test al, al
je 0x140016c2d
mov dword [0x140106f54], 2
call fcn.14002ffd0
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
lea rdx, [0x1400662dc]
lea rcx, [rsp + 0x68]
cmp dword [0x140106f54], 2
jne 0x140016c5b
movups xmmword [rsp + 0x68], xmm10
jmp 0x140016c61
movups xmmword [rsp + 0x68], xmm11
call fcn.1400538e0
mov rax, qword [0x140106f08]
mov rdx, qword [rax + 0x40a0]
cmp byte [rdx + 0xcf], 0
jne 0x140016ca9
mov r8d, dword [rdx + 0x1cc]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1c0], 0
je 0x140016ca0
neg r8d
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm9
call fcn.1400566c0
call fcn.140015060
call fcn.140025390
mov edx, 8
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x1401070a0], eax
jle 0x140016cfc
lea rcx, [0x1401070a0]
call fcn.1400631ec
cmp dword [0x1401070a0], 0xffffffff
jne 0x140016cfc
lea rcx, [0x140064dc0]
call fcn.140063598
lea rcx, [0x1401070a0]
call fcn.140063180
cmp dword [0x140106ee0], 2
jne 0x1400175c5
mov qword [rbp + 0x30], 0
mov rcx, qword [0x140106f08]
mov rax, qword [rcx + 0x40a0]
mov byte [rax + 0xcc], 1
mov rbx, qword [rcx + 0x40a0]
movsxd r8, dword [rbx + 0x108]
mov rax, qword [rbx + 0x110]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.DebugView
call fcn.14001c030
mov edi, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x40f8], eax
jne 0x140016d6e
lea r8, str.DebugView
mov edx, 0xc
mov ecx, eax
call fcn.1400379a0
mov dword [rsp + 0x20], r15d
lea r8, [rbp + 0x30]
mov edx, edi
lea rcx, str.DebugView
call fcn.140025110
lea rcx, str.Custom_Recoil_Pattern
call fcn.140053870
call fcn.140015060
mov qword [rbp + 0x38], 0
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
lea rax, [rbp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, 0x80
mov r8, rsi
xor edx, edx
lea rcx, str.Operator_Name
call fcn.14005b4e0
mov rdi, r15
mov rcx, qword [0x140106ff0]
sub rcx, qword [0x140106fe8]
movabs r14, 0x6666666666666667
mov rax, r14
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x140017088
mov qword [rbp - 0x68], 0
mov rsi, r15
nop dword [rax]
mov rax, qword [0x140106f08]
mov rbx, qword [rax + 0x40a0]
mov edx, edi
mov rcx, rbx
call fcn.14002bc80
mov r14d, eax
add rbx, 0x108
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x140016e66
inc r8d
test ecx, ecx
je 0x140016e4f
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x140016e54
mov eax, 8
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
mov rcx, rbx
call fcn.140039340
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*4], r14d
inc dword [rbx]
mov rax, qword [0x140106f08]
mov r8, qword [rax + 0x40a0]
cmp byte [r8 + 0xcf], 0
jne 0x140016eb5
mov edx, dword [r8 + 0x1cc]
mov eax, edx
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [r8 + 0x1c0], 0
je 0x140016eac
neg edx
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm9
call fcn.1400566c0
lea edx, [rdi + 1]
lea rcx, str.Step__d
call fcn.140053870
mov dword [rbp + 0x1a0], 0x3f800000
mov dword [rbp + 0x78], 0x3dcccccd
mov r8, qword [0x140106fe8]
add r8, rsi
lea rbx, str._.2f
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x78]
mov edx, 8
lea rcx, str.RecoilX
call fcn.1400583a0
mov dword [rbp + 0x1a0], 0x3f800000
mov dword [rbp + 0x78], 0x3dcccccd
mov r8, qword [0x140106fe8]
add r8, 4
add r8, rsi
mov qword [rsp + 0x28], rbx
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x78]
mov edx, 8
lea rcx, str.RecoilY
call fcn.1400583a0
mov dword [rbp + 0x1a0], 0x64
mov dword [rbp + 0x78], r12d
mov r8, qword [0x140106fe8]
add r8, 8
add r8, rsi
lea rax, [0x14006cad4]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x78]
mov edx, 4
lea rcx, str.Duration__ms_
call fcn.1400583a0
xor r8d, r8d
lea rdx, [rbp - 0x68]
lea rcx, str.Remove_Step
call fcn.140054510
test al, al
jne 0x14001701e
mov rax, qword [0x140106f08]
mov rcx, qword [rax + 0x40a0]
mov eax, dword [rcx + 0x108]
cmp eax, 1
jg 0x140016fd8
lea rcx, str.Calling_PopID___too_many_times_
call fcn.14002f1b0
jmp 0x140016fe0
dec eax
mov dword [rcx + 0x108], eax
inc rdi
add rsi, 0x14
mov rcx, qword [0x140106ff0]
sub rcx, qword [0x140106fe8]
movabs r14, 0x6666666666666667
mov rax, r14
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdi, rdx
jb 0x140016e10
jmp 0x140017081
lea rcx, [rdi + rdi*4]
mov rax, qword [0x140106fe8]
lea rcx, [rax + rcx*4]
lea rdx, [rcx + 0x14]
mov r8, qword [0x140106ff0]
sub r8, rdx
call sub.VCRUNTIME140.dll_memmove
sub qword [0x140106ff0], 0x14
mov rax, qword [0x140106f08]
mov rcx, qword [rax + 0x40a0]
mov eax, dword [rcx + 0x108]
cmp eax, 1
jg 0x14001706f
lea rcx, str.Calling_PopID___too_many_times_
call fcn.14002f1b0
jmp 0x140017077
dec eax
mov dword [rcx + 0x108], eax
movabs r14, 0x6666666666666667
lea rsi, [0x140107000]
mov qword [rbp - 0x60], 0
xor r8d, r8d
lea rdx, [rbp - 0x60]
lea rcx, str.Add_Step
call fcn.140054510
test al, al
je 0x1400170f3
mov qword [rsp + 0x68], 0
mov dword [rsp + 0x70], r15d
mov byte [rsp + 0x74], 0
movss dword [rsp + 0x78], xmm12
mov rdx, qword [0x140106ff0]
cmp rdx, qword [0x140106ff8]
je 0x1400170e9
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rdx], xmm0
movss dword [rdx + 0x10], xmm12
add qword [0x140106ff0], 0x14
jmp 0x1400170f3
lea r8, [rsp + 0x68]
call fcn.14001a640
mov rax, qword [0x140106f08]
mov rdx, qword [rax + 0x40a0]
cmp byte [rdx + 0xcf], 0
jne 0x140017136
mov r8d, dword [rdx + 0x1cc]
mov eax, r8d
neg eax
sbb ecx, ecx
add ecx, 2
cmp qword [rdx + 0x1c0], 0
je 0x14001712d
neg r8d
sbb ecx, ecx
add ecx, 6
movaps xmm1, xmm9
call fcn.1400566c0
mov qword [rbp - 0x78], 0
xor r8d, r8d
lea rdx, [rbp - 0x78]
lea rcx, str.Apply_Custom_Config
call fcn.140054510
test al, al
je 0x140017342
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rsi + rbx], 0
jne 0x140017160
test rbx, rbx
je 0x140017342
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x140017942
cmp rbx, 0xf
ja 0x1400171c3
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], 0xf
mov r8, rbx
mov rdx, rsi
lea rcx, [rsp + 0x68]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rbx + 0x68], 0
jmp 0x140017265
mov rdi, rbx
or rdi, 0xf
cmp rdi, rax
jbe 0x1400171e2
mov rdi, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x140017213
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x1400171fd
mov rsi, r15
jmp 0x14001723a
cmp rcx, 0x1000
jb 0x140017232
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14001793c
mov rcx, rax
call fcn.140063264
test rax, rax
je 0x14001791b
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14001723a
call fcn.140063264
mov rsi, rax
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], rdi
mov r8, rbx
lea rdx, [0x140107000]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rbx], 0
lea rsi, [0x140107000]
lea r8, [rsp + 0x68]
lea rdx, [rbp + 0x68]
call fcn.140019620
mov rcx, qword [rax]
add rcx, 0x30
mov eax, dword [0x140106ee8]
mov dword [rbp + 0x40], eax
mov eax, dword [0x140106edc]
mov dword [rbp + 0x44], eax
mov eax, dword [0x140106ed4]
mov dword [rbp + 0x48], eax
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x1f0]
call fcn.1400199a0
mov rcx, qword [rax]
add rcx, 0x20
lea rax, [0x140106fe8]
cmp rcx, rax
je 0x1400172e7
mov r8, qword [0x140106ff0]
sub r8, qword [0x140106fe8]
mov rax, r14
imul r8
sar rdx, 3
mov r8, rdx
shr r8, 0x3f
add r8, rdx
mov rdx, qword [0x140106fe8]
call fcn.140019480
nop
mov rdx, qword [rbp - 0x80]
cmp rdx, 0xf
jbe 0x140017323
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001731e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001791b
call fcn.1400635b8
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rsi + r8], 0
jne 0x140017330
mov rdx, rsi
call fcn.140018d70
movaps xmm1, xmm8
xorps xmm0, xmm0
call fcn.14002fcd0
mov qword [rbp - 0x70], 0
xor r8d, r8d
lea rdx, [rbp - 0x70]
lea rcx, str.Save_to_File
call fcn.140054510
test al, al
je 0x1400175b5
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rsi + rax], 0
jne 0x140017380
test rax, rax
je 0x1400175b5
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], r15
mov qword [rbp + 0x1b8], r15
mov ecx, 0x20
call fcn.140063264
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1b0], 0x1a
mov qword [rbp + 0x1b8], 0x1f
movups xmm0, xmmword [str.custom_recoil_patterns.cpp]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x140066398]
movsd qword [rax + 0x10], xmm0
movzx ecx, word [0x1400663a0]
mov word [rax + 0x18], cx
mov byte [rax + 0x1a], 0
mov r14d, dword [0x140106ee8]
mov r15d, dword [0x140106edc]
mov r12d, dword [0x140106ed4]
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xor esi, esi
mov qword [rsp + 0x78], rsi
mov qword [rbp - 0x80], rsi
mov rbx, 0xffffffffffffffff
lea rcx, [0x140107000]
nop dword [rax]
inc rbx
cmp byte [rcx + rbx], sil
jne 0x140017430
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x140017936
cmp rbx, 0xf
ja 0x140017479
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], 0xf
mov r8, rbx
mov rdx, rcx
lea rcx, [rsp + 0x68]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rbx + 0x68], sil
jmp 0x14001750f
mov rdi, rbx
or rdi, 0xf
cmp rdi, rax
jbe 0x140017498
mov rdi, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x1400174c4
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
je 0x1400174eb
cmp rcx, 0x1000
jb 0x1400174e3
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140017930
mov rcx, rax
call fcn.140063264
test rax, rax
je 0x140017922
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x1400174eb
call fcn.140063264
mov rsi, rax
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], rdi
mov r8, rbx
lea rdx, [0x140107000]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rbx], 0
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r15d
mov r9d, r12d
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0x1a0]
call fcn.140014cd0
nop
mov rdx, qword [rbp - 0x80]
cmp rdx, 0xf
jbe 0x14001756b
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017565
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140017922
call fcn.1400635b8
nop
mov rdx, qword [rbp + 0x1b8]
cmp rdx, 0xf
jbe 0x1400175ac
inc rdx
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400175a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140017929
call fcn.1400635b8
mov r12d, 1
xor r15d, r15d
call fcn.140025390
mov r14, qword [rbp - 0x58]
lea rsi, [0x140107000]
call fcn.140025390
call fcn.14002ab30
movzx ebx, byte [rsp + 0x60]
call fcn.140024a00
xorps xmm0, xmm0
movups xmmword [rbp + 0x2f0], xmm0
mov rcx, qword [0x140106f78]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [0x140106f60]
mov edx, r12d
call qword [rax + 0x108]
mov rcx, qword [0x140106f78]
mov rax, qword [rcx]
lea r8, [rbp + 0x2f0]
mov rdx, qword [0x140106f60]
call qword [rax + 0x190]
mov rax, qword [0x140106f08]
mov rcx, qword [rax + 0x4bd0]
mov rax, qword [rcx]
add rax, 0x50
mov rcx, r15
cmp byte [rax], 0
cmovne rcx, rax
call fcn.14004a240
mov rcx, qword [0x140106f68]
mov rax, qword [rcx]
xor r8d, r8d
mov edx, r12d
call qword [rax + 0x40]
cmp eax, 0x87a0001
sete byte [0x140106f50]
jmp 0x140016323
mov rbx, qword [0x140106f08]
test rbx, rbx
je 0x14001767b
mov rdi, qword [rbx + 0xa0]
jmp 0x14001767e
mov rdi, r15
call fcn.14004b1f0
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x140017692
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400176a0
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1400176af
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rbx + 0x90], r15
mov qword [rbx + 0xa0], r15
and dword [rbx + 0xc], 0xfffffff7
mov r8, qword [0x140106f08]
test r8, r8
je 0x140017730
mov r9d, dword [r8 + 0x3fe8]
movsx rdx, word [r8 + 0x5480]
lea rcx, [r8 + 0x5484]
lea rcx, [rcx + rdx*8]
cmp dword [rcx], r9d
je 0x140017725
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x5480], cx
movsx rax, cx
lea rcx, [r8 + 0x5484]
lea rcx, [rcx + rax*8]
mov dword [rcx], r9d
mov dword [rcx + 4], 0
inc word [rcx + 6]
inc dword [r8 + 0x547c]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r8, qword [0x140106f08]
test r8, r8
je 0x14001774e
mov rdi, qword [r8 + 0x98]
jmp 0x140017751
mov rdi, r15
lea rbx, [r8 + 8]
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x14001776b
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r8, qword [0x140106f08]
mov qword [rbx + 0x80], r15
mov qword [rbx + 0x90], r15
and dword [rbx + 4], 0xfffffff8
test r8, r8
je 0x1400177e5
mov r9d, dword [r8 + 0x3fe8]
movsx rdx, word [r8 + 0x5480]
lea rcx, [rdx*8 + 0x5484]
add rcx, r8
cmp dword [rcx], r9d
je 0x1400177da
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x5480], cx
movsx rax, cx
lea rcx, [rax*8 + 0x5484]
add rcx, r8
mov dword [rcx], r9d
mov dword [rcx + 4], 0
inc word [rcx + 6]
inc dword [r8 + 0x547c]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, qword [0x140106f08]
mov qword [0x140106f08], rbx
call fcn.1400203e0
mov qword [0x140106f08], r15
test rbx, rbx
je 0x140017892
mov rcx, rbx
call fcn.1400395d0
mov r8, qword [0x140106f08]
test r8, r8
je 0x140017889
mov r9d, dword [r8 + 0x3fe8]
movsx r10, word [r8 + 0x5480]
lea rdx, [r8 + 0x5484]
lea rdx, [rdx + r10*8]
cmp dword [rdx], r9d
je 0x14001787e
lea ecx, [r10 + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x5480], cx
movsx rax, cx
lea rdx, [r8 + 0x5484]
lea rdx, [rdx + rax*8]
mov dword [rdx], r9d
mov dword [rdx + 4], 0
inc word [rdx + 6]
inc dword [r8 + 0x547c]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [0x140106f60]
test rcx, rcx
je 0x1400178ab
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x140106f60], r15
mov rcx, qword [0x140106f68]
test rcx, rcx
je 0x1400178c4
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x140106f68], r15
mov rcx, qword [0x140106f78]
test rcx, rcx
je 0x1400178dd
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x140106f78], r15
mov rcx, qword [0x140106f70]
test rcx, rcx
je 0x1400178f6
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x140106f70], r15
mov rcx, qword [rbp + 0x60]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rdx, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x190]
call qword [sym.imp.USER32.dll_UnregisterClassW]
xor eax, eax
jmp 0x140015ddb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140001940
int3
call fcn.1400019e0
nop
call fcn.140001940
int3
call fcn.1400019e0
int3