Function at 0x14003b890
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xd0
mov rax, qword [0x1400dc100]
xor rax, rsp
mov qword [rbp + 0x27], rax
xor r13d, r13d
call fcn.14003b730
mov rcx, qword [0x1400dcf78]
mov rdx, qword [0x1400dcf80]
cmp rcx, rdx
je 0x14003b8f0
call fcn.140076f60
mov rax, qword [0x1400dcf78]
mov qword [0x1400dcf80], rax
lea rdx, str.0e_f_
lea rcx, [rbp - 0x19]
call fcn.140075200
nop
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x79], xmm0
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x79]
call fcn.140074ec0
test eax, eax
jne 0x14003bfa4
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x14003b95e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003b959
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003bfb7
call fcn.140083dfc
mov r15, qword [rbp - 0x71]
test r15, r15
je 0x14003b970
lock inc dword [r15 + 8]
mov r15, qword [rbp - 0x71]
movaps xmm0, xmmword [rbp - 0x79]
movdqa xmmword [rbp - 0x69], xmm0
test r15, r15
je 0x14003b987
lock inc dword [r15 + 8]
mov r15, qword [rbp - 0x71]
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x31], xmm1
mov r12, 0xffffffffffffffff
test r15, r15
je 0x14003b9d5
mov eax, r12d
lock xadd dword [r15 + 8], eax
cmp eax, 1
jne 0x14003b9d1
mov rbx, qword [rbp - 0x71]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003b9d1
mov r15, qword [rbp - 0x71]
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 8]
jmp 0x14003b9d5
mov r15, qword [rbp - 0x71]
nop word [rax + rax]
mov rbx, qword [rbp - 0x69]
test rbx, rbx
je 0x14003bef7
lea rdx, [rbp - 0x51]
mov rcx, rbx
call fcn.140038fe0
mov rax, qword [rbp - 0x51]
mov edx, dword [rbp - 0x49]
test edx, edx
je 0x14003ba13
lea ecx, [rax - 1]
test ecx, 0xfffffff7
jne 0x14003bfbd
cmp eax, 1
jbe 0x14003bee1
lea rdx, [rbp - 0x41]
mov rcx, rbx
call fcn.140038fe0
mov rax, qword [rbp - 0x41]
mov edx, dword [rbp - 0x39]
test edx, edx
je 0x14003ba42
lea ecx, [rax - 1]
test ecx, 0xfffffff7
jne 0x14003bfce
cmp eax, 2
jne 0x14003bee1
lea rsi, [rbx + 0x20]
mov rcx, rsi
mov r14, qword [rsi + 0x18]
cmp r14, 7
jbe 0x14003ba5f
mov rcx, qword [rsi]
mov rax, qword [rsi + 0x10]
lea rdi, [rcx + rax*2]
mov rbx, rdi
mov rdx, rdi
call fcn.140038330
cmp rax, rdi
je 0x14003babb
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14003ba86
cmp cx, 0x2f
jne 0x14003ba8f
add rax, 2
cmp rax, rdi
jne 0x14003ba77
cmp rax, rdi
je 0x14003babb
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rbx - 2]
movzx ecx, word [rdx]
cmp cx, 0x5c
je 0x14003babb
cmp cx, 0x2f
je 0x14003babb
mov rbx, rdx
cmp rax, rdx
jne 0x14003baa0
sub rdi, rbx
cmp rdi, 2
jb 0x14003bee1
mov rcx, rsi
cmp r14, 7
jbe 0x14003bad4
mov rcx, qword [rsi]
mov rax, qword [rsi + 0x10]
lea rdx, [rcx + rax*2]
mov rbx, rdx
call fcn.140038330
cmp rax, rdx
je 0x14003bb2c
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14003baff
cmp cx, 0x2f
jne 0x14003bb08
add rax, 2
cmp rax, rdx
jne 0x14003baf0
cmp rax, rdx
je 0x14003bb2c
nop dword [rax]
lea r8, [rbx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x14003bb2c
cmp cx, 0x2f
je 0x14003bb2c
mov rbx, r8
cmp rax, r8
jne 0x14003bb10
mov r8d, 0x3a
mov rcx, rbx
call fcn.140083560
cmp rbx, rax
je 0x14003bb77
lea rcx, [rax - 2]
cmp rbx, rcx
je 0x14003bb77
cmp word [rcx], 0x2e
jne 0x14003bb5f
lea rdx, [rcx - 2]
cmp rbx, rdx
jne 0x14003bb7a
cmp word [rdx], 0x2e
jne 0x14003bb7a
jmp 0x14003bb77
sub rcx, 2
cmp rbx, rcx
je 0x14003bb77
cmp word [rcx], 0x2e
je 0x14003bb7a
sub rcx, 2
cmp rbx, rcx
jne 0x14003bb68
mov rcx, rax
sub rax, rcx
cmp rax, 2
jb 0x14003bee1
mov rcx, rsi
cmp qword [rsi + 0x18], 7
jbe 0x14003bb94
mov rcx, qword [rsi]
mov rax, qword [rsi + 0x10]
lea rdx, [rcx + rax*2]
mov rbx, rdx
call fcn.140038330
cmp rax, rdx
je 0x14003bbec
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14003bbbf
cmp cx, 0x2f
jne 0x14003bbc8
add rax, 2
cmp rax, rdx
jne 0x14003bbb0
cmp rax, rdx
je 0x14003bbec
nop dword [rax]
lea r8, [rbx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x14003bbec
cmp cx, 0x2f
je 0x14003bbec
mov rbx, r8
cmp rax, r8
jne 0x14003bbd0
mov r8d, 0x3a
mov rcx, rbx
call fcn.140083560
cmp rbx, rax
je 0x14003bc37
lea rdx, [rax - 2]
cmp rbx, rdx
je 0x14003bc37
cmp word [rdx], 0x2e
jne 0x14003bc1f
lea rcx, [rdx - 2]
cmp rbx, rcx
jne 0x14003bc3a
cmp word [rcx], 0x2e
jne 0x14003bc3a
jmp 0x14003bc37
sub rdx, 2
cmp rbx, rdx
je 0x14003bc37
cmp word [rdx], 0x2e
je 0x14003bc3a
sub rdx, 2
cmp rbx, rdx
jne 0x14003bc28
mov rdx, rax
sub rax, rdx
sar rax, 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], r13
mov qword [rbp - 1], r13
mov r8, rax
lea rcx, [rbp - 0x19]
call fcn.140002c40
nop
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x19]
call fcn.140074b90
mov eax, dword [0x1400c7a74]
mov dword [rbp - 0x21], eax
movzx eax, word [0x1400c7a78]
mov word [rbp - 0x1d], ax
mov byte [rbp - 0x21], 0x2e
xor byte [rbp - 0x20], 0x33
xor byte [rbp - 0x1f], 0x34
xor byte [rbp - 0x1e], 0x35
xor al, 0x36
mov byte [rbp - 0x1d], al
xor byte [rbp - 0x1c], 0x37
lea rcx, [rbp + 7]
mov rbx, qword [rbp + 7]
mov r14, qword [rbp + 0x1f]
cmp r14, 0xf
cmova rcx, rbx
lea rax, [rbp - 0x21]
mov r8, r12
inc r8
cmp byte [rax + r8], 0
jne 0x14003bcb1
mov rax, qword [rbp + 0x17]
cmp rax, r8
jae 0x14003bcc9
xor dil, dil
jmp 0x14003bcde
sub rcx, r8
add rcx, rax
lea rdx, [rbp - 0x21]
call fcn.1400b2030
test eax, eax
sete dil
cmp r14, 0xf
jbe 0x14003bd15
lea rdx, [r14 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14003bd0d
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003bfdf
mov rcx, rbx
call fcn.140083dfc
mov qword [rbp + 0x17], r13
mov qword [rbp + 0x1f], 0xf
mov byte [rbp + 7], 0
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x14003bd65
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003bd60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003bfe5
call fcn.140083dfc
test dil, dil
je 0x14003bee1
mov rcx, rsi
cmp qword [rsi + 0x18], 7
jbe 0x14003bd7b
mov rcx, qword [rsi]
mov rax, qword [rsi + 0x10]
lea rdi, [rcx + rax*2]
mov rbx, rdi
mov rdx, rdi
call fcn.140038330
cmp rax, rdi
je 0x14003bdcb
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x14003bda2
cmp cx, 0x2f
jne 0x14003bdab
add rax, 2
cmp rax, rdi
jne 0x14003bd93
cmp rax, rdi
je 0x14003bdcb
lea rdx, [rbx - 2]
movzx ecx, word [rdx]
cmp cx, 0x5c
je 0x14003bdcb
cmp cx, 0x2f
je 0x14003bdcb
mov rbx, rdx
cmp rax, rdx
jne 0x14003bdb0
sub rdi, rbx
sar rdi, 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], r13
mov qword [rbp - 1], r13
mov r8, rdi
mov rdx, rbx
lea rcx, [rbp - 0x19]
call fcn.140002c40
nop
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x19]
call fcn.140074b90
nop
mov rdx, qword [0x1400dcf80]
cmp rdx, qword [0x1400dcf88]
je 0x14003be46
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], r13
mov qword [rdx + 0x18], r13
movups xmm0, xmmword [rbp + 7]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp + 0x17]
movups xmmword [rdx + 0x10], xmm1
mov qword [rbp + 0x17], r13
mov edx, 0xf
mov qword [rbp + 0x1f], rdx
mov byte [rbp + 7], 0
add qword [0x1400dcf80], 0x20
jmp 0x14003be5a
lea r8, [rbp + 7]
lea rcx, [0x1400dcf78]
call fcn.14007d990
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0xf
jbe 0x14003be91
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003be8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003bfeb
call fcn.140083dfc
mov qword [rbp + 0x17], r13
mov qword [rbp + 0x1f], 0xf
mov byte [rbp + 7], 0
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x14003bee1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003bedc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003bf96
call fcn.140083dfc
lea rcx, [rbp - 0x69]
call fcn.140039550
test eax, eax
jne 0x14003bf9c
jmp 0x14003b9e0
mov rcx, qword [rbp - 0x61]
test rcx, rcx
je 0x14003bf34
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14003bf30
mov rbx, qword [rbp - 0x61]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003bf30
mov rcx, qword [rbp - 0x61]
mov rax, qword [rcx]
call qword [rax + 8]
mov r15, qword [rbp - 0x71]
test r15, r15
je 0x14003bf69
mov eax, r12d
lock xadd dword [r15 + 8], eax
cmp eax, 1
jne 0x14003bf69
mov rbx, qword [rbp - 0x71]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r12d
cmp r12d, 1
jne 0x14003bf69
mov rcx, qword [rbp - 0x71]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140083b60
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14008cef0
nop
mov edx, eax
call fcn.140038e20
nop
lea r8, [rbp - 0x19]
mov edx, eax
lea rcx, str.recursive_directory_iterator::recursive_directory_iterator
call fcn.140038f10
nop
call fcn.14008cef0
nop
lea r8, [rbx + 0x20]
lea rcx, str.directory_entry::status
call fcn.140038f10
int3
lea r8, [rbx + 0x20]
lea rcx, str.directory_entry::status
call fcn.140038f10
nop
call fcn.14008cef0
nop
call fcn.14008cef0
nop
call fcn.14008cef0
int3