Function at 0x140035d60
Capabilities:
Hash data using djb2

Disassembly:
push rbx
push rbp
sub rsp, 0x158
movaps xmmword [rsp + 0x140], xmm6
mov rax, qword [0x1402376b8]
xor rax, rsp
mov qword [rsp + 0x130], rax
movsd xmm6, qword [0x1432ae8d8]
lea r8, [rsp + 0x30]
xor ebx, ebx
call fcn.14002bd70
mov rbp, rax
test rax, rax
jne 0x140035dc1
mov r8d, dword [rsp + 0x30]
lea r9, [rsp + 0x8c]
lea rdx, [0x1401c75b8]
lea ecx, [rbx + 3]
call fcn.1400432a0
jmp 0x140036196
cmp dword [rax], ebx
jne 0x14003617a
mov qword [rsp + 0x180], rdi
lea rax, [0x1401c5fec]
mov edi, 0x1505
mov qword [rsp + 0x150], r15
mov r9d, edi
mov ecx, 0x72
nop dword [rax]
imul r9, r9, 0x21
lea rax, [rax + 1]
add r9, rcx
movsx rcx, byte [rax]
test rcx, rcx
jne 0x140035df0
mov r10, qword [rbp + 0x20]
lea r15, [0x1401c5670]
xor edx, edx
mov qword [rsp + 0x188], r14
mov rax, r9
lea r8, [0x1401c5fec]
lea rcx, [rbp + 0x10]
div qword [r15 + r10*8]
shl rdx, 4
add rdx, qword [rbp + 0x18]
call fcn.14002a1c0
mov r14, rbx
test rax, rax
je 0x140035e44
mov r14, qword [rax + 0x18]
lea rax, [0x1401c609c]
mov r9, rdi
mov ecx, 0x65
nop dword [rax]
nop word [rax + rax]
imul r9, r9, 0x21
lea rax, [rax + 1]
add r9, rcx
movsx rcx, byte [rax]
test rcx, rcx
jne 0x140035e60
mov r10, qword [rbp + 0x20]
lea r8, [0x1401c609c]
xor edx, edx
mov qword [rsp + 0x178], rsi
mov rax, r9
lea rcx, [rbp + 0x10]
div qword [r15 + r10*8]
shl rdx, 4
add rdx, qword [rbp + 0x18]
call fcn.14002a1c0
mov rsi, rbx
test rax, rax
je 0x140035ead
mov rsi, qword [rax + 0x18]
lea rax, [0x1401c5b74]
mov r9, rdi
mov ecx, 0x69
nop dword [rax]
imul r9, r9, 0x21
lea rax, [rax + 1]
add r9, rcx
movsx rcx, byte [rax]
test rcx, rcx
jne 0x140035ec0
mov r10, qword [rbp + 0x20]
lea r8, [0x1401c5b74]
xor edx, edx
lea rcx, [rbp + 0x10]
mov rax, r9
div qword [r15 + r10*8]
shl rdx, 4
add rdx, qword [rbp + 0x18]
call fcn.14002a1c0
test rax, rax
je 0x14003615a
mov rax, qword [rax + 0x18]
test rax, rax
je 0x14003615a
mov ecx, dword [rax]
cmp ecx, 7
je 0x14003615a
cmp ecx, 3
jne 0x140035f25
mov rcx, qword [rax + 0x10]
jmp 0x140035f28
mov rcx, rbx
cmp ecx, 4
jl 0x14003615a
cmp dword [0x1402382ac], ebx
je 0x140035f56
cmp dword [0x140237724], ebx
je 0x140035f56
lea edx, [rcx - 0xa]
movaps xmm2, xmm6
lea rcx, [0x1432aeaa4]
call fcn.14004c360
movaps xmm6, xmm0
lea rcx, [rsp + 0x20]
call qword [0x14018c050]
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x24]
mov r8d, dword [0x1432ae99c]
mov r9d, dword [0x1432ae998]
shl rcx, 0x20
or rcx, rax
movabs rax, 0xcccccccccccccccd
mul rcx
movabs rax, 0x295e9648864000
mov r10, rdx
shr r10, 3
sub r10, rax
movabs rax, 0x431bde82d7b634db
mul r10
mov r11, rdx
shr r11, 0x12
imul eax, r11d, 0xf4240
sub r10d, eax
cmp r10d, r8d
jge 0x140035ff5
mov ecx, r8d
mov eax, 0x431bde83
sub ecx, r10d
imul ecx
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
inc ecx
add ecx, edx
imul eax, ecx, 0xfff0bdc0
add r8d, eax
add r9d, ecx
mov dword [0x1432ae99c], r8d
mov dword [0x1432ae998], r9d
mov ecx, r10d
sub ecx, r8d
cmp ecx, 0xf4240
jle 0x14003602e
mov eax, 0x431bde83
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0xf4240
add r8d, eax
sub r9d, edx
mov dword [0x1432ae99c], r8d
mov dword [0x1432ae998], r9d
sub r10d, r8d
sub r11d, r9d
imul eax, r11d, 0x3e8
movd xmm0, r10d
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x14021aa30]
cvttsd2si rcx, xmm0
add ecx, eax
cmp dword [0x1432ae9b0], ebx
mov dword [0x1432ae9a0], ecx
je 0x14003610d
test rsi, rsi
je 0x1400360e4
cmp dword [rsi], ebx
jne 0x1400360d5
lea rax, [0x1401c75d8]
mov ecx, 0x6d
nop word [rax + rax]
imul rdi, rdi, 0x21
lea rax, [rax + 1]
add rdi, rcx
movsx rcx, byte [rax]
test rcx, rcx
jne 0x140036080
mov r10, qword [rsi + 0x20]
lea r8, [0x1401c75d8]
xor edx, edx
lea rcx, [rsi + 0x10]
mov rax, rdi
mov r9, rdi
div qword [r15 + r10*8]
shl rdx, 4
add rdx, qword [rsi + 0x18]
call fcn.14002a1c0
test rax, rax
je 0x1400360d5
mov rdi, qword [rax + 0x18]
test rdi, rdi
je 0x1400360d5
cmp dword [rdi], 2
jne 0x1400360d5
mov rdi, qword [rdi + 0x10]
jmp 0x1400360d8
mov rdi, rbx
cmp dword [rsi], 7
jne 0x1400360e7
mov ecx, 1
jmp 0x1400360e9
mov rdi, rbx
mov ecx, ebx
mov edx, dword [0x1432ae9a4]
mov r9, rdi
movaps xmm2, xmm6
call fcn.14002e260
test rdi, rdi
je 0x140036155
mov qword [0x1432bf3a0], rbx
call fcn.1400333b0
jmp 0x140036155
test r14, r14
je 0x14003615a
test rsi, rsi
je 0x14003613b
cmp dword [rsi], 1
jne 0x14003613b
cmp qword [rsi + 0x18], 1
jbe 0x14003613b
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14003613b
cmp dword [rcx], 2
jne 0x14003613b
mov r9, qword [rcx + 0x10]
jmp 0x14003613e
mov r9, rbx
cmp dword [r14], 5
movaps xmm2, xmm6
mov edx, dword [0x1432ae9a4]
sete bl
mov ecx, ebx
call fcn.14002e260
mov ebx, 1
mov rsi, qword [rsp + 0x178]
mov r14, qword [rsp + 0x188]
mov rdi, qword [rsp + 0x180]
mov r15, qword [rsp + 0x150]
mov rax, qword [rbp + 8]
cmp rax, 0xffffffffffffffff
je 0x140036196
sub rax, 1
mov qword [rbp + 8], rax
jne 0x140036196
mov rcx, rbp
call fcn.14002c610
mov eax, ebx
mov rcx, qword [rsp + 0x130]
xor rcx, rsp
call fcn.140189f20
movaps xmm6, xmmword [rsp + 0x140]
add rsp, 0x158
pop rbp
pop rbx
ret