Function at 0x14011ae10
Capabilities:
Hash data using djb2

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x14043c0c0]
xor rax, rsp
mov qword [rbp], rax
mov r15, rdx
mov rbx, rcx
mov qword [rsp + 0x30], rdx
xor r12d, r12d
mov dword [rsp + 0x38], r12d
xor ecx, ecx
call fcn.140198ec4
mov ecx, dword [rbx + 0x68]
sub rcx, rax
test rcx, rcx
jle 0x14011b280
movabs rax, 0x1845c8a0ce512957
imul rcx
mov r14, rdx
sar r14, 0xd
mov rax, r14
shr rax, 0x3f
add r14, rax
mov rbx, qword [0x1406a2cc0]
mov edi, 0x1505
mov esi, edi
mov edx, r12d
lea rcx, str.sub_days
nop dword [rax + rax]
movsx eax, byte [rcx]
test al, al
je 0x14011aeb6
imul esi, esi, 0x21
add esi, eax
inc edx
inc rcx
cmp edx, 9
jb 0x14011aea0
mov qword [rsp + 0x30], rbx
mov rcx, rbx
call fcn.14015076c
test eax, eax
jne 0x14011b531
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x14011b53c
mov r9d, 0xffffffff
mov r8d, esi
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.1401246d0
nop
mov rcx, rbx
call fcn.140150774
nop
lea edx, [r14 + 1]
lea rcx, [rbp - 0x80]
call fcn.140114a50
mov rsi, rax
mov rbx, qword [0x1406a2cc0]
mov r8d, r12d
mov rdx, r12
lea rcx, [0x140000000]
nop dword [rax]
movsx eax, byte [rdx + rcx + 0x40b390]
test al, al
je 0x14011af83
imul edi, edi, 0x21
add edi, eax
movsx eax, byte [rdx + rcx + 0x40b391]
test al, al
je 0x14011af83
imul edi, edi, 0x21
add edi, eax
movsx eax, byte [rdx + rcx + 0x40b392]
test al, al
je 0x14011af83
imul edi, edi, 0x21
add edi, eax
movsx eax, byte [rdx + rcx + 0x40b393]
test al, al
je 0x14011af83
imul edi, edi, 0x21
add edi, eax
movsx eax, byte [rdx + rcx + 0x40b394]
test al, al
je 0x14011af83
imul edi, edi, 0x21
add edi, eax
add rdx, 5
add r8d, 5
cmp r8d, 0xf
jb 0x14011af20
mov qword [rsp + 0x30], rbx
mov rcx, rbx
call fcn.14015076c
test eax, eax
jne 0x14011b54c
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x14011b557
mov r9d, 0xffffffff
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1401246d0
nop
mov rcx, rbx
call fcn.140150774
nop
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x14011b001
lea rax, [rcx + 1]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
cmp rdx, 0xf
cmova rax, qword [rsp + 0x60]
mov word [rax + rcx], 0x20
lea rax, [rsp + 0x60]
jmp 0x14011b020
mov qword [rsp + 0x20], 1
lea r9, [0x14040b38c]
mov edx, 1
lea rcx, [rsp + 0x60]
call fcn.14011fb80
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rsi
lea r8, [rbp - 0x20]
lea rcx, [rsp + 0x40]
call fcn.140120f10
nop
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x14011b08b
lea rax, [rcx + 1]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
cmp rdx, 0xf
cmova rax, qword [rsp + 0x40]
mov word [rax + rcx], 0x20
lea rax, [rsp + 0x40]
jmp 0x14011b0aa
mov qword [rsp + 0x20], 1
lea r9, [0x14040b38c]
mov edx, 1
lea rcx, [rsp + 0x40]
call fcn.14011fb80
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea r9, [rbp - 0x60]
lea r8, [rbp - 0x40]
mov rcx, r15
call fcn.140120f10
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x14011b115
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b10f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b567
call fcn.14015511c
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x14011b152
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b14d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b56d
call fcn.14015511c
movdqa xmm0, xmmword [0x14040d5e0]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], 0
mov rdx, qword [rbp - 8]
cmp rdx, 0xf
jbe 0x14011b1a1
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b19b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b573
call fcn.14015511c
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x14011b1de
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b1d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b579
call fcn.14015511c
movdqa xmm0, xmmword [0x14040d5e0]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14011b22c
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b227
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b57f
call fcn.14015511c
movdqa xmm0, xmmword [0x14040d5e0]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x14011b4fa
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b4f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b52b
jmp 0x14011b4f5
cmp dword [rbx + 0x12c], r12d
jle 0x14011b32a
lea rcx, [rbx + 8]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x14011b29f
mov rcx, qword [rcx]
cmp r8, 3
jne 0x14011b2fe
lea rdx, [0x14040b3a0]
call fcn.140356360
test eax, eax
jne 0x14011b2fe
mov edi, 0x1505
mov r8d, r12d
lea rdx, str.sub_onupdate
movsx eax, byte [rdx]
test al, al
je 0x14011b2dc
imul edi, edi, 0x21
add edi, eax
inc r8d
inc rdx
cmp r8d, 0xd
jb 0x14011b2c4
mov dword [rsp + 0x20], r12d
mov r9d, 0xffffffff
mov r8d, edi
mov rdx, r15
mov rcx, qword [0x1406a2cc0]
call fcn.140125130
jmp 0x14011b4fa
mov edi, 0x1505
mov r8d, r12d
lea rdx, str.sub_frozen
nop dword [rax]
movsx eax, byte [rdx]
test al, al
je 0x14011b2dc
imul edi, edi, 0x21
add edi, eax
inc r8d
inc rdx
cmp r8d, 0xb
jb 0x14011b310
jmp 0x14011b2dc
mov edi, 0x1505
cmp byte [rbx + 0x128], r12b
mov rbx, qword [0x1406a2cc0]
je 0x14011b3ee
mov r8d, r12d
mov rdx, r12
lea rcx, [0x140000000]
movsx eax, byte [rdx + rcx + 0x40b3d0]
test al, al
je 0x14011b3a2
imul edi, edi, 0x21
add edi, eax
movsx eax, byte [rdx + rcx + 0x40b3d1]
test al, al
je 0x14011b3a2
imul edi, edi, 0x21
add edi, eax
movsx eax, byte [rdx + rcx + 0x40b3d2]
test al, al
je 0x14011b3a2
imul edi, edi, 0x21
add edi, eax
movsx eax, byte [rdx + rcx + 0x40b3d3]
test al, al
je 0x14011b3a2
imul edi, edi, 0x21
add edi, eax
add r8d, 4
add rdx, 4
cmp r8d, 0x10
jb 0x14011b350
mov qword [rsp + 0x30], rbx
mov rcx, rbx
call fcn.14015076c
test eax, eax
jne 0x14011b585
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x14011b590
mov r9d, 0xffffffff
mov r8d, edi
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.1401246d0
nop
mov rcx, rbx
call fcn.140150774
lea rax, [rbp - 0x80]
mov ebx, 0x202
jmp 0x14011b458
mov edx, r12d
lea rcx, str.sub_nosub
movsx eax, byte [rcx]
test al, al
je 0x14011b40e
imul edi, edi, 0x21
add edi, eax
inc edx
inc rcx
cmp edx, 0xa
jb 0x14011b3f8
mov qword [rsp + 0x30], rbx
mov rcx, rbx
call fcn.14015076c
test eax, eax
jne 0x14011b5a0
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x14011b5ab
mov r9d, 0xffffffff
mov r8d, edi
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.1401246d0
nop
mov rcx, rbx
call fcn.140150774
lea rax, [rbp - 0x60]
mov ebx, 0x404
movups xmm0, xmmword [rax]
movups xmmword [r15], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r15 + 0x10], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
or ebx, 1
test bl, 4
je 0x14011b4be
and ebx, 0xfffffffb
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x14011b4be
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b4b8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b5bb
call fcn.14015511c
nop
test bl, 2
je 0x14011b4fa
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14011b4fa
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14011b4f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011b525
call fcn.14015511c
mov rax, r15
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.140154c90
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.140192f04
int3
call fcn.140192f04
int3
mov ecx, 5
call fcn.1401503fc
int3
dec eax
mov dword [rbx + 0x4c], eax
mov ecx, 6
call fcn.1401503fc
nop
mov ecx, 5
call fcn.1401503fc
int3
dec eax
mov dword [rbx + 0x4c], eax
mov ecx, 6
call fcn.1401503fc
nop
call fcn.140192f04
nop
call fcn.140192f04
nop
call fcn.140192f04
nop
call fcn.140192f04
nop
call fcn.140192f04
nop
mov ecx, 5
call fcn.1401503fc
int3
dec eax
mov dword [rbx + 0x4c], eax
mov ecx, 6
call fcn.1401503fc
int3
mov ecx, 5
call fcn.1401503fc
int3
dec eax
mov dword [rbx + 0x4c], eax
mov ecx, 6
call fcn.1401503fc
nop
call fcn.140192f04
int3