Function at 0x1400777f0
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
xchg rcx, rdi
mov qword [rsp + 0x20], rcx
xchg rdi, rcx
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r12
push r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov r14, r9
mov ebx, r8d
xchg r12, r15
mov r12, rdx
xchg r12, r15
mov rdi, rcx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x29], xmm0
xchg rbp, r13
movups xmmword [r13 - 0x19], xmm0
xchg rbp, r13
xchg r13, rbp
movups xmmword [r13 - 9], xmm0
xchg r13, rbp
movups xmmword [rbp + 7], xmm0
xchg rdi, rax
mov qword [rbp + 0x17], rdi
xchg rdi, rax
cmp byte [rcx + 0x31], al
je 0x140077d12
cmp ebx, 0x14
je 0x140077caa
lock inc word [rcx + 0x32]
mov esi, 0x12b1071
xor esi, 0x73d137b9
sub esi, 0x22e87d94
sub esi, 0x3760bb9d
add esi, 0x63e851aa
xor esi, 0xa234beaa
cmp qword [rcx + 0x40], rax
jne 0x1400778db
xor r9d, r9d
lea r8d, [rax + 0xf]
mov edx, esi
xchg r15, rcx
mov r15, rcx
xchg rcx, r15
call qword [sym.imp.USER32.dll_SetTimer]
mov qword [rdi + 0x40], rax
mov qword [rdi + 0x48], r15
mov qword [rbp - 0x49], rdi
cmp ebx, 0xf
jne 0x140077c07
lea rdx, [rbp - 0x29]
mov rcx, r15
call qword [sym.imp.USER32.dll_BeginPaint]
xchg r12, r15
mov r15, rax
xchg r15, r12
xchg rcx, r15
mov r15, rax
xchg rcx, r15
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
xchg r14, rax
mov rax, r14
xchg r14, rax
mov r8d, dword [rdi + 0x8c]
mov edx, dword [rdi + 0x88]
xchg rcx, r8
mov r8, r12
xchg r8, rcx
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
xchg rdx, rax
mov r13, rdx
xchg rdx, rax
xchg r15, rax
mov rdx, r15
xchg r15, rax
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
call qword [sym.imp.GDI32.dll_SelectObject]
xchg rdi, rax
mov qword [rbp - 0x41], rdi
xchg rdi, rax
xor esi, esi
mov qword [rbp - 0x59], rsi
lea rdx, [rbp - 0x59]
mov rcx, r14
call sub.gdiplus.dll_GdipCreateFromHDC
mov dword [rbp - 0x61], eax
xchg rcx, rdi
mov rdi, qword [rbp - 0x59]
xchg rdi, rcx
mov qword [rbp - 0x69], rcx
lea edx, [rbx - 0xb]
call sub.gdiplus.dll_GdipSetSmoothingMode
mov ecx, dword [rbp - 0x61]
test eax, eax
cmovne ecx, eax
mov dword [rbp - 0x61], ecx
lea edx, [rbx - 0xd]
mov rcx, qword [rbp - 0x69]
call sub.gdiplus.dll_GdipSetCompositingQuality
mov ecx, dword [rbp - 0x61]
test eax, eax
cmovne ecx, eax
mov dword [rbp - 0x61], ecx
lea edx, [rbx - 0xb]
xchg r12, rcx
mov r12, qword [rbp - 0x69]
xchg r12, rcx
call sub.gdiplus.dll_GdipSetTextRenderingHint
mov ecx, dword [rbp - 0x61]
test eax, eax
cmovne ecx, eax
mov dword [rbp - 0x61], ecx
xchg r8, rsi
mov qword [rbp - 0x51], r8
xchg r8, rsi
lea rdx, [rbp - 0x51]
mov ecx, dword [rdi + 0x68]
call sub.gdiplus.dll_GdipCreateSolidFill
mov eax, dword [rdi + 0x8c]
mov ecx, dword [rdi + 0x88]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp - 0x51]
xchg rcx, r15
mov r15, qword [rbp - 0x69]
xchg rcx, r15
call sub.gdiplus.dll_GdipFillRectangleI
mov edx, dword [rbp - 0x61]
test eax, eax
cmovne edx, eax
mov dword [rbp - 0x61], edx
xchg rcx, r13
mov r13, qword [rbp - 0x51]
xchg r13, rcx
call sub.gdiplus.dll_GdipDeleteBrush
lea rdx, [rbp - 0x69]
xchg rcx, r12
mov r12, rdi
xchg rcx, r12
call 0x140077360
xchg r10, rbx
mov r10, qword [rdi + 0x50]
xchg rbx, r10
cmp rbx, qword [rdi + 0x58]
je 0x140077b08
nop word [rax + rax]
xchg r12, rsi
mov r12, qword [rbx]
xchg r12, rsi
test rsi, rsi
je 0x140077aed
mov rcx, rsi
call fcn.14017cd60
test al, al
jne 0x140077aed
lea rdx, [rbp + 0x57]
xchg r14, rcx
mov r14, qword [rbp - 0x69]
xchg rcx, r14
call sub.gdiplus.dll_GdipBeginContainer2
mov ecx, dword [rbp - 0x61]
test eax, eax
cmovne ecx, eax
mov dword [rbp - 0x61], ecx
mov eax, dword [rdi + 0x90]
nop
add eax, 0x1ba1f251
sub eax, 0x1ba1f247
movd xmm2, eax
cvtdq2ps xmm2, xmm2
xor r9d, r9d
xorps xmm1, xmm1
mov rcx, qword [rbp - 0x69]
call sub.gdiplus.dll_GdipTranslateWorldTransform
mov edx, dword [rbp - 0x61]
test eax, eax
cmovne edx, eax
mov dword [rbp - 0x61], edx
xchg rdi, rax
mov rdi, qword [rsi]
xchg rdi, rax
lea rdx, [rbp - 0x69]
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call qword [rax]
mov edx, dword [rbp + 0x57]
xchg rcx, r15
mov r15, qword [rbp - 0x69]
xchg r15, rcx
call sub.gdiplus.dll_GdipEndContainer
mov ecx, dword [rbp - 0x61]
test eax, eax
cmovne ecx, eax
mov dword [rbp - 0x61], ecx
nop
add rbx, 0x394706ca
sub rbx, 0x394706c2
cmp rbx, qword [rdi + 0x58]
jne 0x140077a48
xor esi, esi
mov dword [rsp + 0x40], 0x58d01ba4
xor dword [rsp + 0x40], 0x9dd4214
xor dword [rsp + 0x40], 0x30c08953
sub dword [rsp + 0x40], 0x4667e969
add dword [rsp + 0x40], 0x18b62252
add dword [rsp + 0x40], 0xf6d4f0e
sub dword [rsp + 0x40], 0x42bd58ba
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x28], r14
mov eax, dword [rdi + 0x8c]
mov dword [rsp + 0x20], eax
mov r9d, dword [rdi + 0x88]
xor r8d, r8d
xor edx, edx
xchg rdi, rcx
mov rdi, r12
xchg rdi, rcx
call qword [sym.imp.GDI32.dll_BitBlt]
mov rdx, qword [rbp - 0x41]
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
call qword [sym.imp.GDI32.dll_SelectObject]
xchg rsi, r13
mov rcx, rsi
xchg rsi, r13
call qword [sym.imp.GDI32.dll_DeleteObject]
xchg rcx, r10
mov r10, r14
xchg r10, rcx
call qword [sym.imp.GDI32.dll_DeleteDC]
lea rdx, [rbp - 0x29]
mov rcx, r15
call qword [sym.imp.USER32.dll_EndPaint]
lock dec word [rdi + 0x32]
mov rax, qword [rbp + 0x7f]
mov qword [rax], 0x5d6e8692
sub qword [rax], 0x3272d1a9
sub qword [rax], 0xe5eb87b
sub qword [rax], 0x4aa0492
sub qword [rax], 0x131b35f1
xor qword [rax], 0x76dfca6d
sub qword [rax], 0x112c4de2
sub qword [rax], 0x60dbbda3
xchg r10, rcx
mov r10, qword [rbp - 0x69]
xchg r10, rcx
call sub.gdiplus.dll_GdipDeleteGraphics
xor al, al
jmp 0x140077d24
cmp ebx, 0x113
jne 0x140077cdf
cmp r14, rsi
jne 0x140077d0d
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, r15
je 0x140077c41
call qword [sym.imp.USER32.dll_GetActiveWindow]
cmp rax, r15
je 0x140077c41
xor al, al
jmp 0x140077c4f
mov al, 0x41
add al, 0x2c
xor al, 0x51
sub al, 0x34
add al, 0x44
sub al, 0x38
sub al, 0x13
mov byte [rdi + 0x30], al
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
xchg rdx, rax
mov qword [rdi + 0x38], rdx
xchg rdx, rax
mov r9d, 0x21ac7ffb
sub r9d, 0xe64ce05
xor r9d, 0x2ecb9dd1
xor r9d, 0x54c9ccd7
sub r9d, 0x2beda18f
sub r9d, 0x382ae58c
add r9d, 0x4bd8820a
sub r9d, 0x5105dade
xor r8d, r8d
xor edx, edx
mov rcx, r15
call qword [sym.imp.USER32.dll_RedrawWindow]
lock dec word [rdi + 0x32]
mov rax, qword [rbp + 0x7f]
mov qword [rax], 0xddda96f
add qword [rax], 0x1f59d103
sub qword [rax], 0x22eb892
add qword [rax], 0x2167e5c
xor qword [rax], 0x90cd90f
xor qword [rax], 0x24139932
xor al, al
jmp 0x140077d24
cmp ebx, 0x200
jne 0x140077d83
xchg r9, rax
mov r9, qword [rbp + 0x77]
xchg r9, rax
mov word [rdi + 0x34], ax
movzx r8d, word [rbp + 0x79]
mov word [rdi + 0x36], r8w
movzx edx, ax
lea rcx, [rbp - 0x49]
call fcn.140076c30
lock dec word [rdi + 0x32]
mov al, 0x3f
sub al, 0x11
sub al, 0x1e
xor al, 0x15
add al, 0x5c
sub al, 0x36
add al, 0x50
sub al, 0x6b
sub al, 0xf
lea r11, [rsp + 0xe0]
xchg rbx, rdi
mov rdi, qword [r11 + 0x38]
xchg rbx, rdi
xchg r10, rsi
mov r10, qword [r11 + 0x40]
xchg rsi, r10
mov rdi, qword [r11 + 0x48]
mov rsp, r11
nop
mov r15, qword [rsp]
add rsp, 8
nop
mov r14, qword [rsp]
add rsp, 8
nop
mov r13, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r12
add rsp, 8
push rbx
push rdx
push rdx
push rdx
push rbx
push rcx
xchg qword [rsp + 0x30], rbp
add rsp, 0x38
nop
add rsp, 8
jmp qword [rsp - 8]
cmp ebx, 0x201
jne 0x140077df7
mov rbx, qword [rdi + 0x50]
cmp rbx, qword [rdi + 0x58]
je 0x140077d0d
xchg rdx, rsi
mov rdx, qword [rbx]
xchg rdx, rsi
test rsi, rsi
je 0x140077de4
mov rcx, rsi
call fcn.14017cd20
test al, al
je 0x140077de4
mov dl, 0x41
sub dl, 0x14
sub dl, 9
add dl, 0x3a
add dl, 0x16
xor dl, 0x12
sub dl, 0x40
sub dl, 0x25
xchg rsi, r9
mov rcx, r9
xchg rsi, r9
call fcn.14017d2d0
add rbx, 8
cmp rbx, qword [rdi + 0x58]
jne 0x140077d9d
jmp 0x140077d0d
cmp ebx, 0x202
jne 0x140077e63
mov rbx, qword [rdi + 0x50]
cmp rbx, qword [rdi + 0x58]
je 0x140077d0d
mov rsi, qword [rbx]
xor edx, edx
mov rcx, rsi
call fcn.14017d2d0
test rsi, rsi
je 0x140077e45
xchg rcx, rsi
mov rsi, rcx
xchg rsi, rcx
call fcn.14017cd20
test al, al
je 0x140077e45
mov rcx, rsi
call fcn.14017cda0
nop
sub rbx, 0x2f38adf6
add rbx, 0x2f38adfe
cmp rbx, qword [rdi + 0x58]
jne 0x140077e11
jmp 0x140077d0d
cmp ebx, 0x84
jne 0x140077ed9
lea rdx, [rbp - 0x39]
xchg r13, rcx
mov r13, qword [rdi + 0x48]
xchg rcx, r13
call qword [sym.imp.USER32.dll_GetWindowRect]
movzx r8d, word [rbp + 0x79]
sub r8w, word [rbp - 0x35]
movzx edx, word [rbp + 0x77]
sub dx, word [rbp - 0x39]
movsx eax, r8w
cmp eax, dword [rdi + 0x90]
jg 0x140077d0d
lea rcx, [rbp - 0x49]
call fcn.140076c30
neg al
sbb rcx, rcx
nop
sub rcx, 0x215bd31d
add rcx, 0x215bd31f
xchg r11, rax
mov r11, qword [rbp + 0x7f]
xchg r11, rax
mov qword [rax], rcx
lock dec word [rdi + 0x32]
xor al, al
jmp 0x140077d24
cmp ebx, 0x20a
jne 0x140077f46
shr r14, 6
shr r14, 0xa
mov rbx, qword [rdi + 0x50]
cmp rbx, qword [rdi + 0x58]
je 0x140077d0d
nop
xchg rsi, rdx
mov rdx, qword [rbx]
xchg rsi, rdx
xchg rbx, rsi
mov rcx, rbx
xchg rbx, rsi
call fcn.14017cd20
test al, al
je 0x140077f2d
movzx edx, r14w
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call fcn.14017cf10
neg rbx
add rbx, 0xfffffffffffffff8
neg rbx
cmp rbx, qword [rdi + 0x58]
jne 0x140077efc
jmp 0x140077d0d
cmp ebx, 0x12
jne 0x140077d0d
xchg rcx, r11
mov r11, qword [rdi + 0x48]
xchg r11, rcx
call qword [sym.imp.USER32.dll_CloseWindow]
lock dec word [rdi + 0x32]
xor al, al
jmp 0x140077d24