Function at 0x18016cd30
Capabilities:
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 - 0x108]
sub rsp, 0x208
mov qword [rbp - 0x70], 0xfffffffffffffffe
movaps xmmword [rsp + 0x1f0], xmm6
mov rax, qword [0x1802d1460]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov r14, r9
mov r15, r8
mov ebx, edx
mov rdi, rcx
mov r13, qword [rbp + 0x170]
mov qword [rsp + 0x78], r13
cmp qword [rcx + 0x88], 0
je case.0x18016e294.280
xor esi, esi
mov r12d, esi
cmp dword [rcx + 0x360], esi
jle 0x18016cdf6
mov r13d, esi
nop dword [rax]
nop word [rax + rax]
mov byte [rsp + 0x68], sil
mov rax, qword [rdi + 0x358]
mov rcx, qword [rax + r13]
mov rax, qword [rcx]
lea rdx, [rsp + 0x68]
mov qword [rsp + 0x20], rdx
mov r9, r14
mov r8, r15
mov edx, ebx
call qword [rax]
mov rcx, rax
cmp byte [rsp + 0x68], sil
jne 0x18016ce45
inc r12d
add r13, 8
cmp r12d, dword [rdi + 0x360]
jl 0x18016cdb0
mov r13, qword [rsp + 0x78]
movzx r8d, byte [rdi + 0x1a1]
test r8b, r8b
je 0x18016ceca
mov eax, ebx
sub eax, 0x83
je 0x18016ce3a
sub eax, 2
je 0x18016ce3a
sub eax, 1
jne 0x18016ceca
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x18016cedc
test r15, r15
sete sil
mov qword [r13], rsi
mov al, 1
jmp 0x18016f131
mov rax, qword [rsp + 0x78]
mov qword [rax], rcx
cmp ebx, 0x7b
je 0x18016ce6a
cmp ebx, 0x1ff
jbe 0x18016ce9c
cmp ebx, 0x203
jbe 0x18016cea3
cmp ebx, 0x20a
jne 0x18016ce9c
movsx eax, r14w
mov dword [rsp + 0x60], eax
shr r14, 0x10
movsx eax, r14w
mov dword [rsp + 0x64], eax
lea rdx, [rsp + 0x60]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x150], rax
mov al, 1
jmp 0x18016f131
movsx eax, r14w
mov dword [rsp + 0x78], eax
shr r14, 0x10
movsx eax, r14w
mov dword [rsp + 0x7c], eax
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x150], rax
mov al, 1
jmp 0x18016f131
cmp ebx, 0x111
ja 0x18016e258
je 0x18016e230
lea eax, [rbx - 5]
cmp eax, 0xfd
ja case.0x18016e294.280
lea rdx, sym.AliAuthSDK.dll_CB9L_7.qqAbQQMYOd__cGhb1_j__94QEyzIa__9fXt
movzx eax, byte [rdx + rax + 0x16f198]
mov ecx, dword [rdx + rax*4 + 0x16f15c]
add rcx, rdx
jmp rcx
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], rsi
mov word [rbp - 0x24], si
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rcx, qword [rdi + 0x130]
test rcx, rcx
je 0x18016cf5a
mov dword [rbp - 0x40], 0xa
mov qword [rbp - 0x38], rcx
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov rcx, qword [rdi + 0x138]
test rcx, rcx
je 0x18016cf7e
mov dword [rbp - 0x40], InitCommonControls
mov qword [rbp - 0x38], rcx
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov r8b, 1
xor edx, edx
mov rcx, rdi
call fcn.18016fbd0
mov rbx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetActiveWindow]
cmp rax, rbx
jne 0x18016cfe4
mov edx, 4
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindow]
mov rbx, rax
mov edx, 0xfffffff0
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetWindowLongW]
bt eax, 0x1e
jae 0x18016cfd6
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetParent]
mov rbx, rax
test rbx, rbx
je 0x18016cfe4
mov rcx, rbx
call qword [sym.imp.USER32.dll_SetFocus]
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je case.0x18016e294.280
call qword [sym.imp.USER32.dll_DestroyWindow]
mov qword [rdi + 0xd0], rsi
jmp case.0x18016e294.280
mov qword [r13], 1
mov al, 1
jmp 0x18016f131
xor eax, eax
mov rcx, qword [rdi + 0x88]
cmp qword [rdi + 0x120], rsi
jne 0x18016d083
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
mov qword [rbp], rax
lea rdx, [rbp - 0x40]
call qword [sym.imp.USER32.dll_BeginPaint]
mov r8d, 0xff000000
lea rdx, [rbp - 0x34]
mov rcx, qword [rdi + 0x90]
call fcn.180199470
lea rdx, [rbp - 0x40]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_EndPaint]
mov al, 1
jmp 0x18016f131
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rax
lea rdx, [rbp - 0x60]
call qword [sym.imp.USER32.dll_GetClientRect]
xor eax, eax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
cmp byte [rdi + 0x1a1], al
je 0x18016d13a
mov byte [rdi + 0x19f], 1
movups xmm0, xmmword [rdi + 0x1b8]
movups xmmword [rbp + 0x10], xmm0
lea rcx, [rdi + 0x1b8]
call qword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
je 0x18016d10a
xor eax, eax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
mov qword [rbp], rax
lea rdx, [rbp - 0x40]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_BeginPaint]
jmp 0x18016d06b
mov eax, dword [rbp + 0x18]
mov r8, qword [rbp - 0x58]
cmp eax, r8d
cmovg eax, r8d
mov dword [rbp + 0x18], eax
mov ecx, dword [rbp + 0x1c]
cmp ecx, dword [rbp - 0x54]
cmovg ecx, dword [rbp - 0x54]
mov dword [rbp + 0x1c], ecx
xor eax, eax
mov qword [rdi + 0x1b8], rax
mov qword [rdi + 0x1c0], rax
jmp 0x18016d15a
xor r8d, r8d
lea rdx, [rbp + 0x10]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x18016ce9c
mov r8, qword [rbp - 0x58]
cmp byte [rdi + 0x19e], sil
je 0x18016d171
mov dl, 1
mov rcx, rdi
call fcn.1801702b0
mov r8, qword [rbp - 0x58]
mov byte [rdi + 0x322], 1
cmp byte [rdi + 0x19d], sil
je 0x18016d389
mov byte [rdi + 0x19d], sil
lea rcx, [rbp - 0x60]
call qword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x18016d427
mov rax, qword [rdi + 0x120]
cmp byte [rax + 0x1b0], sil
je 0x18016d270
movaps xmm6, xmmword [rbp - 0x60]
movaps xmmword [rbp - 0x50], xmm6
mov rcx, qword [rdi + 0x98]
test rcx, rcx
je 0x18016d1cc
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x18016d1de
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, qword [rdi + 0xa8]
test rcx, rcx
je 0x18016d1f0
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, qword [rdi + 0xb8]
test rcx, rcx
je 0x18016d202
call qword [sym.imp.GDI32.dll_DeleteObject]
mov qword [rdi + 0x98], rsi
mov qword [rdi + 0xa0], rsi
mov qword [rdi + 0xa8], rsi
mov qword [rdi + 0xb8], rsi
cmp byte [rdi + 0x1a1], sil
je 0x18016d24f
mov eax, dword [rdi + 0x1a4]
add dword [rbp - 0x50], eax
mov eax, dword [rdi + 0x1a8]
add dword [rbp - 0x4c], eax
mov eax, dword [rdi + 0x1ac]
sub dword [rbp - 0x48], eax
mov eax, dword [rdi + 0x1b0]
sub dword [rbp - 0x44], eax
movaps xmm6, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x20], xmm6
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r8b, 1
lea rdx, [rbp + 0x20]
call qword [rax + 0x170]
jmp 0x18016d31d
mov rcx, qword [rdi + 0x3b8]
test rcx, rcx
je 0x18016d281
call fcn.1801cc408
mov qword [rdi + 0x3b8], rsi
mov qword [rdi + 0x3c0], rsi
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r9d, 0x80000009
xor r8d, r8d
lea rdx, [0x180172ba0]
call qword [rax + 0x2f8]
mov r14d, esi
cmp dword [rdi + 0x3c0], esi
jle 0x18016d31d
mov r15, rsi
nop dword [rax]
mov rax, qword [rdi + 0x3b8]
mov rbx, qword [r15 + rax]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x2e8]
mov rcx, rbx
test al, al
mov rax, qword [rbx]
jne 0x18016d2e9
call qword [rax + 0x158]
jmp 0x18016d2f3
lea rdx, [rbp + 0x30]
call qword [rax + 0x160]
movups xmm0, xmmword [rax]
mov rax, qword [rbx]
movaps xmmword [rbp + 0x20], xmm0
mov r8b, 1
lea rdx, [rbp + 0x20]
mov rcx, rbx
call qword [rax + 0x170]
inc r14d
add r15, 8
cmp r14d, dword [rdi + 0x3c0]
jl 0x18016d2c0
cmp byte [rdi + 0x19c], sil
je 0x18016d427
mov byte [rdi + 0x19c], sil
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], sil
mov qword [rsp + 0x20], rsi
xor r9d, r9d
lea r8, str.windowinit
mov rdx, qword [rdi + 0x120]
mov rcx, rdi
call fcn.180170830
cmp byte [rdi + 0x1a1], sil
je 0x18016d427
cmp byte [rdi + 0x1b4], sil
je 0x18016d427
mov rcx, rdi
call fcn.18016f3a0
mov byte [rdi + 0x322], sil
mov al, 1
jmp 0x18016f131
cmp byte [rdi + 0x1a1], sil
je 0x18016d427
cmp byte [rdi + 0x1b4], sil
je 0x18016d427
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x50], xmm0
mov r9, qword [rdi + 0xb0]
test r9, r9
je 0x18016d3e3
mov rdx, r8
shr rdx, 0x20
mov rcx, qword [rbp - 0x60]
mov rax, rcx
shr rax, 0x20
sub edx, eax
sub r8d, ecx
imul edx, r8d
shl edx, 2
movsxd r8, edx
xor edx, edx
mov rcx, r9
call fcn.1801c9e80
mov eax, dword [rdi + 0x1a4]
add dword [rbp - 0x50], eax
mov eax, dword [rdi + 0x1a8]
add dword [rbp - 0x4c], eax
mov eax, dword [rdi + 0x1ac]
sub dword [rbp - 0x48], eax
mov eax, dword [rdi + 0x1b0]
sub dword [rbp - 0x44], eax
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x20], xmm0
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r8b, 1
lea rdx, [rbp + 0x20]
call qword [rax + 0x170]
cmp byte [rdi + 0x19f], sil
je 0x18016d486
cmp qword [rdi + 0xa8], rsi
jne 0x18016d486
mov rcx, qword [rdi + 0x90]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov qword [rdi + 0x98], rax
mov r8d, dword [rbp - 0x54]
mov edx, dword [rbp - 0x58]
mov rcx, qword [rdi + 0x90]
sub r8d, dword [rbp - 0x5c]
sub edx, dword [rbp - 0x60]
cmp byte [rdi + 0x1a1], sil
je 0x18016d479
lea r9, [rdi + 0xb0]
call fcn.1801967a0
jmp 0x18016d47f
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov qword [rdi + 0xa8], rax
xor eax, eax
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x90], rax
lea rdx, [rbp + 0x50]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_BeginPaint]
cmp byte [rdi + 0x19f], sil
je 0x18016dc12
mov rdx, qword [rdi + 0xa8]
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.GDI32.dll_SelectObject]
mov qword [rbp - 0x80], rax
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.GDI32.dll_SaveDC]
mov r15d, eax
mov dword [rsp + 0x60], eax
cmp byte [rdi + 0x1a1], sil
je 0x18016d57c
cmp qword [rdi + 0x2e0], rsi
jne 0x18016d57c
mov r8d, dword [rbp - 0x54]
mov r9d, r8d
sub r9d, dword [rbp + 0x1c]
mov ecx, r8d
mov r10d, dword [rbp + 0x14]
sub ecx, r10d
cmp r9d, ecx
jge 0x18016d57c
mov ecx, dword [rbp + 0x18]
nop
movsxd rdx, dword [rbp + 0x10]
cmp edx, ecx
jge 0x18016d56e
mov r8, rdx
nop dword [rax + rax]
mov eax, dword [rbp - 0x58]
sub eax, dword [rbp - 0x60]
imul eax, r9d
movsxd rcx, eax
add rcx, r8
mov rax, qword [rdi + 0xb0]
mov dword [rax + rcx*4], esi
inc edx
inc r8
mov ecx, dword [rbp + 0x18]
cmp edx, ecx
jl 0x18016d540
mov r8d, dword [rbp - 0x54]
mov r10d, dword [rbp + 0x14]
inc r9d
mov eax, r8d
sub eax, r10d
cmp r9d, eax
jl 0x18016d530
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rbp + 0x10]
mov rdx, qword [rdi + 0x98]
call qword [rax + 0x348]
cmp byte [rdi + 0x1a1], sil
je 0x18016d7dc
mov r15d, esi
cmp dword [rdi + 0x380], esi
jle 0x18016d7d7
lea r14, [rdi + 0x378]
mov r12, rsi
mov rax, qword [r14]
mov rbx, qword [r12 + rax]
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x18016d5fd
lea r8d, [rax + 1]
mov edx, r15d
mov rcx, r14
call fcn.18016b210
lea rcx, [rdi + 0x388]
mov r8d, 1
mov edx, r15d
call fcn.18016b210
jmp 0x18016d7ca
inc r15d
add r12, 8
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x18016d7ca
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindowRect]
lea rdx, [rbp - 0x50]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
lea rdx, [rbp - 0x48]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
xor eax, eax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_IntersectRect]
test eax, eax
je 0x18016d7ca
mov qword [rsp + 0x78], rsi
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov r13, rax
mov r8d, dword [rbp - 0x44]
sub r8d, dword [rbp - 0x4c]
mov edx, dword [rbp - 0x48]
sub edx, dword [rbp - 0x50]
lea r9, [rsp + 0x78]
mov rcx, rax
call fcn.1801967a0
mov r14, rax
mov qword [rbp - 0x78], rax
mov edx, dword [rbp - 0x48]
sub edx, dword [rbp - 0x50]
mov ecx, dword [rbp - 0x44]
sub ecx, dword [rbp - 0x4c]
imul edx, ecx
shl edx, 2
movsxd r8, edx
xor edx, edx
mov rcx, qword [rsp + 0x78]
call fcn.1801c9e80
mov rdx, r14
mov rcx, r13
call qword [sym.imp.GDI32.dll_SelectObject]
mov qword [rsp + 0x70], rax
mov r9d, gethostname
mov r8, r13
mov edx, 0x317
mov rcx, rbx
call qword [sym.imp.USER32.dll_SendMessageW]
mov ebx, esi
mov r9d, dword [rbp - 0x44]
mov ecx, r9d
mov r14d, dword [rbp - 0x4c]
sub ecx, r14d
mov r10d, dword [rbp - 0x48]
mov r11d, dword [rbp - 0x50]
test ecx, ecx
jle 0x18016d76c
nop dword [rax]
nop dword [rax + rax]
mov edx, esi
mov r8, rsi
mov eax, r10d
sub eax, r11d
test eax, eax
jle 0x18016d760
nop
imul eax, ebx
movsxd rcx, eax
add rcx, r8
mov rax, qword [rsp + 0x78]
lea r9, [rax + rcx*4]
mov eax, dword [r9]
test eax, eax
je 0x18016d749
or eax, 0xff000000
mov dword [r9], eax
mov r10d, dword [rbp - 0x48]
mov r11d, dword [rbp - 0x50]
inc edx
inc r8
mov eax, r10d
sub eax, r11d
cmp edx, eax
jl 0x18016d720
mov r9d, dword [rbp - 0x44]
mov r14d, dword [rbp - 0x4c]
inc ebx
mov eax, r9d
sub eax, r14d
cmp ebx, eax
jl 0x18016d710
sub r9d, r14d
sub r10d, r11d
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], r9d
mov r9d, r10d
mov r8d, r14d
mov edx, r11d
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.GDI32.dll_BitBlt]
mov rdx, qword [rsp + 0x70]
mov rcx, r13
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, r13
call qword [sym.imp.GDI32.dll_DeleteDC]
lea r14, [rdi + 0x378]
cmp r15d, dword [rdi + 0x380]
jl 0x18016d5c0
mov r15d, dword [rsp + 0x60]
mov r14d, esi
cmp dword [rdi + 0x370], esi
jle 0x18016d81f
mov rbx, rsi
nop word [rax + rax]
mov rax, qword [rdi + 0x368]
mov rcx, qword [rbx + rax]
mov rax, qword [rcx]
lea r8, [rbp + 0x10]
mov rdx, qword [rdi + 0x98]
call qword [rax + 0x380]
inc r14d
lea rbx, [rbx + 8]
cmp r14d, dword [rdi + 0x370]
jl 0x18016d7f0
mov edx, r15d
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.GDI32.dll_RestoreDC]
cmp byte [rdi + 0x1a1], sil
je 0x18016db42
xor eax, eax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
lea rdx, [rbp + 0x20]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov r12d, dword [rbp - 0x58]
mov rcx, qword [rbp - 0x60]
sub r12d, ecx
mov edx, dword [rbp - 0x54]
mov r13d, edx
sub r13d, dword [rbp - 0x5c]
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x50], xmm0
add ecx, dword [rdi + 0x1a4]
mov dword [rbp - 0x50], ecx
mov eax, dword [rdi + 0x1a8]
add dword [rbp - 0x4c], eax
mov eax, dword [rdi + 0x1ac]
sub dword [rbp - 0x48], eax
mov eax, dword [rdi + 0x1b0]
sub dword [rbp - 0x44], eax
cmp qword [rdi + 0x2e0], rsi
je 0x18016dac5
cmp qword [rdi + 0xb8], rsi
jne 0x18016d958
mov rcx, qword [rdi + 0x90]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov qword [rdi + 0xa0], rax
lea r9, [rdi + 0xc0]
mov r8d, r13d
mov edx, r12d
mov rcx, qword [rdi + 0x90]
call fcn.1801967a0
mov qword [rdi + 0xb8], rax
mov r8d, r13d
imul r8d, r12d
shl r8d, 2
xor edx, edx
mov rcx, qword [rdi + 0xc0]
call fcn.1801c9e80
mov rdx, qword [rdi + 0xb8]
mov rcx, qword [rdi + 0xa0]
call qword [sym.imp.GDI32.dll_SelectObject]
nop
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x30], xmm0
lea r8, [rbp - 0x40]
lea rdx, [rbp + 0x30]
mov rcx, qword [rdi + 0xa0]
call fcn.180195f00
lea rax, [rdi + 0x1c8]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x50]
lea r8, [rbp - 0x50]
mov rdx, rdi
mov rcx, qword [rdi + 0xa0]
call fcn.180198630
nop
jmp 0x18016d9bc
cmp byte [rdi + 0x1b4], sil
je 0x18016d9c8
mov r8d, r13d
imul r8d, r12d
shl r8d, 2
xor edx, edx
mov rcx, qword [rdi + 0xc0]
call fcn.1801c9e80
nop
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x30], xmm0
lea r8, [rbp - 0x40]
lea rdx, [rbp + 0x30]
mov rcx, qword [rdi + 0xa0]
call fcn.180195f00
lea rax, [rdi + 0x1c8]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x50]
lea r8, [rbp - 0x50]
mov rdx, rdi
mov rcx, qword [rdi + 0xa0]
call fcn.180198630
nop
lea rcx, [rbp - 0x40]
call fcn.180195ec0
mov edx, dword [rbp - 0x54]
mov rax, qword [rdi + 0x2e0]
cmp byte [rax + 0x20], 0
je 0x18016dac5
mov r15d, edx
sub r15d, dword [rbp + 0x1c]
mov eax, edx
mov r8d, dword [rbp + 0x14]
sub eax, r8d
cmp r15d, eax
jge 0x18016dac5
mov ecx, dword [rbp + 0x18]
nop word [rax + rax]
movsxd r14, dword [rbp + 0x10]
cmp r14d, ecx
jge 0x18016dab4
mov ebx, r15d
imul ebx, r12d
add rbx, r14
shl rbx, 2
nop dword [rax + rax]
mov r11, qword [rdi + 0xb0]
mov rax, qword [rdi + 0xc0]
movzx r10d, byte [rax + rbx + 3]
mov r8d, dword [r11 + rbx]
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 [r11 + rbx], r9d
inc r14d
lea rbx, [rbx + 4]
mov ecx, dword [rbp + 0x18]
cmp r14d, ecx
jl 0x18016da20
mov edx, dword [rbp - 0x54]
mov r8d, dword [rbp + 0x14]
inc r15d
mov eax, edx
sub eax, r8d
cmp r15d, eax
jl 0x18016da00
mov word [rsp + 0x60], 0
movzx eax, byte [rdi + 0x1a0]
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 - 0x78], r12d
mov dword [rbp - 0x74], r13d
mov qword [rsp + 0x78], rsi
mov dword [rsp + 0x40], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], esi
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + 0x98]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x78]
lea r8, [rsp + 0x70]
mov rdx, qword [rdi + 0x90]
mov rcx, qword [rdi + 0x88]
call qword [0x1802f0d78]
jmp 0x18016db84
mov ecx, dword [rbp + 0x1c]
mov r8d, dword [rbp + 0x14]
sub ecx, r8d
mov r9d, dword [rbp + 0x18]
mov edx, dword [rbp + 0x10]
sub r9d, edx
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0x30], edx
mov rax, qword [rdi + 0x98]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [rdi + 0x90]
call qword [sym.imp.GDI32.dll_BitBlt]
mov rdx, qword [rbp - 0x80]
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.GDI32.dll_SelectObject]
cmp byte [rdi + 0x11d], 0
je 0x18016dc4f
cmp byte [rdi + 0x1a1], 0
jne 0x18016dc4f
mov rdx, qword [0x1802f0d70]
mov rcx, qword [rdi + 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 [rdi + 0x90]
call qword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [rbp + 0x1c]
mov dword [rsp + 0x20], ecx
mov r9d, dword [rbp + 0x18]
mov r8d, dword [rbp + 0x14]
mov edx, dword [rbp + 0x10]
mov rcx, qword [rdi + 0x90]
call qword [sym.imp.GDI32.dll_Rectangle]
mov rdx, rbx
mov rcx, qword [rdi + 0x90]
call qword [sym.imp.GDI32.dll_SelectObject]
jmp 0x18016dc4f
mov rcx, qword [rdi + 0x90]
call qword [sym.imp.GDI32.dll_SaveDC]
mov ebx, eax
mov rcx, qword [rdi + 0x120]
mov r10, qword [rcx]
xor r9d, r9d
lea r8, [rbp + 0x10]
mov rdx, qword [rdi + 0x90]
call qword [r10 + 0x348]
mov edx, ebx
mov rcx, qword [rdi + 0x90]
call qword [sym.imp.GDI32.dll_RestoreDC]
lea rdx, [rbp + 0x50]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_EndPaint]
mov byte [rdi + 0x322], 0
mov byte [rdi + 0x1b4], 0
cmp byte [rdi + 0x19d], 0
je 0x18016ce9c
mov rcx, rdi
call fcn.18016f3a0
mov al, 1
jmp 0x18016f131
mov eax, dword [rdi + 0x158]
test eax, eax
jle 0x18016dc98
mov dword [r14 + 0x18], eax
mov eax, dword [rdi + 0x15c]
test eax, eax
jle 0x18016dca6
mov dword [r14 + 0x1c], eax
mov eax, dword [rdi + 0x160]
test eax, eax
jle 0x18016dcb4
mov dword [r14 + 0x20], eax
mov eax, dword [rdi + 0x164]
test eax, eax
jle case.0x18016e294.280
mov dword [r14 + 0x24], eax
jmp case.0x18016e294.280
mov rax, qword [rdi + 0x128]
test rax, rax
je 0x18016dd24
mov qword [rbp - 0x40], reloc.WS2_32.dll_shutdown
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
mov rcx, qword [rdi + 0x128]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov rcx, qword [rdi + 0x120]
test rcx, rcx
je 0x18016dd35
call fcn.180176fb0
cmp byte [rdi + 0x1a1], sil
je 0x18016ce9c
mov rcx, rdi
call fcn.18016f3a0
mov al, 1
jmp 0x18016f131
cmp byte [rdi + 0x11c], sil
je case.0x18016e294.280
mov qword [r13], 3
mov al, 1
jmp 0x18016f131
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
cmp byte [rdi + 0x321], sil
jne case.0x18016e294.280
movsx eax, r14w
mov dword [rsp + 0x78], eax
shr r14, 0x10
movsx eax, r14w
mov dword [rsp + 0x7c], eax
lea rdx, [rsp + 0x78]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x150], rax
mov rcx, qword [rdi + 0x138]
test rcx, rcx
je case.0x18016e294.280
mov qword [rbp - 0x40], reloc.COMCTL32.dll_InitCommonControls
mov dword [rbp - 0x30], esi
mov word [rbp - 0x24], si
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x2c], rax
mov word [rbp - 0x22], r15w
mov qword [rbp - 0x18], rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rcx, qword [rdi + 0x138]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov qword [rdi + 0x138], rsi
jmp case.0x18016e294.280
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
mov rax, qword [rdi + 0x128]
test rax, rax
je case.0x18016e294.280
mov qword [rbp - 0x40], 5
mov dword [rbp - 0x30], esi
mov word [rbp - 0x22], si
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
mov word [rbp - 0x24], r15w
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rcx, qword [rdi + 0x128]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
jmp case.0x18016e294.280
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
mov rax, qword [rdi + 0x128]
test rax, rax
je case.0x18016e294.280
mov qword [rbp - 0x40], 3
mov dword [rbp - 0x30], esi
mov word [rbp - 0x22], si
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
mov word [rbp - 0x24], r15w
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rcx, qword [rdi + 0x128]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov rax, qword [rdi + 0x128]
mov qword [rdi + 0x140], rax
jmp case.0x18016e294.280
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
mov rax, qword [rdi + 0x140]
test rax, rax
je case.0x18016e294.280
mov qword [rbp - 0x40], 4
mov dword [rbp - 0x30], esi
mov word [rbp - 0x22], si
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
mov word [rbp - 0x24], r15w
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rcx, qword [rdi + 0x140]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov qword [rdi + 0x140], rsi
jmp case.0x18016e294.280
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
cmp r14w, 1
jne case.0x18016e294.280
cmp byte [rdi + 0x321], sil
jne 0x18016ce9c
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rdx, [rsp + 0x60]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x60]
mov qword [rbp - 0x80], rax
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rbp - 0x80]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov rbx, rax
test rax, rax
je case.0x18016e294.280
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xf8]
test al, 2
je case.0x18016e294.280
mov qword [rbp - 0x40], reloc.WS2_32.dll_socket
mov dword [rbp - 0x30], esi
mov dword [rbp - 0x24], esi
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
mov rax, qword [rsp + 0x60]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rax, qword [rbx]
lea rdx, [rbp - 0x40]
mov rcx, rbx
call qword [rax + 0x310]
movzx eax, r14b
jmp 0x18016f131
test r15, r15
je case.0x18016e294.280
call qword [sym.imp.USER32.dll_GetFocus]
mov rbx, rax
mov rcx, rax
call qword [sym.imp.USER32.dll_GetParent]
test rax, rax
je case.0x18016e294.280
cmp qword [rdi + 0x88], rax
je 0x18016e0a6
mov rbx, rax
mov rcx, rax
call qword [sym.imp.USER32.dll_GetParent]
test rax, rax
jne 0x18016e087
jmp case.0x18016e294.280
mov ecx, dword [rdi + 0x380]
test ecx, ecx
jle case.0x18016e294.280
mov rax, qword [rdi + 0x378]
nop dword [rax + rax]
cmp qword [rax], rbx
je 0x18016e0d4
inc esi
add rax, 8
cmp esi, ecx
jl 0x18016e0c0
jmp case.0x18016e294.280
movsxd rcx, esi
mov rax, qword [rdi + 0x388]
mov rdx, qword [rax + rcx*8]
cmp rdx, qword [rdi + 0x128]
je case.0x18016e294.280
xor r8d, r8d
mov rcx, rdi
call fcn.18016fbd0
jmp case.0x18016e294.280
test r14, r14
je 0x18016ce9c
lea edx, [rbx + 0x2000]
mov r9, r14
mov r8, r15
mov rcx, qword [r14]
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r13], rax
mov al, 1
jmp 0x18016f131
cmp r14d, 0xfffffffc
jne case.0x18016e294.280
mov rcx, qword [rdi + 0x120]
test rcx, rcx
je case.0x18016e294.280
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0xa8]
lea rdx, [0x1802ef15a]
lea ecx, [r14 + 0x34]
call fcn.1801c7d90
mov rbx, rax
mov qword [rbp - 0x80], rax
test rax, rax
je 0x18016e1a4
mov rax, qword [rdi + 0x120]
lea rcx, vtable.DuiLib::AccServer.2.0
mov qword [rbx], rcx
lea rcx, vtable.DuiLib::AccServer.1.0
mov qword [rbx + 8], rcx
lea rcx, vtable.DuiLib::AccServer.0
mov qword [rbx + 0x10], rcx
mov dword [rbx + 0x18], 1
mov qword [rbx + 0x20], rax
mov dword [rbx + 0x28], 1
jmp 0x18016e1a7
mov rbx, rsi
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 0xb0]
test rbx, rbx
je case.0x18016e294.280
mov qword [rsp + 0x60], rsi
mov rax, qword [rbx]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x18016e21c
mov r8, rcx
mov rdx, r15
lea rcx, [0x180231a08]
call qword [sym.imp.OLEACC.dll_LresultFromObject]
mov qword [r13], rax
test rax, rax
je 0x18016e217
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x18016ce9c
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov al, 1
jmp 0x18016f131
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je case.0x18016e294.280
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp case.0x18016e294.280
test r14, r14
je case.0x18016e294.280
mov r9, r14
mov r8, r15
mov edx, 0x2111
mov rcx, r14
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r13], rax
mov al, 1
jmp 0x18016f131
cmp ebx, 0x203
ja 0x18016e8ce
je 0x18016e7f5
lea eax, [rbx - 0x113]
cmp eax, 0xef
ja case.0x18016e294.280
lea rdx, sym.AliAuthSDK.dll_CB9L_7.qqAbQQMYOd__cGhb1_j__94QEyzIa__9fXt
movzx eax, byte [rdx + rax + 0x16f2b0]
mov ecx, dword [rdx + rax*4 + 0x16f298]
add rcx, rdx
jmp rcx
mov eax, 0x2000
cmp r15w, ax
jne 0x18016e2f0
test r8b, r8b
je 0x18016e2f0
lea rcx, [rdi + 0x1b8]
call qword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x18016e2f0
mov qword [rbp - 0x80], rsi
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne case.0x18016e294.280
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0xf]
mov rcx, rdi
call fcn.18016cd30
jmp case.0x18016e294.280
mov ecx, esi
mov r8d, dword [rdi + 0x340]
test r8d, r8d
jle case.0x18016e294.280
mov r9, qword [rdi + 0x88]
mov rdx, qword [rdi + 0x338]
mov rbx, qword [rdx]
cmp qword [rbx + 0x10], r9
jne 0x18016e328
movzx eax, r15w
cmp dword [rbx + 0x18], eax
jne 0x18016e328
cmp byte [rbx + 0x1c], sil
je 0x18016e339
inc ecx
add rdx, 8
cmp ecx, r8d
jge case.0x18016e294.280
jmp 0x18016e310
mov qword [rbp - 0x40], Ordinal_27
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], rsi
mov rax, qword [rbx]
mov qword [rbp - 0x38], rax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
mov eax, dword [rbx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], r14
mov rcx, qword [rbx]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
jmp case.0x18016e294.280
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
cmp byte [rdi + 0x320], sil
jne 0x18016e401
mov dword [rbp + 0x44], esi
mov dword [rbp + 0x30], Ordinal_27
mov dword [rbp + 0x34], 3
mov rax, qword [rdi + 0x88]
mov qword [rbp + 0x38], rax
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
jne 0x18016e3db
mov eax, dword [rdi + 0x118]
jmp 0x18016e3ed
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 [rdi + 0x320], 1
movsx eax, r14w
mov dword [rsp + 0x70], eax
mov rax, r14
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rbx, qword [rsp + 0x70]
mov qword [rdi + 0x150], rbx
mov qword [rbp - 0x80], rbx
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rbp - 0x80]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov r12, rax
test rax, rax
je 0x18016e463
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x110]
cmp rax, rdi
jne case.0x18016e294.280
mov dword [rbp - 0x3c], esi
mov word [rbp - 0x24], si
mov qword [rbp - 0x2c], rbx
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
cmp byte [rdi + 0x321], sil
jne 0x18016e5fe
mov qword [rsp + 0x70], rbx
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rsp + 0x70]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov r12, rax
test rax, rax
je 0x18016e4d9
mov rax, qword [rax]
mov rcx, r12
call qword [rax + 0x110]
cmp rax, rdi
jne case.0x18016e294.280
mov rax, qword [rdi + 0x130]
cmp r12, rax
je 0x18016e5cd
test rax, rax
je 0x18016e5cd
mov dword [rbp - 0x40], 0xa
mov qword [rbp - 0x38], rax
movsxd rdx, dword [rdi + 0x3d0]
mov qword [rbp - 0x50], rsi
mov dword [rbp - 0x48], esi
mov dword [rbp - 0x44], edx
test edx, edx
jle 0x18016e528
mov rcx, rdx
shl rcx, 3
call fcn.1801d17e4
mov qword [rbp - 0x50], rax
mov edx, dword [rdi + 0x3d0]
lea rcx, [rbp - 0x50]
call fcn.18016b030
movsxd r8, dword [rdi + 0x3d0]
shl r8, 3
mov rdx, qword [rdi + 0x3c8]
mov rcx, qword [rbp - 0x50]
call fcn.1801c9a10
mov r14d, esi
cmp dword [rbp - 0x48], esi
jle 0x18016e582
mov rbx, rsi
nop word [rax + rax]
mov rax, qword [rbp - 0x50]
mov rcx, qword [rax + rbx]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
inc r14d
lea rbx, [rbx + 8]
cmp r14d, dword [rbp - 0x48]
jl 0x18016e560
mov rcx, qword [rdi + 0x130]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov qword [rdi + 0x130], rsi
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je 0x18016e5bf
lea r9, [rdi + 0xd8]
xor r8d, r8d
mov edx, 0x411
call qword [sym.imp.USER32.dll_SendMessageW]
nop
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x18016e5cd
call fcn.1801cc408
cmp r12, qword [rdi + 0x130]
je 0x18016e5fe
test r12, r12
je 0x18016e5fe
mov dword [rbp - 0x40], InitCommonControls
mov qword [rbp - 0x38], r12
mov rax, qword [r12]
lea rdx, [rbp - 0x40]
mov rcx, r12
call qword [rax + 0x310]
mov qword [rdi + 0x130], r12
mov rcx, qword [rdi + 0x138]
test rcx, rcx
je 0x18016e627
mov dword [rbp - 0x40], 9
mov qword [rbp - 0x38], rcx
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
jmp case.0x18016e294.280
test r12, r12
je case.0x18016e294.280
mov dword [rbp - 0x40], 9
mov qword [rbp - 0x38], r12
mov rax, qword [r12]
mov rcx, r12
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
jmp case.0x18016e294.280
cmp byte [rdi + 0x11c], sil
jne 0x18016e667
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_SetFocus]
mov rcx, qword [rdi + 0x120]
test rcx, rcx
je case.0x18016e294.280
movsx eax, r14w
mov dword [rsp + 0x70], eax
mov rax, r14
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rbx, qword [rsp + 0x70]
mov qword [rdi + 0x150], rbx
mov qword [rbp - 0x80], rbx
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rbp - 0x80]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov r12, rax
test rax, rax
je case.0x18016e294.280
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x110]
cmp rax, rdi
jne case.0x18016e294.280
mov qword [rdi + 0x138], r12
mov rdx, qword [r12]
mov rcx, r12
call qword [rdx + 0x2e0]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_SetCapture]
mov byte [rdi + 0x321], 1
mov qword [rbp - 0x40], reloc.WS2_32.dll_listen
mov dword [rbp - 0x30], esi
mov word [rbp - 0x24], si
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x2c], rbx
mov word [rbp - 0x22], r15w
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
jmp 0x18016e63b
cmp byte [rdi + 0x321], sil
je 0x18016e746
call qword [sym.imp.USER32.dll_ReleaseCapture]
mov byte [rdi + 0x321], sil
movsx eax, r14w
mov dword [rsp + 0x70], eax
mov rax, r14
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x70]
mov qword [rdi + 0x150], rax
mov rcx, qword [rdi + 0x138]
test rcx, rcx
je case.0x18016e294.280
mov qword [rbp - 0x40], setsockopt
mov dword [rbp - 0x30], esi
mov word [rbp - 0x24], si
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x2c], rax
mov word [rbp - 0x22], r15w
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rcx, qword [rdi + 0x138]
mov qword [rdi + 0x138], rsi
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
jmp case.0x18016e294.280
test r14, r14
je case.0x18016e294.280
lea edx, [rbx + 0x2000]
mov r9, r14
mov r8, r15
mov rcx, r14
call qword [sym.imp.USER32.dll_SendMessageW]
mov qword [r13], rax
test rax, rax
je case.0x18016e294.280
mov al, 1
jmp 0x18016f131
cmp byte [rdi + 0x11c], sil
jne 0x18016e80b
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_SetFocus]
movsx eax, r14w
mov dword [rsp + 0x70], eax
shr r14, 0x10
movsx eax, r14w
mov dword [rsp + 0x74], eax
mov rbx, qword [rsp + 0x70]
mov qword [rdi + 0x150], rbx
mov qword [rbp - 0x80], rbx
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rbp - 0x80]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov r14, rax
test rax, rax
je case.0x18016e294.280
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x110]
cmp rax, rdi
jne case.0x18016e294.280
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_SetCapture]
mov byte [rdi + 0x321], 1
mov qword [rbp - 0x40], reloc.WS2_32.dll_recv
mov dword [rbp - 0x30], esi
mov word [rbp - 0x24], si
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x2c], rbx
mov word [rbp - 0x22], r15w
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rax, qword [r14]
lea rdx, [rbp - 0x40]
mov rcx, r14
call qword [rax + 0x310]
mov qword [rdi + 0x138], r14
jmp case.0x18016e294.280
cmp ebx, 0x2a3
ja 0x18016ef31
je 0x18016ee14
sub ebx, 0x204
je 0x18016ed41
sub ebx, 6
je 0x18016ec39
cmp ebx, 0x97
jne case.0x18016e294.280
mov rcx, qword [rdi + 0x120]
test rcx, rcx
je case.0x18016e294.280
mov byte [rdi + 0x320], sil
movsx eax, r14w
mov dword [rsp + 0x60], eax
mov rax, r14
shr rax, 0x10
cwde
mov dword [rsp + 0x64], eax
mov rbx, qword [rsp + 0x60]
mov qword [rbp - 0x80], rbx
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rbp - 0x80]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov r12, rax
test rax, rax
je case.0x18016e294.280
mov rax, qword [rdi + 0x130]
test rax, rax
je 0x18016e9ad
mov qword [rbp - 0x40], InitCommonControls
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov qword [rbp - 0x2c], rbx
call fcn.18016bfb0
mov word [rbp - 0x22], ax
mov rcx, qword [rdi + 0x130]
mov rax, qword [rcx]
lea rdx, [rbp - 0x40]
call qword [rax + 0x310]
mov rax, qword [r12]
lea rdx, [rbp + 0x50]
mov rcx, r12
call qword [rax + 0x230]
nop
mov rcx, qword [rbp + 0x50]
cmp word [rcx], 0
jne 0x18016e9e2
lea rax, [rbp + 0x58]
cmp rcx, rax
je 0x18016ce9c
call fcn.1801cc408
mov al, 1
jmp 0x18016f131
lea rcx, [rbp + 0x50]
call fcn.180172710
lea rbx, [rdi + 0xd8]
mov qword [rdi + 0xf0], rsi
mov qword [rdi + 0xf8], rsi
mov qword [rdi + 0x110], rsi
mov dword [rbx], 0x40
mov dword [rdi + 0xdc], 1
mov rax, qword [rdi + 0x88]
mov qword [rdi + 0xe0], rax
mov qword [rdi + 0xe8], rax
mov rax, qword [0x1802f0d58]
mov qword [rdi + 0x100], rax
mov rax, qword [rbp + 0x50]
mov qword [rdi + 0x108], rax
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x158]
movups xmm0, xmmword [rax]
movups xmmword [rdi + 0xf0], xmm0
cmp qword [rdi + 0xd0], 0
jne 0x18016eb37
mov qword [rsp + 0x58], rsi
mov rax, qword [0x1802f0d58]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rsi
mov rax, qword [rdi + 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 [rdi + 0xd0], rax
mov r9, rbx
xor r8d, r8d
mov edx, 0x432
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x248]
movsxd r9, eax
xor r8d, r8d
mov edx, 0x418
mov rcx, qword [rdi + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
xor r8d, r8d
mov edx, 0x436
mov rcx, qword [rdi + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
mov edx, 0x411
mov r8d, 1
mov rcx, qword [rdi + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rax, qword [rdi + 0x148]
test rax, rax
jne 0x18016eb4f
mov qword [rdi + 0x148], r12
jmp 0x18016ebf4
mov rcx, r12
cmp rax, r12
mov rax, qword [r12]
jne 0x18016eba3
call qword [rax + 0x248]
cmp dword [rdi + 0xcc], eax
je 0x18016ebc1
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x248]
movsxd r9, eax
xor r8d, r8d
mov edx, 0x418
mov rcx, qword [rdi + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x248]
mov dword [rdi + 0xcc], eax
jmp 0x18016ebc1
call qword [rax + 0x248]
movsxd r9, eax
xor r8d, r8d
mov edx, 0x418
mov rcx, qword [rdi + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
xor r8d, r8d
mov edx, 0x436
mov rcx, qword [rdi + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, rbx
mov r8d, 1
mov edx, 0x411
mov rcx, qword [rdi + 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 [rdi + 0xd0]
call qword [sym.imp.USER32.dll_SendMessageW]
nop
lea rax, [rbp + 0x58]
mov rcx, qword [rbp + 0x50]
cmp rcx, rax
je 0x18016ce9c
call fcn.1801cc408
mov al, 1
jmp 0x18016f131
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
movsx eax, r14w
mov dword [rsp + 0x78], eax
mov rax, r14
shr rax, 0x10
cwde
mov dword [rsp + 0x7c], eax
lea rdx, [rsp + 0x78]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_ScreenToClient]
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x150], rax
mov qword [rbp - 0x80], rax
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rbp - 0x80]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov rbx, rax
test rax, rax
je case.0x18016e294.280
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x110]
cmp rax, rdi
jne case.0x18016e294.280
mov qword [rbp - 0x40], reloc.WS2_32.dll_select
mov dword [rbp - 0x30], esi
mov dword [rbp - 0x24], esi
mov qword [rbp - 0x38], rbx
shr r15, 0x10
movzx eax, r15w
shr rax, 0xf
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], r14
mov rax, qword [rdi + 0x150]
mov qword [rbp - 0x2c], rax
call fcn.18016bfb0
mov word [rbp - 0x22], ax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rax, qword [rbx]
lea rdx, [rbp - 0x40]
mov rcx, rbx
call qword [rax + 0x310]
movzx r9d, word [rdi + 0x154]
shl r9, 0x10
movzx eax, word [rdi + 0x150]
or r9, rax
xor r8d, r8d
mov edx, 0x200
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_SendMessageW]
jmp case.0x18016e294.280
cmp byte [rdi + 0x11c], sil
jne 0x18016ed57
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_SetFocus]
movsx eax, r14w
mov dword [rsp + 0x70], eax
mov rax, r14
shr rax, 0x10
cwde
mov dword [rsp + 0x74], eax
mov rbx, qword [rsp + 0x70]
mov qword [rdi + 0x150], rbx
mov qword [rbp - 0x80], rbx
mov rcx, qword [rdi + 0x120]
mov rax, qword [rcx]
mov r9d, reloc.WS2_32.dll_setsockopt
lea r8, [rbp - 0x80]
lea rdx, [0x180172a70]
call qword [rax + 0x2f8]
mov r12, rax
test rax, rax
je case.0x18016e294.280
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x110]
cmp rax, rdi
jne case.0x18016e294.280
mov rdx, qword [r12]
mov rcx, r12
call qword [rdx + 0x2e0]
mov qword [rbp - 0x40], reloc.WS2_32.dll_ntohs
mov dword [rbp - 0x30], esi
mov word [rbp - 0x24], si
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x2c], rbx
mov word [rbp - 0x22], r15w
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbp - 0x30], eax
mov rax, qword [r12]
lea rdx, [rbp - 0x40]
mov rcx, r12
call qword [rax + 0x310]
mov qword [rdi + 0x138], r12
jmp case.0x18016e294.280
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
mov rcx, qword [rdi + 0xd0]
test rcx, rcx
je 0x18016ee42
lea r9, [rdi + 0xd8]
xor r8d, r8d
mov edx, 0x411
call qword [sym.imp.USER32.dll_SendMessageW]
cmp byte [rdi + 0x320], sil
je 0x18016ef25
mov qword [rsp + 0x60], rsi
xor eax, eax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
lea rcx, [rsp + 0x60]
call qword [sym.imp.USER32.dll_GetCursorPos]
lea rdx, [rbp + 0x20]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x18016ef09
call qword [sym.imp.USER32.dll_GetActiveWindow]
cmp rax, qword [rdi + 0x88]
jne 0x18016ef09
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x18016ef09
movzx r9d, word [rsp + 0x64]
shl r9d, 0x10
movzx eax, word [rsp + 0x60]
or r9, rax
xor r8d, r8d
mov edx, 0x84
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [rdi + 0x88]
cmp rax, 1
jne 0x18016ef00
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 0x18016ef10
mov r9, 0xffffffffffffffff
jmp 0x18016ef17
mov r9, 0xffffffffffffffff
mov rcx, qword [rdi + 0x88]
xor r8d, r8d
mov edx, 0x200
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [rdi + 0x320], sil
jmp case.0x18016e294.280
cmp ebx, 0x318
je 0x18016f046
cmp ebx, 0x8001
jne case.0x18016e294.280
mov byte [rdi + 0x324], sil
cmp dword [rdi + 0x3b0], esi
jle 0x18016efeb
mov rax, qword [rdi + 0x3a8]
mov r15, qword [rax]
test r15, r15
je 0x18016efeb
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [rdi + 0x3a8]
call fcn.18016b210
mov rcx, qword [r15 + 0x110]
test rcx, rcx
je 0x18016ef9e
cmp dword [rcx + 0x60], esi
jle 0x18016ef9e
add rcx, 0x58
mov rdx, r15
call fcn.18019cdb0
mov ebx, esi
cmp dword [rdi + 0x330], esi
jle 0x18016efd1
mov r14, rsi
nop dword [rax + rax]
mov rax, qword [rdi + 0x328]
mov rcx, qword [r14 + rax]
mov rax, qword [rcx]
mov rdx, r15
call qword [rax]
inc ebx
lea r14, [r14 + 8]
cmp ebx, dword [rdi + 0x330]
jl 0x18016efb0
mov rcx, r15
call fcn.18015b360
mov edx, 0x138
mov rcx, r15
call fcn.1801c74d4
jmp 0x18016ef50
mov ebx, esi
cmp dword [rdi + 0x3a0], esi
jle 0x18016f022
mov r14, rsi
nop dword [rax + rax]
mov rax, qword [rdi + 0x398]
mov rcx, qword [r14 + rax]
mov rax, qword [rcx]
call qword [rax + Ordinal_211]
inc ebx
lea r14, [r14 + 8]
cmp ebx, dword [rdi + 0x3a0]
jl 0x18016f000
mov rcx, qword [rdi + 0x398]
test rcx, rcx
je 0x18016f033
call fcn.1801cc408
mov qword [rdi + 0x398], rsi
mov qword [rdi + 0x3a0], rsi
jmp case.0x18016e294.280
cmp qword [rdi + 0x120], rsi
je case.0x18016e294.280
lea rdx, [rbp + 0x30]
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetClientRect]
mov rcx, r15
call qword [sym.imp.GDI32.dll_SaveDC]
mov esi, eax
mov rcx, qword [rdi + 0x120]
mov r10, qword [rcx]
xor r9d, r9d
lea r8, [rbp + 0x30]
mov rdx, r15
call qword [r10 + 0x348]
test r14b, 0x10
je 0x18016f124
mov edx, 5
mov rcx, qword [rdi + 0x88]
call qword [sym.imp.USER32.dll_GetWindow]
mov rbx, rax
test rax, rax
je 0x18016f124
or r14, 2
xor eax, eax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rax
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindowRect]
mov r9d, 2
lea r8, [rbp - 0x50]
mov rdx, qword [rdi + 0x88]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MapWindowPoints]
mov r8d, dword [rbp - 0x4c]
neg r8d
mov edx, dword [rbp - 0x50]
neg edx
xor r9d, r9d
mov rcx, r15
call qword [sym.imp.GDI32.dll_SetWindowOrgEx]
mov r9, r14
mov r8, r15
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 0x18016f0b2
mov edx, esi
mov rcx, r15
call qword [sym.imp.GDI32.dll_RestoreDC]
xor al, al
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.1801c74b0
movaps xmm6, xmmword [rsp + 0x1f0]
add rsp, 0x208
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret