Function at 0x140058c00
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov rbx, rdx
mov rsi, rcx
mov rbp, qword [0x140114180]
test rdx, rdx
jne 0x140058c2d
mov rcx, rsi
call fcn.1400d3a00
mov rbx, rax
lea rcx, [rbp + 0x61d8]
lea edx, [rbx + 1]
call fcn.1400319e0
mov rdi, qword [rbp + 0x61e0]
mov rcx, rdi
mov qword [rsp + 0x38], rsi
mov rdx, rsi
mov r8, rbx
call fcn.1400a5150
mov qword [rsp + 0x28], rdi
mov byte [rdi + rbx], 0
movsxd rax, dword [rbp + 0x61e8]
test rax, rax
je 0x140058c9d
mov rsi, qword [rbp + 0x61f0]
shl rax, 3
lea rdi, [rax + rax*8]
jmp 0x140058c8a
add rsi, 0x48
add rdi, 0xffffffffffffffb8
je 0x140058c9d
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x140058c80
mov rcx, rbp
mov rdx, rsi
call rax
jmp 0x140058c80
mov qword [rsp + 0x30], rbx
test rbx, rbx
jle 0x140058ec9
mov rax, qword [rsp + 0x30]
mov r12, qword [rsp + 0x28]
lea r15, [r12 + rax]
add rax, r12
add rax, 0xffffffffffffffff
mov qword [rsp + 0x40], rax
xor edi, edi
xor ebx, ebx
mov qword [rsp + 0x20], rbp
jmp 0x140058ced
xor ebx, ebx
xor edi, edi
mov rbp, qword [rsp + 0x20]
nop dword [rax]
add r12, 1
cmp r12, r15
jae 0x140058ec9
lea r13, [r12 + 3]
mov r8, r12
mov rsi, r12
jmp 0x140058d0c
add rsi, 1
add r8, 1
add r13, 1
movzx eax, byte [rsi]
cmp al, 0xa
je 0x140058d00
cmp al, 0xd
je 0x140058d00
mov r12, rsi
cmp rsi, r15
jae 0x140058d60
mov rcx, r15
sub rcx, r8
add rcx, rsi
mov rdx, qword [rsp + 0x40]
mov r12, rsi
cmp al, 0xa
je 0x140058d60
nop word cs:[rax + rax]
nop
cmp al, 0xd
je 0x140058d60
cmp r8, rdx
je 0x140058d5d
movzx eax, byte [r12 + 1]
add r12, 1
add rdx, 0xffffffffffffffff
cmp al, 0xa
jne 0x140058d40
jmp 0x140058d60
mov r12, rcx
mov byte [r12], 0
mov al, byte [rsi]
cmp al, 0x3b
je 0x140058ce0
cmp al, 0x5b
jne 0x140058e40
cmp r12, rsi
jbe 0x140058e40
cmp byte [r12 - 1], 0x5d
jne 0x140058e40
lea rbp, [r12 - 1]
mov byte [rbp], 0
add rsi, 1
not r8
add r8, rbp
mov rcx, rsi
mov edx, 0x5d
call fcn.1400a4fd0
test rax, rax
je 0x140058cd4
mov r14, rax
lea rcx, [rax + 1]
sub rbp, rcx
mov edx, 0x5b
mov r8, rbp
call fcn.1400a4fd0
test rax, rax
mov rbp, qword [rsp + 0x20]
je 0x140058ce0
mov byte [r14], 0
mov rbp, qword [0x140114180]
mov bl, byte [rsi]
test bl, bl
je 0x140058e6a
mov ecx, 0xffffffff
mov esi, 0xffffffff
jmp 0x140058e1f
movzx ebx, bl
movzx edi, cl
shr ecx, 8
xor edi, ebx
lea rbx, [0x1400d97e0]
xor ecx, dword [rbx + rdi*4]
add r13, 1
mov ebx, edx
test dl, dl
je 0x140058e66
movzx edx, byte [r13 - 1]
cmp bl, 0x23
jne 0x140058e00
cmp dl, 0x23
jne 0x140058e00
cmp byte [r13], 0x23
cmove ecx, esi
mov dl, 0x23
jmp 0x140058e00
test rbx, rbx
je 0x140058ce0
test rdi, rdi
je 0x140058ce0
mov rcx, rbp
mov rdx, rbx
mov r8, rdi
mov r9, rsi
call qword [rbx + 0x28]
jmp 0x140058ce0
not ecx
jmp 0x140058e6c
xor ecx, ecx
movsxd rdx, dword [rbp + 0x61e8]
test rdx, rdx
je 0x140058cd0
mov rsi, qword [rbp + 0x61f0]
shl rdx, 3
lea rdx, [rdx + rdx*8]
mov rbp, qword [rsp + 0x20]
cmp dword [rsi + 8], ecx
je 0x140058eae
add rsi, 0x48
mov ebx, 0
mov edi, 0
add rdx, 0xffffffffffffffb8
jne 0x140058e90
jmp 0x140058ce0
add rax, 1
mov rcx, rbp
mov rdx, rsi
mov r8, rax
call qword [rsi + 0x20]
mov rdi, rax
mov rbx, rsi
jmp 0x140058ce0
mov byte [rbp + 0x61d0], 1
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x30]
call fcn.1400a5150
movsxd rax, dword [rbp + 0x61e8]
test rax, rax
je 0x140058f2d
mov rsi, qword [rbp + 0x61f0]
shl rax, 3
lea rdi, [rax + rax*8]
jmp 0x140058f1a
add rsi, 0x48
add rdi, 0xffffffffffffffb8
je 0x140058f2d
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140058f10
mov rcx, rbp
mov rdx, rsi
call rax
jmp 0x140058f10
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret