Function at 0x140075880
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov r14, r9
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
mov r12, qword [rcx + 0x10]
mov rax, qword [0x14019b240]
test rax, rax
je 0x1400758bb
test al, 2
jne 0x1400758c4
xor r15d, r15d
mov bpl, 1
jmp 0x1400758e3
call fcn.1400e1dd0
test al, 2
je 0x1400758b3
mov r15, qword [0x14019b240]
test r15, r15
je 0x140075d64
and r15d, 0x400
sete bpl
shr r15d, 0xa
mov rax, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rax, rdx
cmp rax, 3
mov qword [rsp + 0x70], rsi
jbe 0x140075d1f
mov rax, qword [rdi + 8]
mov dword [rax + rdx], 0
mov rax, qword [rdi]
mov r13, qword [rdi + 0x10]
add r13, 4
mov qword [rdi + 0x10], r13
mov rcx, rax
sub rcx, r13
cmp rcx, 3
mov qword [rsp + 0x78], r14
mov byte [rsp + 0x37], bpl
ja 0x140075940
mov rcx, r13
add rcx, 4
jae 0x140075c06
xor r14d, r14d
xor ebp, ebp
jmp 0x14007599f
mov rsi, r12
mov r12, rax
mov rdx, qword [rdi + 0x10]
sub r12, rdx
cmp r12, 3
jbe 0x140075d36
mov r12, rsi
mov rax, qword [rdi + 8]
mov dword [rax + rdx], 0x7458547a
mov r13, qword [rdi + 0x10]
add r13, 4
mov qword [rdi + 0x10], r13
test bpl, bpl
je 0x140075983
mov ebp, 0x6b797bf1
mov r14d, 4
jmp 0x14007599f
lea rdx, [0x1401797f8]
mov r14d, 4
mov r8d, 4
xor ecx, ecx
call fcn.14000b8a0
mov ebp, eax
mov dword [rsp + 0x50], r15d
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], r12
mov rax, qword [rdi]
mov rcx, rax
sub rcx, r13
cmp rcx, rbx
jae 0x140075a13
mov r15d, 0x53
add r13, rbx
jb 0x140075c97
lea rcx, [rax + rax]
cmp rcx, r13
cmova r13, rcx
cmp r13, 9
mov r12d, 8
cmovae r12, r13
mov rdx, r12
not rdx
shr rdx, 0x3f
test rax, rax
je 0x140075c4a
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], 1
mov qword [rsp + 0x48], rax
jmp 0x140075c53
mov r12, rax
mov r13, qword [rsp + 0x70]
mov r15, qword [rdi + 0x10]
sub r12, r15
cmp r12, rbx
jb 0x140075d4d
mov rcx, qword [rdi + 8]
add rcx, r15
mov rdx, r13
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
add r15, rbx
mov qword [rdi + 0x10], r15
add r14, rbx
mov qword [rsp + 0x58], r14
pop rax
mov rsi, r12
lea rdx, [rax + rax]
cmp rdx, rcx
cmova rcx, rdx
cmp rcx, 9
mov r12d, 8
cmovae r12, rcx
mov rdx, r12
not rdx
shr rdx, 0x3f
test rax, rax
je 0x140075cae
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], 1
mov qword [rsp + 0x48], rax
jmp 0x140075cb7
mov qword [rsp + 0x40], 0
mov r13, qword [rsp + 0x70]
lea rcx, [rsp + 0x80]
lea r9, [rsp + 0x38]
mov r8, r12
call fcn.14009dbd0
cmp qword [rsp + 0x80], 0
mov rax, qword [rsp + 0x88]
je 0x140075cf6
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x140075c97
mov r12, qword [rdi]
jmp 0x140075a1b
mov qword [rsp + 0x40], 0
lea rcx, [rsp + 0x80]
lea r9, [rsp + 0x38]
mov r8, r12
call fcn.14009dbd0
cmp qword [rsp + 0x80], 0
mov rax, qword [rsp + 0x88]
je 0x140075d02
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x140075d0e
mov r12, qword [rdi]
jmp 0x140075946
mov qword [rdi + 8], rax
mov qword [rdi], r12
jmp 0x140075a1b
mov qword [rdi + 8], rax
mov qword [rdi], r12
jmp 0x140075946
mov r13, qword [rdi + 0x10]
xor r14d, r14d
xor ebp, ebp
mov r12, rsi
jmp 0x14007599f
mov r8d, 4
mov rcx, rdi
call fcn.1400e1240
mov rdx, qword [rdi + 0x10]
jmp 0x1400758fc
mov r8d, 4
mov rcx, rdi
call fcn.1400e1240
mov rdx, qword [rdi + 0x10]
jmp 0x140075957
mov rcx, rdi
mov rdx, r15
mov r8, rbx
call fcn.1400e1240
mov r15, qword [rdi + 0x10]
jmp 0x140075a2b
call fcn.1400e1dd0
mov r15, rax
jmp 0x1400758d4