Function at 0x140039930
Capabilities:
Hash data using djb2

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r15, r8
mov rbp, rdx
mov r13, rcx
mov ebx, 0x1505
mov r10, qword [r8]
mov rcx, r10
movzx eax, word [r10]
test ax, ax
je 0x140039977
imul rbx, rbx, 0x21
movzx eax, ax
add rbx, rax
lea rcx, [rcx + 2]
movzx eax, word [rcx]
test ax, ax
jne 0x140039961
mov rax, rbx
and rax, qword [r13 + 0x30]
add rax, rax
mov rcx, qword [r13 + 0x18]
mov r8, qword [rcx + rax*8 + 8]
lea r12, [r13 + 8]
mov rdi, qword [r12]
lea r11, [0x1400ee574]
cmp r8, rdi
je 0x1400399f1
mov r9, qword [rcx + rax*8]
mov rax, qword [r8 + 0x10]
mov rdx, r11
test rax, rax
cmovne rdx, rax
mov rax, r11
test r10, r10
cmovne rax, r10
sub rdx, rax
nop dword [rax]
movzx ecx, word [rax]
cmp cx, word [rax + rdx]
jne 0x1400399d6
add rax, 2
test cx, cx
jne 0x1400399c0
xor eax, eax
jmp 0x1400399db
sbb eax, eax
or eax, 1
test eax, eax
je 0x140039bc1
cmp r8, r9
je 0x1400399ee
mov r8, qword [r8 + 8]
jmp 0x1400399a2
mov rdi, r8
movabs rax, 0x7ffffffffffffff
cmp qword [r13 + 0x10], rax
je 0x140039be4
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1400a2ac0
mov rsi, rax
mov qword [rsp + 0x28], rax
mov qword [rax + 0x10], 0
mov rdx, r15
lea rcx, [rax + 0x10]
call fcn.14002b9a0
mov rax, qword [r15 + 8]
mov qword [rsi + 0x18], rax
mov rdx, qword [r13 + 0x10]
lea rcx, [rdx + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x140039a58
cvtsi2ss xmm0, rcx
jmp 0x140039a6d
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [r13 + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x140039a80
cvtsi2ss xmm1, rcx
jmp 0x140039a95
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [r13]
seta al
test al, al
je 0x140039b6b
mov rcx, r13
call fcn.1400388d0
mov rax, rbx
and rax, qword [r13 + 0x30]
add rax, rax
mov rdx, qword [r13 + 0x18]
mov r8, qword [rdx + rax*8 + 8]
mov rcx, qword [r12]
cmp r8, rcx
jne 0x140039add
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], 0
jmp 0x140039b57
mov r9, qword [rdx + rax*8]
mov r10, qword [rsi + 0x10]
lea r11, [0x1400ee574]
nop dword [rax]
mov rax, qword [r8 + 0x10]
mov rdx, r11
test rax, rax
cmovne rdx, rax
mov rax, r11
test r10, r10
cmovne rax, r10
sub rdx, rax
nop dword [rax + rax]
movzx ecx, word [rax]
cmp cx, word [rax + rdx]
jne 0x140039b26
add rax, 2
test cx, cx
jne 0x140039b10
xor eax, eax
jmp 0x140039b2b
sbb eax, eax
or eax, 1
test eax, eax
je 0x140039b4a
cmp r8, r9
je 0x140039b3a
mov r8, qword [r8 + 8]
jmp 0x140039af0
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x28], 0
jmp 0x140039b57
mov rax, qword [r8]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], r8
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov rdx, qword [r13 + 0x10]
mov rdi, qword [rsp + 0x20]
mov rcx, qword [rdi + 8]
lea rax, [rdx + 1]
mov qword [r13 + 0x10], rax
mov qword [rsi], rdi
mov qword [rsi + 8], rcx
mov qword [rcx], rsi
mov qword [rdi + 8], rsi
mov rax, qword [r13 + 0x18]
and rbx, qword [r13 + 0x30]
add rbx, rbx
mov rdx, qword [rax + rbx*8]
cmp rdx, qword [r12]
jne 0x140039ba0
mov qword [rax + rbx*8], rsi
jmp 0x140039bb2
cmp rdx, rdi
jne 0x140039bab
mov qword [rax + rbx*8], rsi
jmp 0x140039bb7
cmp qword [rax + rbx*8 + 8], rcx
jne 0x140039bb7
mov qword [rax + rbx*8 + 8], rsi
mov qword [rbp], rsi
mov byte [rbp + 8], 1
jmp 0x140039bc9
mov qword [rbp], r8
mov byte [rbp + 8], 0
mov rax, rbp
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1400463b0
int3