Function at 0x14006df40
Capabilities:
Capture screenshot
Check for time delay via gettickcount
Check for unmoving mouse cursor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x198]
sub rsp, 0x298
mov rax, qword [0x14036a3c8]
xor rax, rsp
mov qword [rbp + 0x180], rax
mov rsi, r9
mov rdi, r8
mov ebx, edx
mov r15, rcx
mov r12, qword [rbp + 0x200]
cmp qword [rcx + 0x88], 0
je case.0x14006faea.282
xor r13d, r13d
mov r14d, r13d
add rcx, 0x368
call fcn.1400691a0
test eax, eax
jle 0x14006e118
nop word [rax + rax]
mov byte [rsp + 0x78], r13b
mov edx, r14d
lea rcx, [r15 + 0x368]
call fcn.1400687d0
mov rcx, qword [rax]
mov r10, qword [rcx]
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x20], rcx
mov r9, rsi
mov r8, rdi
mov edx, ebx
mov rcx, rax
call r10
cmp byte [rsp + 0x78], r13b
jne 0x14006e002
inc r14d
lea rcx, [r15 + 0x368]
call fcn.1400691a0
cmp r14d, eax
jl 0x14006dfb0
jmp 0x14006e118
mov qword [r12], rax
cmp ebx, 0x202
ja 0x14006e0b2
je 0x14006e02b
mov eax, ebx
sub eax, 0x7b
je 0x14006e0c8
sub eax, 0x185
je 0x14006e02b
cmp eax, 1
jne 0x14006e071
movsx eax, si
mov dword [rsp + 0x68], eax
mov rax, rsi
shr rax, 0x10
cwde
mov dword [rsp + 0x6c], eax
mov rax, qword [rsp + 0x68]
mov qword [r15 + 0x160], rax
mov edx, eax
mov rcx, r15
call fcn.140073940
mov dword [r15 + 0x160], eax
mov edx, dword [r15 + 0x164]
mov rcx, r15
call fcn.140073940
mov dword [r15 + 0x164], eax
cmp ebx, 0x200
jne 0x140070c89
mov rax, qword [r15 + 0x160]
mov qword [rsp + 0x70], rax
mov rcx, qword [r15 + 0x128]
test rcx, rcx
je 0x14006e0f2
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rsp + 0x70]
lea rdx, [0x140073c20]
call qword [rax + 0x340]
jmp 0x14006e0f5
mov eax, ebx
sub eax, 0x203
je 0x14006e02b
cmp eax, 7
jne 0x140070c89
movsx eax, si
mov dword [rsp + 0x68], eax
mov rax, rsi
shr rax, 0x10
cwde
mov dword [rsp + 0x6c], eax
lea rdx, [rsp + 0x68]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
jmp 0x14006e03e
mov rax, r13
cmp byte [r15 + 0x331], r13b
jne 0x140070c89
test rax, rax
je 0x140070c89
cmp rax, qword [r15 + 0x138]
je 0x140070c89
movzx r8d, byte [r15 + 0x1b1]
test r8b, r8b
je 0x14006e160
mov eax, ebx
sub eax, 0x83
je 0x14006e150
sub eax, 2
je 0x14006e150
cmp eax, 1
jne 0x14006e160
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x14006e15b
test rdi, rdi
sete r13b
mov qword [r12], r13
mov al, 1
jmp 0x140070cad
lea eax, [rbx - 5]
jmp 0x14006e180
cmp ebx, 0x111
ja 0x14006faae
je 0x14006fa86
lea eax, [rbx - 5]
cmp eax, 0xfd
ja case.0x14006faea.282
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x70d14]
mov ecx, dword [rdx + rax*4 + 0x70cd0]
add rcx, rdx
jmp rcx
mov qword [rbp - 0x50], r13
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
mov word [rbp - 0x2c], r13w
movdqu xmmword [rbp - 0x28], xmm0
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rcx, qword [r15 + 0x138]
test rcx, rcx
je 0x14006e1f2
mov dword [rbp - 0x50], 0xa
mov qword [rbp - 0x48], rcx
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov rcx, qword [r15 + 0x140]
test rcx, rcx
je 0x14006e216
mov dword [rbp - 0x50], reloc.WLDAP32.dll_Ordinal_14
mov qword [rbp - 0x48], rcx
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
xor r9d, r9d
mov r8b, 1
xor edx, edx
mov rcx, r15
call fcn.140072880
mov rbx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetActiveWindow]
cmp rax, rbx
jne 0x14006e27f
mov edx, 4
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindow]
mov rbx, rax
mov edx, 0xfffffff0
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetWindowLongW]
bt eax, 0x1e
jae 0x14006e271
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetParent]
mov rbx, rax
test rbx, rbx
je 0x14006e27f
mov rcx, rbx
call qword [sym.imp.USER32.dll_SetFocus]
mov rcx, qword [r15 + 0xd0]
test rcx, rcx
je case.0x14006faea.282
call qword [sym.imp.USER32.dll_DestroyWindow]
mov qword [r15 + 0xd0], r13
jmp case.0x14006faea.282
mov qword [r12], 1
mov al, 1
jmp 0x140070cad
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
mov rcx, qword [r15 + 0x88]
xorps xmm0, xmm0
test eax, eax
je 0x14006e303
xor eax, eax
lea rdx, [rbp - 0x50]
mov qword [rbp - 0x10], rax
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x50], xmm0
call qword [sym.imp.USER32.dll_BeginPaint]
lea rdx, [rbp - 0x50]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_EndPaint]
mov al, 1
jmp 0x140070cad
cmp qword [r15 + 0x128], r13
jne 0x14006e344
xor eax, eax
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rax
lea rdx, [rbp - 0x50]
call qword [sym.imp.USER32.dll_BeginPaint]
mov r8d, 0xff000000
lea rdx, [rbp - 0x44]
mov rcx, qword [r15 + 0x90]
call fcn.140080b40
jmp 0x14006e2eb
movups xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x70]
call qword [sym.imp.USER32.dll_GetClientRect]
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
cmp byte [r15 + 0x1b1], r13b
je 0x14006e3be
mov byte [r15 + 0x1af], 1
movups xmm0, xmmword [r15 + 0x1c8]
movaps xmmword [rbp], xmm0
lea rcx, [r15 + 0x1c8]
call qword [sym.imp.USER32.dll_IsRectEmpty]
xorps xmm0, xmm0
test eax, eax
je 0x14006e396
mov rcx, qword [r15 + 0x88]
jmp 0x14006e2cb
mov eax, dword [rbp + 8]
mov r8, qword [rbp - 0x68]
cmp eax, r8d
cmovg eax, r8d
mov dword [rbp + 8], eax
mov ecx, dword [rbp + 0xc]
cmp ecx, dword [rbp - 0x64]
cmovg ecx, dword [rbp - 0x64]
mov dword [rbp + 0xc], ecx
movups xmmword [r15 + 0x1c8], xmm0
jmp 0x14006e3de
xor r8d, r8d
lea rdx, [rbp]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x140070c89
mov r8, qword [rbp - 0x68]
cmp byte [r15 + 0x1ae], r13b
je 0x14006e41a
xor r9d, r9d
xor r8d, r8d
mov dl, 1
mov rcx, r15
cmp byte [r15 + 0x1ad], r13b
je 0x14006e411
mov byte [r15 + 0x1ad], r13b
call fcn.140072cc0
mov byte [r15 + 0x1ad], 1
jmp 0x14006e416
call fcn.140072cc0
mov r8, qword [rbp - 0x68]
mov byte [r15 + 0x332], 1
cmp byte [r15 + 0x1ad], r13b
je 0x14006e6b3
mov byte [r15 + 0x1ad], r13b
lea rcx, [rbp - 0x70]
call qword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x14006e7ed
mov rcx, qword [r15 + 0x128]
call fcn.14007bd30
test al, al
je 0x14006e59d
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x60], xmm0
mov rcx, qword [r15 + 0x98]
test rcx, rcx
je 0x14006e477
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, qword [r15 + 0xa0]
test rcx, rcx
je 0x14006e489
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, qword [r15 + 0xa8]
test rcx, rcx
je 0x14006e49b
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, qword [r15 + 0xb8]
test rcx, rcx
je 0x14006e4ad
call qword [sym.imp.GDI32.dll_DeleteObject]
mov qword [r15 + 0x98], r13
mov qword [r15 + 0xa0], r13
mov qword [r15 + 0xa8], r13
mov qword [r15 + 0xb8], r13
cmp byte [r15 + 0x1b1], r13b
je 0x14006e536
mov edx, dword [r15 + 0x1b4]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov edi, dword [rbp - 0x60]
add edi, eax
mov edx, dword [r15 + 0x1b8]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov esi, dword [rbp - 0x5c]
add esi, eax
mov edx, dword [r15 + 0x1bc]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov r14d, dword [rbp - 0x58]
sub r14d, eax
mov edx, dword [r15 + 0x1c0]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov ebx, dword [rbp - 0x54]
sub ebx, eax
jmp 0x14006e543
mov ebx, dword [rbp - 0x54]
mov r14d, dword [rbp - 0x58]
mov esi, dword [rbp - 0x5c]
mov edi, dword [rbp - 0x60]
mov edx, edi
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x60], eax
mov edx, r14d
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x58], eax
mov edx, esi
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x5c], eax
mov edx, ebx
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x54], eax
mov rcx, qword [r15 + 0x128]
mov rax, qword [rcx]
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp + 0x20], xmm0
mov r8b, 1
lea rdx, [rbp + 0x20]
call qword [rax + 0x160]
jmp 0x14006e647
lea rcx, [r15 + 0x3d8]
call fcn.140068d50
mov rcx, qword [r15 + 0x128]
mov rax, qword [rcx]
mov r9d, 0x80000009
xor r8d, r8d
lea rdx, [0x140073dc0]
call qword [rax + 0x340]
mov edi, r13d
lea rcx, [r15 + 0x3d8]
call fcn.1400691a0
test eax, eax
jle 0x14006e647
nop dword [rax]
mov edx, edi
lea rcx, [r15 + 0x3d8]
call fcn.1400687d0
mov rbx, rax
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x2e8]
mov r8, qword [rbx]
mov rsi, qword [r8 + 0x160]
mov rcx, rbx
test al, al
jne 0x14006e617
call qword [r8 + 0x140]
jmp 0x14006e622
lea rdx, [rbp + 0x30]
call qword [r8 + 0x148]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x20], xmm0
mov r8b, 1
lea rdx, [rbp + 0x20]
mov rcx, rbx
call rsi
inc edi
lea rcx, [r15 + 0x3d8]
call fcn.1400691a0
cmp edi, eax
jl 0x14006e5e0
cmp byte [r15 + 0x1ac], r13b
je 0x14006e7ed
mov byte [r15 + 0x1ac], r13b
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], r13b
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8, str.windowinit
mov rdx, qword [r15 + 0x128]
mov rcx, r15
call fcn.1400724e0
cmp byte [r15 + 0x1b1], r13b
je 0x14006e7ed
cmp byte [r15 + 0x1c4], r13b
je 0x14006e7ed
mov rcx, r15
call fcn.14006dc80
mov byte [r15 + 0x332], r13b
mov al, 1
jmp 0x140070cad
cmp byte [r15 + 0x1b1], r13b
je 0x14006e7ed
cmp byte [r15 + 0x1c4], r13b
je 0x14006e7ed
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x60], xmm0
mov r9, qword [r15 + 0xb0]
test r9, r9
je 0x14006e70d
mov rcx, qword [rbp - 0x70]
mov rax, rcx
shr rax, 0x20
mov rdx, r8
shr rdx, 0x20
sub edx, eax
sub r8d, ecx
imul edx, r8d
shl edx, 2
movsxd r8, edx
xor edx, edx
mov rcx, r9
call fcn.140243780
mov edx, dword [r15 + 0x1b4]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov esi, dword [rbp - 0x60]
add esi, eax
mov edx, dword [r15 + 0x1b8]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov r14d, dword [rbp - 0x5c]
add r14d, eax
mov edx, dword [r15 + 0x1bc]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov edi, dword [rbp - 0x58]
sub edi, eax
mov edx, dword [r15 + 0x1c0]
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov ebx, dword [rbp - 0x54]
sub ebx, eax
mov edx, esi
mov rcx, r15
call fcn.1400739d0
mov edx, r14d
mov rcx, r15
call fcn.1400739d0
mov edx, edi
mov rcx, r15
call fcn.140073940
mov edx, ebx
mov rcx, r15
call fcn.140073940
mov edx, esi
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x60], eax
mov edx, edi
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x58], eax
mov edx, r14d
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x5c], eax
mov edx, ebx
mov rcx, r15
call fcn.140073940
mov dword [rbp - 0x54], eax
mov rcx, qword [r15 + 0x128]
mov rax, qword [rcx]
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp + 0x20], xmm0
mov r8b, 1
lea rdx, [rbp + 0x20]
call qword [rax + 0x160]
cmp byte [r15 + 0x1af], r13b
je 0x14006e891
cmp qword [r15 + 0xa8], r13
jne 0x14006e891
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov qword [r15 + 0x98], rax
test rax, rax
jne 0x14006e858
mov rdx, qword [r15 + 0x90]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetDC]
mov qword [r15 + 0x90], rax
mov rcx, rax
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov qword [r15 + 0x98], rax
mov rcx, qword [r15 + 0x90]
mov r8d, dword [rbp - 0x64]
mov edx, dword [rbp - 0x68]
sub r8d, dword [rbp - 0x6c]
sub edx, dword [rbp - 0x70]
cmp byte [r15 + 0x1b1], r13b
je 0x14006e884
lea r9, [r15 + 0xb0]
call fcn.140080860
jmp 0x14006e88a
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov qword [r15 + 0xa8], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], rax
lea rdx, [rbp + 0x60]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_BeginPaint]
cmp byte [r15 + 0x1af], r13b
je 0x14006f1ce
mov rdx, qword [r15 + 0xa8]
mov rcx, qword [r15 + 0x98]
call qword [sym.imp.GDI32.dll_SelectObject]
mov qword [rbp - 0x78], rax
mov rcx, qword [r15 + 0x98]
call qword [sym.imp.GDI32.dll_SaveDC]
mov esi, eax
mov dword [rsp + 0x60], eax
cmp byte [r15 + 0x1b1], r13b
je 0x14006e98d
cmp qword [r15 + 0x2f0], r13
jne 0x14006e98d
cmp qword [r15 + 0xb0], r13
je 0x140070c89
mov r8d, dword [rbp - 0x64]
mov r9d, r8d
sub r9d, dword [rbp + 0xc]
mov eax, r8d
mov r10d, dword [rbp + 4]
sub eax, r10d
cmp r9d, eax
jge 0x14006e98d
mov ecx, dword [rbp + 8]
nop dword [rax]
movsxd rdx, dword [rbp]
cmp edx, ecx
jge 0x14006e97f
mov r8, rdx
nop dword [rax + rax]
mov eax, dword [rbp - 0x68]
sub eax, dword [rbp - 0x70]
imul eax, r9d
movsxd rcx, eax
add rcx, r8
mov rax, qword [r15 + 0xb0]
mov dword [rax + rcx*4], r13d
inc edx
inc r8
mov ecx, dword [rbp + 8]
cmp edx, ecx
jl 0x14006e950
mov r8d, dword [rbp - 0x64]
mov r10d, dword [rbp + 4]
inc r9d
mov eax, r8d
sub eax, r10d
cmp r9d, eax
jl 0x14006e940
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x10], xmm0
mov edx, dword [rbp]
mov rcx, r15
call fcn.1400739d0
mov dword [rbp + 0x10], eax
mov edx, dword [rbp + 0x14]
mov rcx, r15
call fcn.1400739d0
mov dword [rbp + 0x14], eax
mov edx, dword [rbp + 0x18]
mov rcx, r15
call fcn.140073940
mov dword [rbp + 0x18], eax
mov edx, dword [rbp + 0x1c]
mov rcx, r15
call fcn.140073940
mov dword [rbp + 0x1c], eax
cmp byte [r15 + 0x1b1], r13b
jne 0x14006ea7e
mov edx, dword [rbp - 0x68]
mov rcx, r15
call fcn.140073940
mov edx, eax
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov rcx, qword [rbp - 0x68]
cmp ecx, eax
jle 0x14006ea2d
mov dword [rbp - 0x60], eax
mov eax, dword [rbp - 0x6c]
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x58], ecx
mov eax, dword [rbp - 0x64]
mov dword [rbp - 0x54], eax
mov rcx, qword [r15 + 0x128]
call fcn.14007b360
mov r8d, eax
lea rdx, [rbp - 0x60]
mov rcx, qword [r15 + 0x98]
call fcn.140080b40
mov edx, dword [rbp - 0x64]
mov rcx, r15
call fcn.140073940
mov edx, eax
lea rcx, [r15 + 0x570]
call fcn.14006a790
mov edx, dword [rbp - 0x64]
cmp edx, eax
jle 0x14006ea7e
mov ecx, dword [rbp - 0x70]
mov dword [rbp - 0x60], ecx
mov dword [rbp - 0x5c], eax
mov eax, dword [rbp - 0x68]
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x54], edx
mov rcx, qword [r15 + 0x128]
call fcn.14007b360
mov r8d, eax
lea rdx, [rbp - 0x60]
mov rcx, qword [r15 + 0x98]
call fcn.140080b40
mov rcx, qword [r15 + 0x128]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rbp + 0x10]
mov rdx, qword [r15 + 0x98]
call qword [rax + 0x3a0]
cmp byte [r15 + 0x1b1], r13b
je 0x14006ece9
mov esi, r13d
lea rcx, [r15 + 0x398]
call fcn.1400691a0
test eax, eax
jle 0x14006ece5
mov edx, esi
lea rcx, [r15 + 0x398]
call fcn.1400687d0
mov rbx, rax
mov rcx, rax
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x14006eb09
lea r8d, [rax + 1]
mov edx, esi
lea rcx, [r15 + 0x398]
call fcn.140069630
lea rcx, [r15 + 0x3a8]
mov r8d, 1
mov edx, esi
call fcn.140069630
jmp 0x14006ecd1
inc esi
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x14006ecd1
lea rdx, [rbp - 0x60]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindowRect]
lea rdx, [rbp - 0x60]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
lea rdx, [rbp - 0x58]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
lea r8, [rbp - 0x60]
lea rdx, [rbp]
lea rcx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_IntersectRect]
test eax, eax
je 0x14006ecd1
mov qword [rsp + 0x68], r13
mov rcx, qword [r15 + 0x98]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov r14, rax
mov r8d, dword [rbp - 0x54]
sub r8d, dword [rbp - 0x5c]
mov edx, dword [rbp - 0x58]
sub edx, dword [rbp - 0x60]
lea r9, [rsp + 0x68]
mov rcx, rax
call fcn.140080860
mov rdi, rax
mov qword [rbp - 0x80], rax
mov r9, qword [rsp + 0x68]
test r9, r9
je 0x14006ecd1
mov edx, dword [rbp - 0x58]
sub edx, dword [rbp - 0x60]
mov ecx, dword [rbp - 0x54]
sub ecx, dword [rbp - 0x5c]
imul edx, ecx
shl edx, 2
movsxd r8, edx
xor edx, edx
mov rcx, r9
call fcn.140243780
mov rdx, rdi
mov rcx, r14
call qword [sym.imp.GDI32.dll_SelectObject]
mov qword [rsp + 0x70], rax
mov r9d, gethostname
mov r8, r14
mov edx, 0x317
mov rcx, rbx
call qword [sym.imp.USER32.dll_SendMessageW]
mov ebx, r13d
mov r9d, dword [rbp - 0x54]
mov ecx, r9d
mov edi, dword [rbp - 0x5c]
sub ecx, edi
mov r10d, dword [rbp - 0x58]
mov r11d, dword [rbp - 0x60]
test ecx, ecx
jle 0x14006ec78
nop dword [rax]
nop word [rax + rax]
mov edx, r13d
mov r8, r13
mov eax, r10d
sub eax, r11d
test eax, eax
jle 0x14006ec6d
imul eax, ebx
movsxd rcx, eax
add rcx, r8
mov r9, qword [rsp + 0x68]
mov eax, dword [r9 + rcx*4]
test eax, eax
je 0x14006ec57
or eax, 0xff000000
mov dword [r9 + rcx*4], eax
mov r10d, dword [rbp - 0x58]
mov r11d, dword [rbp - 0x60]
inc edx
inc r8
mov eax, r10d
sub eax, r11d
cmp edx, eax
jl 0x14006ec30
mov r9d, dword [rbp - 0x54]
mov edi, dword [rbp - 0x5c]
inc ebx
mov eax, r9d
sub eax, edi
cmp ebx, eax
jl 0x14006ec20
sub r9d, edi
sub r10d, r11d
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x30], r13d
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r9d
mov r9d, r10d
mov r8d, edi
mov edx, r11d
mov rcx, qword [r15 + 0x98]
call qword [sym.imp.GDI32.dll_BitBlt]
mov rdx, qword [rsp + 0x70]
mov rcx, r14
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, r14
call qword [sym.imp.GDI32.dll_DeleteDC]
lea rcx, [r15 + 0x398]
call fcn.1400691a0
cmp esi, eax
jl 0x14006eac0
mov esi, dword [rsp + 0x60]
mov ebx, r13d
lea rcx, [r15 + 0x388]
call fcn.1400691a0
test eax, eax
jle 0x14006ed37
nop dword [rax]
mov edx, ebx
lea rcx, [r15 + 0x388]
call fcn.1400687d0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x3f0]
mov rdx, qword [r15 + 0x98]
mov rcx, rax
call r8
inc ebx
lea rcx, [r15 + 0x388]
call fcn.1400691a0
cmp ebx, eax
jl 0x14006ed00
mov edx, esi
mov rcx, qword [r15 + 0x98]
call qword [sym.imp.GDI32.dll_RestoreDC]
mov rcx, qword [r15 + 0x88]
cmp byte [r15 + 0x1b1], r13b
je 0x14006f0a3
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
lea rdx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov r14d, dword [rbp - 0x68]
sub r14d, dword [rbp - 0x70]
mov r12d, dword [rbp - 0x64]
sub r12d, dword [rbp - 0x6c]
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x60], xmm0
mov edx, dword [r15 + 0x1b4]
lea rcx, [r15 + 0x570]
call fcn.14006a790
add dword [rbp - 0x60], eax
mov edx, dword [r15 + 0x1b8]
lea rcx, [r15 + 0x570]
call fcn.14006a790
add dword [rbp - 0x5c], eax
mov edx, dword [r15 + 0x1bc]
lea rcx, [r15 + 0x570]
call fcn.14006a790
sub dword [rbp - 0x58], eax
mov edx, dword [r15 + 0x1c0]
lea rcx, [r15 + 0x570]
call fcn.14006a790
sub dword [rbp - 0x54], eax
cmp qword [r15 + 0x2f0], r13
je 0x14006f021
cmp qword [r15 + 0xb8], r13
jne 0x14006eea4
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov qword [r15 + 0xa0], rax
lea r9, [r15 + 0xc0]
mov r8d, r12d
mov edx, r14d
mov rcx, qword [r15 + 0x90]
call fcn.140080860
mov qword [r15 + 0xb8], rax
mov rcx, qword [r15 + 0xc0]
test rcx, rcx
je 0x140070c89
mov r8d, r12d
imul r8d, r14d
shl r8d, 2
xor edx, edx
call fcn.140243780
mov rdx, qword [r15 + 0xb8]
mov rcx, qword [r15 + 0xa0]
call qword [sym.imp.GDI32.dll_SelectObject]
nop
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp + 0x30], xmm0
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x30]
mov rcx, qword [r15 + 0xa0]
call fcn.140087a00
lea rax, [r15 + 0x1d8]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rbp - 0x60]
mov rdx, r15
mov rcx, qword [r15 + 0xa0]
call fcn.140085f20
nop
jmp 0x14006ef11
cmp byte [r15 + 0x1c4], r13b
je 0x14006ef1a
mov rcx, qword [r15 + 0xc0]
test rcx, rcx
je 0x140070c89
mov r8d, r12d
imul r8d, r14d
shl r8d, 2
xor edx, edx
call fcn.140243780
nop
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp + 0x30], xmm0
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x30]
mov rcx, qword [r15 + 0xa0]
call fcn.140087a00
lea rax, [r15 + 0x1d8]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rbp - 0x60]
mov rdx, r15
mov rcx, qword [r15 + 0xa0]
call fcn.140085f20
nop
lea rcx, [rbp - 0x50]
call fcn.14007fcc0
mov rax, qword [r15 + 0x2f0]
cmp byte [rax + 0x20], 0
je 0x14006f021
cmp qword [r15 + 0xc0], 0
je 0x140070c89
mov edx, dword [rbp - 0x64]
mov esi, edx
sub esi, dword [rbp + 0xc]
mov eax, edx
mov r8d, dword [rbp + 4]
sub eax, r8d
cmp esi, eax
jge 0x14006f021
mov ecx, dword [rbp + 8]
nop word [rax + rax]
movsxd rdi, dword [rbp]
cmp edi, ecx
jge 0x14006f012
mov ebx, esi
imul ebx, r14d
add rbx, rdi
shl rbx, 2
nop dword [rax]
mov r11, qword [r15 + 0xb0]
mov rax, qword [r15 + 0xc0]
movzx r10d, byte [rax + rbx + 3]
mov r8d, dword [rbx + r11]
mov eax, r8d
shr eax, 8
movzx ecx, al
imul ecx, r10d
mov eax, 0x80808081
mul ecx
shr edx, 7
movzx r9d, dl
shl r9d, 8
mov eax, r8d
shr eax, 0x10
movzx ecx, al
imul ecx, r10d
mov eax, 0x80808081
mul ecx
shr edx, 7
movzx eax, dl
shl eax, 0x10
or r9d, eax
movzx ecx, r8b
imul ecx, r10d
mov eax, 0x80808081
mul ecx
shr edx, 7
movzx eax, dl
or r9d, eax
shl r10d, 0x18
add r9d, r10d
mov dword [rbx + r11], r9d
inc edi
lea rbx, [rbx + 4]
mov ecx, dword [rbp + 8]
cmp edi, ecx
jl 0x14006ef80
mov edx, dword [rbp - 0x64]
mov r8d, dword [rbp + 4]
inc esi
mov eax, edx
sub eax, r8d
cmp esi, eax
jl 0x14006ef60
mov word [rsp + 0x60], 0
movzx eax, byte [r15 + 0x1b0]
mov byte [rsp + 0x62], al
mov byte [rsp + 0x63], 1
mov eax, dword [rbp + 0x20]
mov dword [rsp + 0x70], eax
mov eax, dword [rbp + 0x24]
mov dword [rsp + 0x74], eax
mov dword [rbp - 0x80], r14d
mov dword [rbp - 0x7c], r12d
mov qword [rsp + 0x68], r13
mov dword [rsp + 0x40], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r13d
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov rax, qword [r15 + 0x98]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
lea r8, [rsp + 0x70]
mov rdx, qword [r15 + 0x90]
mov rcx, qword [r15 + 0x88]
call qword [0x14036ebd8]
jmp 0x14006f13e
mov edx, 0xfffffff0
call qword [sym.imp.USER32.dll_GetWindowLongW]
bt eax, 0x19
jb 0x14006f0fc
mov edx, 5
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetWindow]
mov rbx, rax
test rax, rax
je 0x14006f0fc
nop
mov r8, qword [r15 + 0x88]
mov rdx, qword [r15 + 0x98]
mov rcx, rbx
call fcn.1400711e0
mov edx, 2
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindow]
mov rbx, rax
test rax, rax
jne 0x14006f0d0
mov ecx, dword [rbp + 0xc]
mov r8d, dword [rbp + 4]
sub ecx, r8d
mov r9d, dword [rbp + 8]
mov edx, dword [rbp]
sub r9d, edx
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0x30], edx
mov rax, qword [r15 + 0x98]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_BitBlt]
mov rdx, qword [rbp - 0x78]
mov rcx, qword [r15 + 0x98]
call qword [sym.imp.GDI32.dll_SelectObject]
cmp byte [r15 + 0x125], 0
je 0x14006f20b
cmp byte [r15 + 0x1b1], 0
jne 0x14006f20b
mov rdx, qword [0x14036ebe0]
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_SelectObject]
mov rbx, rax
mov ecx, 5
call qword [sym.imp.GDI32.dll_GetStockObject]
mov rdx, rax
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [rbp + 0xc]
mov dword [rsp + 0x20], ecx
mov r9d, dword [rbp + 8]
mov r8d, dword [rbp + 4]
mov edx, dword [rbp]
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_Rectangle]
mov rdx, rbx
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_SelectObject]
jmp 0x14006f20b
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_SaveDC]
mov ebx, eax
mov rcx, qword [r15 + 0x128]
mov r10, qword [rcx]
xor r9d, r9d
lea r8, [rbp]
mov rdx, qword [r15 + 0x90]
call qword [r10 + 0x3a0]
mov edx, ebx
mov rcx, qword [r15 + 0x90]
call qword [sym.imp.GDI32.dll_RestoreDC]
lea rdx, [rbp + 0x60]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_EndPaint]
mov byte [r15 + 0x332], 0
mov byte [r15 + 0x1c4], 0
cmp byte [r15 + 0x1ad], 0
je 0x140070c89
mov rcx, r15
call fcn.14006dc80
mov al, 1
jmp 0x140070cad
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], rax
mov dword [rbp + 0x30], Ordinal_46
lea edx, [rax + 2]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_MonitorFromWindow]
mov rcx, rax
lea rdx, [rbp + 0x30]
call qword [sym.imp.USER32.dll_GetMonitorInfoW]
lea rdx, [rbp + 0x44]
lea rcx, [rbp + 0x10]
call fcn.140068450
mov edx, dword [r15 + 0x170]
lea rbx, [r15 + 0x570]
test edx, edx
jle 0x14006f2a8
mov rcx, rbx
call fcn.14006a790
mov dword [rsi + 0x20], eax
mov edx, dword [r15 + 0x174]
test edx, edx
jle 0x14006f2be
mov rcx, rbx
call fcn.14006a790
mov dword [rsi + 0x24], eax
mov eax, dword [rbp + 0x18]
sub eax, dword [rbp + 0x10]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x14028d0b0]
cvttsd2si r14d, xmm0
mov eax, dword [rbp + 0x1c]
sub eax, dword [rbp + 0x14]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x14028d0b0]
cvttsd2si edi, xmm0
mov edx, dword [r15 + 0x168]
mov rcx, rbx
call fcn.14006a790
cmp eax, r14d
jge 0x14006f319
mov edx, dword [r15 + 0x168]
mov rcx, rbx
call fcn.14006a790
mov r14d, eax
mov edx, dword [r15 + 0x16c]
mov rcx, rbx
call fcn.14006a790
cmp eax, edi
jge 0x14006f33d
mov edx, dword [r15 + 0x16c]
mov rcx, rbx
call fcn.14006a790
mov edi, eax
test r14d, r14d
jle 0x14006f346
mov dword [rsi + 0x18], r14d
test edi, edi
jle case.0x14006faea.282
mov dword [rsi + 0x1c], edi
jmp case.0x14006faea.282
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne case.0x14006faea.282
mov rax, qword [r15 + 0x130]
test rax, rax
je 0x14006f3c5
mov qword [rbp - 0x50], reloc.WS2_32.dll_shutdown
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov rcx, qword [r15 + 0x128]
test rcx, rcx
je 0x14006f3d6
call fcn.14007bfc0
cmp byte [r15 + 0x1b1], r13b
je 0x140070c89
mov rcx, r15
call fcn.14006dc80
mov al, 1
jmp 0x140070cad
cmp byte [r15 + 0x124], r13b
je case.0x14006faea.282
mov qword [r12], 3
mov al, 1
jmp 0x140070cad
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
cmp byte [r15 + 0x331], r13b
jne case.0x14006faea.282
movsx eax, si
mov dword [rsp + 0x68], eax
mov rbx, rsi
shr rbx, 0x10
movsx eax, bx
mov dword [rsp + 0x6c], eax
lea rdx, [rsp + 0x68]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x68]
mov qword [r15 + 0x160], rax
lea rdx, [r15 + 0x160]
mov rcx, r15
call fcn.140073a50
mov rcx, qword [r15 + 0x140]
test rcx, rcx
jne 0x14006f4dd
mov rcx, qword [0x14036ec10]
test rcx, rcx
je case.0x14006faea.282
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
test al, al
je case.0x14006faea.282
mov rax, qword [r15 + 0x130]
test rax, rax
je case.0x14006faea.282
cmp si, 0xffff
jne case.0x14006faea.282
cmp bx, si
jne case.0x14006faea.282
mov qword [rbp - 0x50], reloc.COMCTL32.dll_InitCommonControls
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x34], 0xffffffffffffffff
mov word [rbp - 0x2a], di
mov qword [rbp - 0x20], rax
jmp 0x14006f85c
mov qword [rbp - 0x50], reloc.COMCTL32.dll_InitCommonControls
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x48], rcx
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
mov word [rbp - 0x2a], di
mov qword [rbp - 0x20], rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rcx, qword [r15 + 0x140]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov qword [r15 + 0x140], r13
jmp case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
mov rax, qword [r15 + 0x130]
test rax, rax
je case.0x14006faea.282
mov qword [rbp - 0x50], 5
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
mov word [rbp - 0x2c], di
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
jmp case.0x14006faea.282
cmp rdi, 9
jne 0x14006f5cb
lea ecx, [rdi + 7]
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
setns dl
xor r9d, r9d
xor r8d, r8d
mov rcx, r15
call fcn.140072cc0
mov al, 1
jmp 0x140070cad
cmp rdi, 0x75
jne 0x14006f5f5
lea ecx, [rdi - 0x65]
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
setns dl
mov r9b, 1
xor r8d, r8d
mov rcx, r15
call fcn.140072cc0
mov al, 1
jmp 0x140070cad
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
mov rax, qword [r15 + 0x130]
test rax, rax
je case.0x14006faea.282
mov qword [rbp - 0x50], 3
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
mov word [rbp - 0x2c], di
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov rax, qword [r15 + 0x130]
mov qword [r15 + 0x148], rax
jmp case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
mov rax, qword [r15 + 0x148]
test rax, rax
je case.0x14006faea.282
mov qword [rbp - 0x50], 4
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
mov word [rbp - 0x2c], di
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rcx, qword [r15 + 0x148]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov qword [r15 + 0x148], r13
jmp case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
cmp si, 1
jne case.0x14006faea.282
cmp byte [r15 + 0x331], r13b
jne 0x140070c89
mov qword [rsp + 0x60], r13
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rcx, [rsp + 0x60]
call fcn.14006a200
lea rdx, [rsp + 0x60]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x68], rax
mov edx, eax
mov rcx, r15
call fcn.140073940
mov dword [rsp + 0x68], eax
mov edx, dword [rsp + 0x6c]
mov rcx, r15
call fcn.140073940
mov dword [rsp + 0x6c], eax
mov rbx, qword [rsp + 0x68]
mov rdx, rbx
mov rcx, r15
call fcn.14006c7d0
mov r14, rax
test rax, rax
je case.0x14006faea.282
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
test al, 2
je case.0x14006faea.282
mov qword [rbp - 0x50], reloc.WS2_32.dll_socket
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x34], rbx
call fcn.14006ded0
mov word [rbp - 0x2a], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rax, qword [r14]
lea rdx, [rbp - 0x50]
mov rcx, r14
call qword [rax + 0x360]
movzx eax, sil
jmp 0x140070cad
mov rcx, qword [r15 + 0x130]
test rcx, rcx
je case.0x14006faea.282
mov rax, qword [rcx]
call qword [rax + 0x290]
test al, al
je case.0x14006faea.282
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
call qword [rax + 0x2a8]
test al, al
je case.0x14006faea.282
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
call qword [rax + reloc.WLDAP32.dll_Ordinal_216]
mov rcx, rax
lea rdx, str.RichEdit
call fcn.140241fb0
test rax, rax
je case.0x14006faea.282
mov qword [rbp - 0x50], reloc.WS2_32.dll_setsockopt
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x34], xmm0
mov qword [rbp - 0x24], r13
mov dword [rbp - 0x1c], r13d
mov rax, qword [r15 + 0x130]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], r13
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
jmp case.0x14006faea.282
test rdi, rdi
je 0x14006f93d
call qword [sym.imp.USER32.dll_GetFocus]
mov rsi, rax
mov rcx, rax
call qword [sym.imp.USER32.dll_GetParent]
test rax, rax
je 0x14006f93d
nop word [rax + rax]
cmp qword [r15 + 0x88], rax
je 0x14006f8cc
mov rsi, rax
mov rcx, rax
call qword [sym.imp.USER32.dll_GetParent]
test rax, rax
jne 0x14006f8b0
jmp 0x14006f93d
mov ebx, r13d
lea rcx, [r15 + 0x398]
call fcn.1400691a0
test eax, eax
jle 0x14006f93d
nop
mov edx, ebx
lea rcx, [r15 + 0x398]
call fcn.1400687d0
cmp rax, rsi
je 0x14006f907
inc ebx
lea rcx, [r15 + 0x398]
call fcn.1400691a0
cmp ebx, eax
jl 0x14006f8e0
jmp 0x14006f93d
mov edx, ebx
lea rcx, [r15 + 0x3a8]
call fcn.1400687d0
cmp rax, qword [r15 + 0x130]
je 0x14006f93d
mov edx, ebx
lea rcx, [r15 + 0x3a8]
call fcn.1400687d0
mov rdx, rax
xor r9d, r9d
xor r8d, r8d
mov rcx, r15
call fcn.140072880
mov rcx, qword [r15 + 0x130]
test rcx, rcx
je case.0x14006faea.282
mov rax, qword [rcx]
call qword [rax + 0x290]
test al, al
je case.0x14006faea.282
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
call qword [rax + 0x2a8]
test al, al
je case.0x14006faea.282
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
call qword [rax + reloc.WLDAP32.dll_Ordinal_216]
mov rcx, rax
lea rdx, str.RichEdit
call fcn.140241fb0
test rax, rax
je case.0x14006faea.282
mov qword [rbp - 0x50], reloc.WS2_32.dll_sendto
jmp 0x14006f845
test rsi, rsi
je 0x140070c89
lea edx, [rbx + 0x2000]
mov r9, rsi
mov r8, rdi
mov rcx, qword [rsi]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r12], rax
mov al, 1
jmp 0x140070cad
cmp esi, 0xfffffffc
jne case.0x14006faea.282
cmp byte [0x14036ec02], r13b
jne case.0x14006faea.282
cmp byte [0x14036ec01], r13b
jne 0x14006fa05
mov rcx, qword [0x140364a28]
test rcx, rcx
je 0x14006fa05
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov byte [0x14036ec01], 1
mov rcx, qword [r15 + 0x128]
test rcx, rcx
je case.0x14006faea.282
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x98]
mov ecx, 0x20
call fcn.1402407f4
mov qword [rbp - 0x78], rax
test rax, rax
je 0x14006fa4c
mov rdx, qword [r15 + 0x128]
mov rcx, rax
call fcn.14008d110
mov r13, rax
mov rcx, qword [r15 + 0x128]
mov rax, qword [rcx]
mov rdx, r13
call qword [rax + SHCreateDirectory]
test r13, r13
je case.0x14006faea.282
lea r8, [r13 + 8]
mov rdx, rdi
lea rcx, [0x14028aa78]
call sub.OLEACC.dll_LresultFromObject
mov qword [r12], rax
mov al, 1
jmp 0x140070cad
test rsi, rsi
je case.0x14006faea.282
mov r9, rsi
mov r8, rdi
mov edx, 0x2111
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r12], rax
mov al, 1
jmp 0x140070cad
cmp ebx, 0x20a
ja 0x140070406
je 0x140070274
lea eax, [rbx - 0x113]
cmp eax, 0xf1
ja case.0x14006faea.282
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x70e34]
mov ecx, dword [rdx + rax*4 + 0x70e14]
add rcx, rdx
jmp rcx
mov eax, 0x2000
cmp di, ax
jne 0x14006fb45
test r8b, r8b
je 0x14006fb45
lea rcx, [r15 + 0x1c8]
call qword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x14006fb45
mov qword [rbp - 0x78], r13
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne case.0x14006faea.282
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xf]
mov rcx, r15
call fcn.14006df40
jmp case.0x14006faea.282
mov r14d, r13d
lea rcx, [r15 + 0x348]
call fcn.1400691a0
test eax, eax
jle case.0x14006faea.282
nop dword [rax]
mov edx, r14d
lea rcx, [r15 + 0x348]
call fcn.1400687d0
mov rbx, rax
mov rcx, qword [r15 + 0x88]
cmp qword [rax + 0x10], rcx
jne 0x14006fb8d
movzx ecx, di
cmp dword [rax + 0x18], ecx
jne 0x14006fb8d
cmp byte [rax + 0x1c], r13b
je 0x14006fba7
inc r14d
lea rcx, [r15 + 0x348]
call fcn.1400691a0
cmp r14d, eax
jge case.0x14006faea.282
jmp 0x14006fb60
mov qword [rbp - 0x50], Ordinal_27
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
mov eax, dword [rbx + 8]
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rsi
mov rcx, qword [rbx]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
jmp case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
cmp byte [r15 + 0x330], r13b
jne 0x14006fc6b
mov dword [rbp + 0x44], r13d
mov dword [rbp + 0x30], Ordinal_27
mov dword [rbp + 0x34], 3
mov rax, qword [r15 + 0x88]
mov qword [rbp + 0x38], rax
mov rcx, qword [r15 + 0xd0]
test rcx, rcx
jne 0x14006fc44
mov eax, dword [r15 + 0x120]
jmp 0x14006fc56
xor r9d, r9d
mov edx, 0x415
lea r8d, [r9 + 3]
call qword [sym.imp.USER32.dll_SendMessageW]
mov dword [rbp + 0x40], eax
lea rcx, [rbp + 0x30]
call qword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov byte [r15 + 0x330], 1
movsx eax, si
mov dword [rsp + 0x70], eax
mov rax, rsi
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x70]
mov qword [r15 + 0x160], rax
lea rdx, [r15 + 0x160]
mov rcx, r15
call fcn.140073a50
mov rdx, qword [r15 + 0x160]
mov rcx, r15
call fcn.14006c7d0
mov r14, rax
test rax, rax
je 0x14006fcc5
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x100]
cmp rax, r15
jne case.0x14006faea.282
mov dword [rbp - 0x4c], r13d
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
cmp byte [r15 + 0x331], r13b
jne 0x14006fe74
mov rdx, qword [r15 + 0x160]
mov rcx, r15
call fcn.14006c7d0
mov r14, rax
test rax, rax
je 0x14006fd30
mov rax, qword [rax]
mov rcx, r14
call qword [rax + 0x100]
cmp rax, r15
jne case.0x14006faea.282
mov rax, qword [r15 + 0x138]
cmp r14, rax
je 0x14006fe44
test rax, rax
je 0x14006fe44
mov dword [rbp - 0x50], 0xa
mov qword [rbp - 0x48], rax
lea rcx, [r15 + 0x3e8]
call fcn.1400691a0
mov edx, eax
lea rcx, [rbp + 0x10]
call fcn.140068420
nop
lea rcx, [r15 + 0x3e8]
call fcn.1400691a0
mov edx, eax
lea rcx, [rbp + 0x10]
call fcn.140069d30
lea rcx, [r15 + 0x3e8]
call fcn.1400691a0
movsxd rdi, eax
shl rdi, 3
lea rcx, [r15 + 0x3e8]
call fcn.1400687f0
mov rbx, rax
lea rcx, [rbp + 0x10]
call fcn.1400687f0
mov rcx, rax
mov r8, rdi
mov rdx, rbx
call fcn.1402430d0
mov ebx, r13d
lea rcx, [rbp + 0x10]
call fcn.1400691a0
test eax, eax
jle 0x14006fdfe
nop dword [rax]
mov edx, ebx
lea rcx, [rbp + 0x10]
call fcn.1400687d0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x360]
lea rdx, [rbp - 0x50]
mov rcx, rax
call r8
inc ebx
lea rcx, [rbp + 0x10]
call fcn.1400691a0
cmp ebx, eax
jl 0x14006fdd0
mov rcx, qword [r15 + 0x138]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov qword [r15 + 0x138], r13
mov rcx, qword [r15 + 0xd0]
test rcx, rcx
je 0x14006fe3b
lea r9, [r15 + 0xd8]
xor r8d, r8d
mov edx, 0x411
call qword [sym.imp.USER32.dll_SendMessageW]
nop
lea rcx, [rbp + 0x10]
call fcn.140068600
cmp r14, qword [r15 + 0x138]
je 0x14006fe74
test r14, r14
je 0x14006fe74
mov dword [rbp - 0x50], InitCommonControls
mov qword [rbp - 0x48], r14
mov rax, qword [r14]
lea rdx, [rbp - 0x50]
mov rcx, r14
call qword [rax + 0x360]
mov qword [r15 + 0x138], r14
mov rcx, qword [r15 + 0x140]
test rcx, rcx
je 0x14006fe9d
mov dword [rbp - 0x50], 9
mov qword [rbp - 0x48], rcx
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
jmp case.0x14006faea.282
test r14, r14
je case.0x14006faea.282
mov dword [rbp - 0x50], 9
mov qword [rbp - 0x48], r14
mov rax, qword [r14]
lea rdx, [rbp - 0x50]
mov rcx, r14
call qword [rax + 0x360]
jmp case.0x14006faea.282
cmp byte [r15 + 0x124], r13b
jne 0x14006fedc
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_SetFocus]
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
movsx eax, si
mov dword [rsp + 0x70], eax
mov rax, rsi
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x70]
mov qword [r15 + 0x160], rax
lea rdx, [r15 + 0x160]
mov rcx, r15
call fcn.140073a50
mov rdx, qword [r15 + 0x160]
mov rcx, r15
call fcn.14006c7d0
mov rbx, rax
test rax, rax
je case.0x14006faea.282
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x100]
cmp rax, r15
jne case.0x14006faea.282
mov qword [r15 + 0x140], rbx
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x2e0]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_SetCapture]
mov byte [r15 + 0x331], 1
mov qword [rbp - 0x50], reloc.WS2_32.dll_listen
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
mov word [rbp - 0x2a], di
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rax, qword [rbx]
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [rax + 0x360]
jmp case.0x14006faea.282
cmp byte [r15 + 0x124], r13b
jne 0x14006ffcf
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_SetFocus]
movsx eax, si
mov dword [rsp + 0x70], eax
shr rsi, 0x10
movsx eax, si
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x70]
mov qword [r15 + 0x160], rax
lea rdx, [r15 + 0x160]
mov rcx, r15
call fcn.140073a50
mov rdx, qword [r15 + 0x160]
mov rcx, r15
call fcn.14006c7d0
mov rbx, rax
test rax, rax
je case.0x14006faea.282
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x100]
cmp rax, r15
jne case.0x14006faea.282
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_SetCapture]
mov byte [r15 + 0x331], 1
mov qword [rbp - 0x50], reloc.WS2_32.dll_recv
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x48], rbx
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x40], r13
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
mov word [rbp - 0x2a], di
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rax, qword [rbx]
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [rax + 0x360]
mov qword [r15 + 0x140], rbx
jmp case.0x14006faea.282
movsx eax, si
mov dword [rsp + 0x70], eax
mov rax, rsi
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x70]
mov qword [r15 + 0x160], rax
lea rdx, [r15 + 0x160]
mov rcx, r15
call fcn.140073a50
cmp qword [r15 + 0x140], r13
je case.0x14006faea.282
call qword [sym.imp.USER32.dll_ReleaseCapture]
mov byte [r15 + 0x331], r13b
mov qword [rbp - 0x50], reloc.WLDAP32.dll_Ordinal_14
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov rax, qword [r15 + 0x140]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
mov word [rbp - 0x2a], di
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rbx, qword [r15 + 0x140]
mov qword [r15 + 0x140], r13
mov rax, qword [rbx]
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [rax + 0x360]
mov rcx, qword [r15 + 0x128]
test rcx, rcx
je case.0x14006faea.282
mov rax, qword [rcx]
lea rdx, [rbp + 0x60]
call qword [rax + 0xc8]
nop
mov rcx, rax
call fcn.1400687f0
mov rdi, rax
lea rcx, [rbp + 0x60]
call fcn.140003e80
mov rdx, qword [rbx]
mov r8, qword [rdx + 0xc8]
lea rdx, [rbp + 0xf0]
mov rcx, rbx
call r8
nop
mov rcx, rax
call fcn.1400687f0
mov rbx, rax
lea rcx, [rbp + 0xf0]
call fcn.140003e80
mov rcx, qword [0x14036ec08]
test rcx, rcx
je case.0x14006faea.282
mov r9, qword [rcx]
mov r8, rbx
mov rdx, rdi
call qword [r9]
jmp case.0x14006faea.282
cmp byte [r15 + 0x124], r13b
jne 0x1400701cc
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_SetFocus]
movsx eax, si
mov dword [rsp + 0x70], eax
mov rax, rsi
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x70]
mov qword [r15 + 0x160], rax
lea rdx, [r15 + 0x160]
mov rcx, r15
call fcn.140073a50
mov rdx, qword [r15 + 0x160]
mov rcx, r15
call fcn.14006c7d0
mov rbx, rax
test rax, rax
je case.0x14006faea.282
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x100]
cmp rax, r15
jne case.0x14006faea.282
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x2e0]
mov qword [rbp - 0x50], reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
jmp 0x140070051
test rsi, rsi
je case.0x14006faea.282
lea edx, [rbx + 0x2000]
mov r9, rsi
mov r8, rdi
mov rcx, rsi
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r12], rax
mov al, 1
jmp 0x140070cad
cmp byte [r15 + 0x333], r13b
jne case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
movsx eax, si
mov dword [rsp + 0x70], eax
mov r12, rsi
shr r12, 0x10
movsx eax, r12w
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x60]
call fcn.14006a200
lea rdx, [rsp + 0x60]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x60]
mov qword [r15 + 0x160], rax
lea rdx, [r15 + 0x160]
mov rcx, r15
call fcn.140073a50
mov rdx, qword [r15 + 0x160]
mov rcx, r15
call fcn.14006c7d0
mov r14, rax
test rax, rax
je case.0x14006faea.282
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x100]
cmp rax, r15
jne case.0x14006faea.282
mov rcx, qword [r14]
mov r8, qword [rcx + 0xe0]
lea rdx, str.ChildWnd
mov rcx, r14
call r8
test rax, rax
je 0x140070385
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0xf0]
test rax, rax
je 0x1400703da
mov byte [r15 + 0x333], 1
movzx ebx, r12w
shl rbx, 0x10
movzx eax, si
or rbx, rax
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0xf0]
mov rcx, rax
mov r9, rbx
mov r8, rdi
mov edx, 0x20a
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [r15 + 0x333], r13b
jmp 0x1400703da
mov qword [rbp - 0x50], reloc.WS2_32.dll_select
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x48], r14
shr rdi, 0x10
movzx eax, di
shr rax, 0xf
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rsi
mov rax, qword [r15 + 0x160]
mov qword [rbp - 0x34], rax
call fcn.14006ded0
mov word [rbp - 0x2a], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rax, qword [r14]
lea rdx, [rbp - 0x50]
mov rcx, r14
call qword [rax + 0x360]
movzx r9d, word [rsp + 0x64]
shl r9d, 0x10
movzx eax, word [rsp + 0x60]
or r9, rax
xor r8d, r8d
mov edx, 0x200
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_SendMessageW]
jmp case.0x14006faea.282
cmp ebx, 0x8001
ja 0x140070b89
je 0x140070a5a
sub ebx, 0x2a1
je 0x1400706ec
sub ebx, 2
je 0x1400705ca
sub ebx, 0x3d
je 0x140070530
cmp ebx, 0x38
jne case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
lea rdx, [rbp + 0x30]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetClientRect]
mov rcx, rdi
call qword [sym.imp.GDI32.dll_SaveDC]
mov r14d, eax
mov rcx, qword [r15 + 0x128]
mov r10, qword [rcx]
xor r9d, r9d
lea r8, [rbp + 0x30]
mov rdx, rdi
call qword [r10 + 0x3a0]
test sil, 0x10
je 0x14007051f
lea edx, [rbx - 0x33]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetWindow]
mov rbx, rax
test rax, rax
je 0x14007051f
or rsi, 2
nop word [rax + rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
lea rdx, [rbp + 0x10]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindowRect]
mov r9d, 2
lea r8, [rbp + 0x10]
mov rdx, qword [r15 + 0x88]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MapWindowPoints]
mov r8d, dword [rbp + 0x14]
neg r8d
mov edx, dword [rbp + 0x10]
neg edx
xor r9d, r9d
mov rcx, rdi
call qword [sym.imp.GDI32.dll_SetWindowOrgEx]
mov r9, rsi
mov r8, rdi
mov edx, 0x317
mov rcx, rbx
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, 2
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindow]
mov rbx, rax
test rax, rax
jne 0x1400704b0
mov edx, r14d
mov rcx, rdi
call qword [sym.imp.GDI32.dll_RestoreDC]
jmp case.0x14006faea.282
mov qword [r12], r13
lea rcx, [r15 + 0x570]
mov r9, rsi
mov r8, rdi
mov rdx, qword [r15 + 0x88]
call fcn.14006a710
mov rbx, qword [r15 + 0x128]
test rbx, rbx
je case.0x14006faea.282
add r15, 0x3d8
mov rcx, r15
call fcn.140068d50
mov rax, qword [rbx]
xor r9d, r9d
lea r8, str.RichEdit
lea rdx, [0x140073d50]
mov rcx, rbx
call qword [rax + 0x340]
test r15, r15
je case.0x14006faea.282
mov rcx, r15
call fcn.1400691a0
test eax, eax
jle case.0x14006faea.282
mov edx, r13d
mov rcx, r15
call fcn.1400690f0
mov rcx, rax
call fcn.14008aed0
inc r13d
mov rcx, r15
call fcn.1400691a0
cmp r13d, eax
jl 0x1400705a2
jmp case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
mov rcx, qword [r15 + 0xd0]
test rcx, rcx
je 0x1400705f8
lea r9, [r15 + 0xd8]
xor r8d, r8d
mov edx, 0x411
call qword [sym.imp.USER32.dll_SendMessageW]
cmp byte [r15 + 0x330], r13b
je 0x1400706e0
mov qword [rsp + 0x60], r13
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rcx, [rsp + 0x60]
call fcn.14006a200
lea rdx, [rbp + 0x20]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x1400706c5
call qword [sym.imp.USER32.dll_GetActiveWindow]
cmp rax, qword [r15 + 0x88]
jne 0x1400706c5
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x1400706c5
movzx r9d, word [rsp + 0x64]
shl r9d, 0x10
movzx eax, word [rsp + 0x60]
or r9, rax
xor r8d, r8d
mov edx, Ordinal_133
mov rcx, qword [r15 + 0x88]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [r15 + 0x88]
cmp rax, 1
jne 0x1400706bd
lea rdx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_ScreenToClient]
movzx r9d, word [rsp + 0x64]
shl r9d, 0x10
movzx eax, word [rsp + 0x60]
or r9, rax
jmp 0x1400706cb
mov r9d, 0x270f270f
jmp 0x1400706d2
mov r9d, 0x270f270f
mov rcx, qword [r15 + 0x88]
xor r8d, r8d
mov edx, 0x200
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [r15 + 0x330], r13b
jmp case.0x14006faea.282
cmp qword [r15 + 0x128], r13
je case.0x14006faea.282
mov byte [r15 + 0x330], r13b
movsx edx, si
mov dword [rsp + 0x60], edx
mov rax, rsi
shr rax, 0x10
cwde
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x68], rax
mov rcx, r15
call fcn.140073940
mov dword [rsp + 0x68], eax
mov edx, dword [rsp + 0x6c]
mov rcx, r15
call fcn.140073940
mov dword [rsp + 0x6c], eax
mov rbx, qword [rsp + 0x68]
mov rdx, rbx
mov rcx, r15
call fcn.14006c7d0
mov r14, rax
test rax, rax
je case.0x14006faea.282
mov rax, qword [r15 + 0x138]
test rax, rax
je 0x1400707a8
mov qword [rbp - 0x50], InitCommonControls
mov qword [rbp - 0x40], r13
mov word [rbp - 0x2c], r13w
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rsi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov qword [rbp - 0x34], rbx
call fcn.14006ded0
mov word [rbp - 0x2a], ax
mov rcx, qword [r15 + 0x138]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov rax, qword [r14]
lea rdx, [rbp + 0x60]
mov rcx, r14
call qword [rax + 0x230]
nop
lea rcx, [rbp + 0x60]
call fcn.1400694e0
test al, al
jne 0x140070a4a
lea rcx, [rbp + 0x60]
call fcn.140071680
lea rbx, [r15 + 0xd8]
mov qword [r15 + 0xf0], r13
mov qword [r15 + 0xf8], r13
mov qword [r15 + 0x100], r13
mov qword [r15 + 0x108], r13
mov qword [r15 + 0x110], r13
mov qword [r15 + 0x118], r13
mov dword [rbx], 0x48
mov dword [r15 + 0xdc], 1
mov rax, qword [r15 + 0x88]
mov qword [r15 + 0xe0], rax
mov qword [r15 + 0xe8], rax
mov rax, qword [0x14036ebf8]
mov qword [r15 + 0x100], rax
lea rcx, [rbp + 0x60]
call fcn.1400687f0
mov qword [r15 + 0x108], rax
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x140]
movups xmm0, xmmword [rax]
movups xmmword [r15 + 0xf0], xmm0
cmp qword [r15 + 0xd0], 0
jne 0x14007094c
mov qword [rsp + 0x58], r13
mov rax, qword [0x14036ebf8]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r13
mov rax, qword [r15 + 0x88]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x80000000
mov dword [rsp + 0x30], 0x80000000
mov dword [rsp + 0x28], 0x80000000
mov dword [rsp + 0x20], 0x80000000
mov r9d, 0x80000003
xor r8d, r8d
lea rdx, str.tooltips_class32
xor ecx, ecx
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov qword [r15 + 0xd0], rax
mov r9, rbx
xor r8d, r8d
mov edx, 0x432
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x248]
lea rdi, [r15 + 0x570]
mov edx, eax
mov rcx, rdi
call fcn.14006a790
movsxd r9, eax
xor r8d, r8d
mov edx, 0x418
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
xor r8d, r8d
mov edx, 0x436
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
mov edx, 0x411
mov r8d, 1
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
jmp 0x140070953
lea rdi, [r15 + 0x570]
mov rcx, qword [r15 + 0x150]
test rcx, rcx
jne 0x14007096b
mov qword [r15 + 0x150], r14
jmp 0x140070a22
mov rax, qword [r14]
mov rdx, qword [rax + 0x248]
cmp rcx, r14
mov rcx, r14
jne 0x1400709cb
call rdx
cmp dword [r15 + 0xcc], eax
je 0x1400709ef
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x248]
mov edx, eax
mov rcx, rdi
call fcn.14006a790
movsxd r9, eax
xor r8d, r8d
mov edx, 0x418
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x248]
mov dword [r15 + 0xcc], eax
jmp 0x1400709ef
call rdx
mov edx, eax
mov rcx, rdi
call fcn.14006a790
movsxd r9, eax
xor r8d, r8d
mov edx, 0x418
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
xor r8d, r8d
mov edx, 0x436
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
mov r8d, 1
mov edx, 0x411
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
movzx r9d, word [rsp + 0x64]
shl r9d, 0x10
movzx eax, word [rsp + 0x60]
or r9, rax
xor r8d, r8d
mov edx, 0x412
mov rcx, qword [r15 + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
nop
lea rcx, [rbp + 0x60]
call fcn.140003e80
mov al, 1
jmp 0x140070cad
mov byte [r15 + 0x335], r13b
xor edx, edx
lea rcx, [r15 + 0x3c8]
call fcn.1400690f0
mov rdi, rax
test rax, rax
je 0x140070b42
nop dword [rax + rax]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [r15 + 0x3c8]
call fcn.140069630
mov rcx, qword [rdi + 0x110]
test rcx, rcx
je 0x140070ac4
add rcx, 0x90
call fcn.14007a420
test al, al
je 0x140070ac4
mov rcx, qword [rdi + 0x110]
add rcx, 0x90
mov rdx, rdi
call fcn.14007a440
mov ebx, r13d
lea rcx, [r15 + 0x338]
call fcn.1400691a0
test eax, eax
jle 0x140070b0c
nop word [rax + rax]
mov edx, ebx
lea rcx, [r15 + 0x338]
call fcn.1400687d0
mov r8, qword [rax]
mov rdx, rdi
mov rcx, rax
call qword [r8]
inc ebx
lea rcx, [r15 + 0x338]
call fcn.1400691a0
cmp ebx, eax
jl 0x140070ae0
lea rcx, [rdi + 0x88]
call fcn.140003e80
mov rcx, rdi
call fcn.140003e80
mov rcx, rdi
call fcn.1400bfa70
xor edx, edx
lea rcx, [r15 + 0x3c8]
call fcn.1400690f0
mov rdi, rax
test rax, rax
jne 0x140070a80
add r15, 0x3b8
mov rcx, r15
call fcn.1400691a0
test eax, eax
jle 0x140070b7c
mov edx, r13d
mov rcx, r15
call fcn.1400687d0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xc0]
inc r13d
mov rcx, r15
call fcn.1400691a0
cmp r13d, eax
jl 0x140070b55
mov rcx, r15
call fcn.140068d50
jmp case.0x14006faea.282
sub ebx, 0x8002
je 0x140070c8d
sub ebx, 1
je 0x140070bac
cmp ebx, 1
jne case.0x14006faea.282
movzx r8d, bl
jmp 0x140070c90
movzx eax, dil
and al, 1
movzx r9d, al
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], rax
mov byte [rbp + 0x40], r9b
shr dil, 1
and dil, 1
mov byte [rbp + 0x42], dil
mov rcx, qword [r15 + 0x128]
mov rax, qword [rcx]
xor r9d, 1
shl r9d, 4
sub r9d, 0x7fffffdd
lea r8, [rbp + 0x30]
lea rdx, [0x140073ce0]
call qword [rax + 0x340]
test rax, rax
jne 0x140070c0c
mov qword [r12], r13
mov al, 1
jmp 0x140070cad
mov qword [r12], 1
cmp qword [r15 + 0x130], r13
je 0x140070c82
mov qword [rbp - 0x50], reloc.WS2_32.dll_sendto
mov qword [rbp - 0x40], r13
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x34], xmm0
mov qword [rbp - 0x24], r13
mov dword [rbp - 0x1c], r13d
mov qword [rbp - 0x48], rax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x38], eax
mov rcx, qword [r15 + 0x130]
mov rax, qword [rcx]
lea rdx, [rbp - 0x50]
call qword [rax + 0x360]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], r13b
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8, str.killfocus
mov rdx, qword [r15 + 0x130]
mov rcx, r15
call fcn.1400724e0
mov qword [r15 + 0x130], r13
mov al, 1
jmp 0x140070cad
xor r8d, r8d
movzx r9d, dil
shr r9b, 1
and dil, 1
and r9b, 1
movzx edx, dil
mov rcx, r15
call fcn.140072cc0
xor al, al
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.140240e30
add rsp, 0x298
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret