Function at 0x140040d50
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 8], rbx
xchg r15, rsi
mov qword [rsp + 0x10], r15
xchg r15, rsi
xchg rdi, rbp
mov qword [rsp + 0x18], rbp
xchg rbp, rdi
nop
sub rsp, 8
mov qword [rsp], rbp
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov esi, edx
xchg r8, rcx
mov rbx, r8
xchg r8, rcx
mov dword [rbp + 0x58], 0x2067fc74
sub dword [rbp + 0x58], 0xad76f35
add dword [rbp + 0x58], 0x354430a0
sub dword [rbp + 0x58], 0x164bf8e1
xor dword [rbp + 0x58], 0x3057d97b
xor dword [rbp + 0x58], 0x43759aa9
sub dword [rbp + 0x58], 0xaea03e4
xor dword [rbp + 0x58], 0x7202315
sub dword [rbp + 0x58], 0x3be0a05d
xor r9d, r9d
lea r10, [rbp + 0x5b]
nop
inc qword [rbx + 0x18]
mov rax, qword [rbx]
cmp rax, qword [rbx + 8]
je 0x140040df5
movzx edx, byte [rax]
inc rax
xchg r11, rax
mov qword [rbx], r11
xchg r11, rax
jmp 0x140040e18
mov edx, 0x5fc0730f
sub edx, 0x51650503
xor edx, 0x7af8b553
sub edx, 0x5ffd80f0
xor edx, 0x45e32a35
add edx, 0xaeba8fa5
mov dword [rbx + 0x10], edx
cmp edx, 0xffffffff
je 0x140040e98
xor ecx, ecx
cmp esi, 5
sete cl
movzx eax, byte [rbx + 0x20]
cmp eax, ecx
je 0x140040e40
mov byte [r10], dl
jmp 0x140040e45
mov byte [rbp + r9 + 0x58], dl
inc r9
dec r10
cmp r9, 4
jb 0x140040dd2
mov eax, dword [rbp + 0x58]
mov dword [r8], eax
mov al, 1
add al, 0x74
xor al, 0x71
add al, 0x6c
xor al, 0x1d
xor al, 0x5c
sub al, 4
sub al, 0x2c
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x10]
xchg rsi, rcx
mov rcx, qword [r11 + 0x18]
xchg rcx, rsi
xchg rbx, rdi
mov rbx, qword [r11 + 0x20]
xchg rbx, rdi
mov rsp, r11
nop
xchg qword [rsp], rbp
add rsp, 8
ret
xchg rdi, r9
mov r9, qword [rbx + 0x28]
xchg r9, rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0x39106b79
add qword [rsp + 0x40], 0xc9dd473
sub qword [rsp + 0x40], 0x31964c5e
add qword [rsp + 0x40], 0x46fa5d17
sub qword [rsp + 0x40], 0x2a59f577
sub qword [rsp + 0x40], 0x30b85b28
mov qword [rsp + 0x48], 0x1d53a36
add qword [rsp + 0x48], 0x3b23b015
sub qword [rsp + 0x48], 0x2bc51f83
add qword [rsp + 0x48], 0x5778903d
sub qword [rsp + 0x48], 0x60d81fea
add qword [rsp + 0x48], 0x5b6c623b
sub qword [rsp + 0x48], 0x63409d47
mov eax, dword [0x1400017b4]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1400017b8]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x36], 0x68
sub byte [rsp + 0x36], 0x5c
add byte [rsp + 0x36], 0x4a
sub byte [rsp + 0x36], 0x1d
xor byte [rsp + 0x36], 0x65
sub byte [rsp + 0x36], 0x4c
add byte [rsp + 0x36], 0x6d
sub byte [rsp + 0x36], 0x7d
movups xmmword [rsp + 0x50], xmm0
mov edx, 0x2a7bd8a3
add edx, 0x323bf58d
sub edx, 0xc86a845
xor edx, 0x7aef5b8e
xor edx, 0x25e54b65
xor edx, 0x54282882
sub edx, 0x5b131d62
lea rcx, [rsp + 0x50]
call fcn.1400537e0
xchg r13, rdx
mov r13, rax
xchg rdx, r13
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], 0x7b52d20f
sub qword [rsp + 0x60], 0x1501c275
sub qword [rsp + 0x60], 0x48d01dce
xor qword [rsp + 0x60], 0x4fef7508
add qword [rsp + 0x60], 0x1cf6d51b
sub qword [rsp + 0x60], 0x540d221c
xor qword [rsp + 0x60], 0x69db73bc
sub qword [rsp + 0x60], 0x72824468
mov qword [rsp + 0x68], 0x3b8a65f1
xor qword [rsp + 0x68], 0x313c93c3
add qword [rsp + 0x68], 0x970881d
add qword [rsp + 0x68], 0x6a88267e
sub qword [rsp + 0x68], 0x19d27eb8
add qword [rsp + 0x68], 0x78d820c
sub qword [rsp + 0x68], 0x4f73f881
sub qword [rsp + 0x68], 0x8f2b72e
sub qword [rsp + 0x68], 0x1403f853
movups xmm0, xmmword [0x140001948]
xchg r11, rax
movups xmmword [r11], xmm0
xchg r11, rax
mov ecx, dword [0x140001958]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x14000195c]
mov word [rax + 0x14], cx
movzx eax, byte [0x14000195e]
mov byte [rdx + 0x16], al
mov byte [rdx + 0x17], 0x21
xor byte [rdx + 0x17], 0x30
add byte [rdx + 0x17], 0x19
sub byte [rdx + 0x17], 0x23
add byte [rdx + 0x17], 0x42
sub byte [rdx + 0x17], 0x48
add byte [rdx + 0x17], 0x44
sub byte [rdx + 0x17], 0x45
lea rax, [rsp + 0x30]
xchg r13, rax
mov qword [rsp + 0x20], r13
xchg r13, rax
lea r9, [rsp + 0x50]
mov r8d, esi
lea rdx, [rbp - 0x70]
xchg r9, rcx
mov r9, rbx
xchg rcx, r9
call fcn.140055670
nop
mov qword [rsp + 0x20], 0x69c2ac22
sub qword [rsp + 0x20], 0xad6db26
sub qword [rsp + 0x20], 0x526bb9b2
add qword [rsp + 0x20], 0x48614c85
add qword [rsp + 0x20], 0x4f5b93c
xor qword [rsp + 0x20], 0xaed0d58
xor qword [rsp + 0x20], 0x533a1053
mov r9, rax
xchg rdi, r8
mov rdi, qword [rbx + 0x18]
xchg r8, rdi
mov edx, 0x6d8e3c28
xor edx, 0x7fac05be
xor edx, 0x7f0f7c9a
sub edx, 0xad7d988
xor edx, 0x568eae6a
xor edx, 0x34dbc580
lea rcx, [rbp - 0x50]
call fcn.140038e80
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 0x76a24019
xor qword [rbp - 0x80], 0xbf1eeac
sub qword [rbp - 0x80], 0x7cd8d964
add qword [rbp - 0x80], 0x7183a3a2
add qword [rbp - 0x80], 0xd555bb1
sub qword [rbp - 0x80], 0xa18eec9
add qword [rbp - 0x80], 0x80b67f0
sub qword [rbp - 0x80], 0x7d464dbe
mov qword [rbp - 0x78], 0x48019238
sub qword [rbp - 0x78], 0x201acb3f
add qword [rbp - 0x78], 0x16c57cab
add qword [rbp - 0x78], 0xdb20a4d
add qword [rbp - 0x78], 0x27b70c9e
sub qword [rbp - 0x78], 0x74155a80
movsd xmm0, qword [0x140001960]
movsd qword [rsp + 0x70], xmm0
mov ecx, dword [0x140001968]
mov dword [rsp + 0x78], ecx
movzx ecx, byte [0x14000196c]
mov byte [rsp + 0x7c], cl
mov byte [rsp + 0x7d], 0x1e
add byte [rsp + 0x7d], 0x51
sub byte [rsp + 0x7d], 0x1b
xor byte [rsp + 0x7d], 0x36
sub byte [rsp + 0x7d], 0x60
add byte [rsp + 0x7d], 0x70
sub byte [rsp + 0x7d], 0xa
sub byte [rsp + 0x7d], 0x68
mov byte [rdi + 0x28], 0x1f
add byte [rdi + 0x28], 6
add byte [rdi + 0x28], 1
sub byte [rdi + 0x28], 0x1b
add byte [rdi + 0x28], 0x22
add byte [rdi + 0x28], 0x42
xor byte [rdi + 0x28], 0x37
sub byte [rdi + 0x28], 0x57
cmp byte [rdi + 0x29], 0
jne 0x1400413ef
lea rbx, [0x140004a88]
xchg r8, rbx
mov qword [rbp - 0x30], r8
xchg rbx, r8
lea rcx, [rbp - 0x28]
call sub.VCRUNTIME140.dll___std_exception_destroy
mov qword [rbp - 0x50], rbx
lea rcx, [rbp - 0x48]
call sub.VCRUNTIME140.dll___std_exception_destroy
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14004129b
inc rdx
xchg r12, rcx
mov r12, qword [rbp - 0x70]
xchg r12, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041296
nop
add rdx, 0x27c15ef
sub rdx, 0x27c15c8
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140041296
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcccc
mov qword [rbp - 0x60], 0x79f69592
xor qword [rbp - 0x60], 0x70bb9694
xor qword [rbp - 0x60], 0x4e2c55f8
add qword [rbp - 0x60], 0x2100d0ea
xor qword [rbp - 0x60], 0x75fdc92c
xor qword [rbp - 0x60], 0x1d9feec4
mov qword [rbp - 0x58], 0x424d0a1e
xor qword [rbp - 0x58], 0x1ef8b96
sub qword [rbp - 0x58], 0x1812991a
add qword [rbp - 0x58], 0x4e43334
add qword [rbp - 0x58], 0x21a60b96
add qword [rbp - 0x58], 0x28bc888
xor qword [rbp - 0x58], 0x54a5efcf
mov byte [rbp - 0x70], 0x7e
xor byte [rbp - 0x70], 0x27
add byte [rbp - 0x70], 0x1e
sub byte [rbp - 0x70], 0x61
add byte [rbp - 0x70], 6
sub byte [rbp - 0x70], 0xe
xor byte [rbp - 0x70], 0xe
xchg rdx, rbp
mov rbp, qword [rsp + 0x68]
xchg rdx, rbp
cmp rdx, 0x10
jb 0x140041378
inc rdx
mov rcx, qword [rsp + 0x50]
xchg rcx, r10
mov rax, r10
xchg r10, rcx
cmp rdx, 0x1000
jb 0x140041372
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x140041372
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcccc
nop
xchg rsi, rdx
mov rsi, qword [rsp + 0x48]
xchg rdx, rsi
cmp rdx, 0x10
jb 0x1400413e8
inc rdx
xchg rcx, r14
mov r14, qword [rsp + 0x30]
xchg r14, rcx
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x1400413e3
nop
sub rdx, 0x662656c9
add rdx, 0x662656f0
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
sub rax, 0xffffffff9fac91cc
add rax, 0xffffffff9fac91c4
cmp rax, 0x1f
jbe 0x1400413e3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcccc
xor al, al
jmp 0x140040e6b
xchg r15, rax
mov rdx, r15
xchg r15, rax
lea rcx, [rbp - 0x10]
call fcn.14004c040
lea rdx, [0x140215748]
lea rcx, [rbp - 0x10]
call sub.VCRUNTIME140.dll__CxxThrowException
int3