Function at 0x1400048a0
Capabilities:
Hash data with crc32

Disassembly:
push rbp
push rbx
push rdi
push r14
push r15
lea rbp, [rsp - 0x200]
sub rsp, 0x300
mov rax, qword [0x140031010]
xor rax, rsp
mov qword [rbp + 0x1e8], rax
mov qword [rbp + 0x58], rdx
xor eax, eax
mov qword [rbp + 0x60], rcx
xor ebx, ebx
mov ecx, 0x105
mov dword [rbp + 0x1cc], eax
lea edx, [rbx + 2]
call fcn.140012508
lea edx, [rbx + 2]
mov ecx, 0x209
mov r15, rax
call fcn.140012508
mov r14, rax
test rax, rax
je 0x14000514f
test r15, r15
je 0x14000514f
lea edx, [rbx + 2]
mov ecx, 0x105
call fcn.140012508
mov rdi, rax
test rax, rax
je 0x14000514f
mov rax, qword [0x1400c1d60]
mov edx, 0x104
mov qword [rsp + 0x340], rsi
add rax, 0x40a80
mov qword [rsp + 0x2f8], r12
mov rcx, rdi
mov qword [rsp + 0x2f0], r13
call rax
mov rax, qword [0x1400c1d68]
mov rcx, rdi
add rax, reloc.KERNEL32.dll_RtlUnwindEx
call rax
mov eax, 0x6961
mov dword [rbp - 0x48], 0x16499eb7
lea r9d, [rbx + 9]
mov word [rbp - 0x30], ax
lea r8d, [rbx + 0x4d]
mov dword [rbp - 0x44], 0x9777591a
lea rdx, [rbp - 0x48]
mov dword [rbp - 0x40], 0x6ce83127
lea rcx, [rbp + 0x110]
mov dword [rbp - 0x3c], 0x3c1054ca
mov dword [rbp - 0x38], 0x403eda26
mov dword [rbp - 0x34], 0x4860d1ee
mov word [rsp + 0x20], 0x2c
call fcn.140005520
lea rax, [rbp + 0x110]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
cmp word [rax + 2], 0x3a
je 0x1400049e0
mov r8, rdi
mov edx, 0x104
mov rcx, r15
call fcn.140012578
mov rcx, rdi
call fcn.1400125fc
mov r8, qword [rsp + 0x38]
mov edx, 0x104
mov rcx, r15
call fcn.140012578
mov r8, r15
mov edx, 0x208
mov rcx, r14
call fcn.140012510
mov r9d, 0x3d
mov dword [rbp - 8], 0xdf3ef07
lea rdx, [rbp - 8]
mov dword [rbp - 4], 0x4c390655
lea rcx, [rbp + 0x150]
mov dword [rbp], 0x2e721ff3
mov dword [rbp + 4], 0xf7e2292c
lea r8d, [r9 - 0x2a]
mov dword [rbp + 8], 0x3c843029
mov dword [rbp + 0xc], 0x69f6e9c7
mov dword [rbp + 0x10], 0xb8a63ea3
mov word [rsp + 0x20], 0x38
call fcn.140005790
lea rax, [rbp + 0x150]
mov edx, 0x208
mov qword [rsp + 0x38], rax
mov rcx, r14
mov r8, qword [rsp + 0x38]
call fcn.140012578
mov eax, 0xbebd
mov dword [rbp - 0x78], 0xfff27c69
mov word [rbp - 0x64], ax
lea rdx, [rbp - 0x78]
mov eax, 0x1a
mov dword [rbp - 0x74], 0xeccb24b4
mov r8d, eax
mov dword [rbp - 0x70], 0x7bbc5ca3
lea rcx, [rbp + 0x80]
mov dword [rbp - 0x6c], 0x5c122f4d
mov dword [rbp - 0x68], 0xda4b31a0
lea r9d, [rax - 0xf]
mov word [rsp + 0x20], ax
call fcn.140005a30
lea rax, [rbp + 0x80]
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x38], rax
mov rsi, qword [rsp + 0x38]
nop
inc r8
cmp word [rsi + r8*2], bx
jne 0x140004ae0
dec r8
lea r9, [0x14002c780]
mov edi, 0xffffffff
cmp r8, 0xffffffffffffffff
jne 0x140004b03
mov edx, edi
jmp 0x140004b23
lea rcx, [r8 - 1]
mov rdx, rsi
call fcn.140003520
movzx ecx, word [rsi + r8*2]
mov edx, eax
xor rcx, rax
shr edx, 8
movzx eax, cl
xor edx, dword [r9 + rax*4]
not edx
mov ecx, edx
call fcn.1400071e0
test rax, rax
jne 0x140004b39
mov rcx, rsi
call fcn.140006d60
mov edx, 0xc797320e
mov rcx, rax
call fcn.1400073c0
mov ecx, 0x826b7be4
mov r13, rax
call fcn.1400071e0
mov edx, 0x6dcc221a
mov rcx, rax
call fcn.1400073c0
mov ecx, 0x826b7be4
mov qword [rsp + 0x30], rax
call fcn.1400071e0
mov edx, 0x37da1d96
mov rcx, rax
call fcn.1400073c0
mov r9d, 0x3d
mov dword [rsp + 0x40], 0xf0cbf7d0
mov r12, rax
mov dword [rsp + 0x44], 0xbb96de4
mov eax, 0x1005
mov dword [rsp + 0x48], 0xb7735ae8
lea rdx, [rbp - 0x60]
mov dword [rsp + 0x4c], 0xf4c5e12c
lea r8d, [r9 - 0x1f]
mov dword [rsp + 0x50], 0x34938b2a
lea rcx, [rbp + 0x98]
mov dword [rsp + 0x54], 0xcc005c3d
mov dword [rsp + 0x58], 0xeff5b6a4
mov dword [rsp + 0x5c], 0x41332e72
mov dword [rsp + 0x60], 0x70e2ffd2
mov dword [rsp + 0x64], 0x15413bc9
mov dword [rsp + 0x68], 0x295564ee
mov dword [rsp + 0x6c], 0xae2d576d
mov dword [rbp - 0x60], 0xff3426e4
mov dword [rbp - 0x5c], 0x5555ed1f
mov dword [rbp - 0x58], 0x3618a3b4
mov dword [rbp - 0x54], 0x1dff3471
mov dword [rbp - 0x50], 0x4785d55a
mov word [rbp - 0x4c], ax
mov word [rsp + 0x20], 0x17
call fcn.140005a30
lea rax, [rbp + 0x98]
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x38], rax
mov rsi, qword [rsp + 0x38]
inc r8
cmp word [rsi + r8*2], bx
jne 0x140004c44
dec r8
cmp r8, 0xffffffffffffffff
je 0x140004c7d
lea rcx, [r8 - 1]
mov rdx, rsi
call fcn.140003520
movzx ecx, word [rsi + r8*2]
mov edi, eax
xor rcx, rax
shr edi, 8
movzx eax, cl
lea rcx, [0x14002c780]
xor edi, dword [rcx + rax*4]
not edi
mov ecx, edi
call fcn.1400071e0
test rax, rax
jne 0x140004c93
mov rcx, rsi
call fcn.140006d60
mov edx, 0xd21bf9f
mov rcx, rax
call fcn.1400073c0
mov rdi, rax
test rax, rax
jne 0x140004cc2
mov rcx, r14
mov edi, 0xc0000001
call fcn.1400125fc
mov rcx, r15
call fcn.1400125fc
jmp 0x140005133
test r13, r13
je 0x140004d38
mov rsi, qword [rsp + 0x30]
test rsi, rsi
je 0x140004d38
xorps xmm0, xmm0
lea rcx, [rbp + 0x1d8]
movups xmmword [rbp + 0x1d8], xmm0
call r13
lea rdx, [rbp + 0x1b0]
mov qword [rbp + 0x1b0], rbx
lea rcx, [rbp + 0x1d8]
call rsi
mov rcx, qword [rbp + 0x1b0]
call rdi
mov r8, qword [rbp + 0x1b0]
mov edx, 0x208
mov rcx, r14
call fcn.140012578
cmp qword [rbp + 0x1b0], rbx
je 0x140004d38
test r12, r12
je 0x140004d38
lea rcx, [rbp + 0x1b0]
call r12
mov qword [rbp + 0x1b0], rbx
mov r9d, 0x2e
mov dword [rsp + 0x70], 0x824ae85a
mov eax, 0xb126
mov dword [rsp + 0x74], 0xcdf687b8
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x78], 0xa56e349e
lea rcx, [rbp + 0x68]
mov dword [rsp + 0x7c], 0xa3ae5b5
lea r8d, [r9 - 0x15]
mov word [rbp - 0x80], ax
mov word [rsp + 0x20], 0x2a
call fcn.140005c40
lea rax, [rbp + 0x68]
mov edx, 0x208
mov qword [rsp + 0x30], rax
mov rcx, r14
mov r8, qword [rsp + 0x30]
call fcn.140012578
lea r8, [rbp + 0x1b8]
mov qword [rbp + 0x1b8], rbx
mov edx, 8
mov rcx, 0xffffffffffffffff
mov edi, ebx
call fcn.1400087d0
mov ecx, 4
test eax, eax
jne 0x140004df9
lea rax, [rbp + 0x1d0]
mov dword [rbp + 0x1c0], ebx
mov r9d, ecx
mov qword [rsp + 0x20], rax
lea edx, [rcx + 0x10]
mov rcx, qword [rbp + 0x1b8]
lea r8, [rbp + 0x1c0]
call fcn.1400085b2
test eax, eax
cmove edi, dword [rbp + 0x1c0]
mov rcx, qword [rbp + 0x1b8]
test rcx, rcx
je 0x140004e0a
call fcn.1400085e6
test edi, edi
je 0x140004e13
call fcn.140006650
mov r12d, 0x32
mov qword [rbp + 0x1c8], 0xfffffffffff0bdc0
mov esi, ebx
lea r13d, [r12 - 0x29]
nop dword [rax + rax]
cmp esi, 0x14
je 0x1400050f4
mov word [rsp + 0x20], r12w
mov r9d, 0x45
lea rdx, [rsp + 0x40]
lea r8d, [r9 - 2]
test edi, edi
jne 0x140005017
lea rcx, [rbp + 0xb0]
call fcn.140005e00
lea rax, [rbp + 0xb0]
xor edx, edx
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
call fcn.140006850
mov rbx, rax
test rax, rax
jne 0x140005097
mov eax, 0x4163
mov dword [rbp - 0x28], 0x861b61b
lea r9d, [rdi + 0x22]
mov word [rbp - 0x10], ax
lea r8d, [rdi + 0x2c]
mov dword [rbp - 0x24], 0x6fdf7676
lea rdx, [rbp - 0x28]
mov dword [rbp - 0x20], 0xcf841012
lea rcx, [rbp + 0x130]
mov dword [rbp - 0x1c], 0x92ef3039
mov dword [rbp - 0x18], 0x196ddc09
mov dword [rbp - 0x14], 0x8d41e4af
mov word [rsp + 0x20], 4
call fcn.140005520
lea rax, [rbp + 0x130]
xor edx, edx
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
call fcn.140006850
mov rbx, rax
test rax, rax
jne 0x140005097
lea r9d, [rdi + 0x12]
mov dword [rbp + 0x18], 0xa3f6c3f3
lea r8d, [rdi + 0x44]
mov dword [rbp + 0x1c], 0xccd6b0ac
lea rdx, [rbp + 0x18]
mov dword [rbp + 0x20], 0xf6803d14
lea rcx, [rbp + 0x170]
mov dword [rbp + 0x24], 0x7b0e43f4
mov dword [rbp + 0x28], 0x3b3cdd51
mov dword [rbp + 0x2c], 0xfb31100
mov dword [rbp + 0x30], 0xead72f0a
mov word [rsp + 0x20], 0x33
call fcn.140005790
lea rax, [rbp + 0x170]
xor edx, edx
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
call fcn.140006850
mov rbx, rax
test rax, rax
jne 0x140005097
mov eax, 0x4347
mov dword [rbp + 0x38], 0x61459042
lea r9d, [rdi + 0x18]
mov word [rbp + 0x54], ax
lea r8d, [rdi + 0xf]
mov dword [rbp + 0x3c], 0xca089d61
lea rdx, [rbp + 0x38]
mov dword [rbp + 0x40], 0x54487453
lea rcx, [rbp + 0x190]
mov dword [rbp + 0x44], 0x84561314
mov dword [rbp + 0x48], 0x45ff0219
mov dword [rbp + 0x4c], 0xb63f8393
mov dword [rbp + 0x50], 0x7feda25c
mov word [rsp + 0x20], 8
call fcn.140006040
lea rax, [rbp + 0x190]
xor edx, edx
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
call fcn.140006850
mov rbx, rax
test rax, rax
jne 0x140005097
lea r9d, [rdi + 0x39]
mov word [rsp + 0x20], r13w
lea r8d, [rdi + 0x49]
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0xc8]
call fcn.140005e00
lea rax, [rbp + 0xc8]
xor edx, edx
jmp 0x14000506b
lea rcx, [rbp + 0xe0]
call fcn.140005e00
lea rax, [rbp + 0xe0]
mov edx, edi
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
call fcn.140006850
mov rbx, rax
test rax, rax
jne 0x140005097
lea r9d, [rax + 0x39]
mov word [rsp + 0x20], r13w
lea r8d, [rax + 0x49]
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0xf8]
call fcn.140005e00
lea rax, [rbp + 0xf8]
mov edx, edi
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
call fcn.140006850
mov rbx, rax
test rax, rax
jne 0x140005097
lea rdx, [rbp + 0x1c8]
xor ecx, ecx
call fcn.1400086c3
inc esi
jmp 0x140004e30
inc esi
test rbx, rbx
je 0x140004e30
mov r12, qword [rbp + 0x58]
mov r8, rbx
mov rsi, qword [rbp + 0x60]
mov rdx, r14
mov qword [rsp + 0x28], r12
mov rcx, r15
mov qword [rsp + 0x20], rsi
call fcn.140004300
mov edi, eax
test eax, eax
jns 0x140005116
mov qword [rsp + 0x28], r12
xor r8d, r8d
mov rdx, r14
mov qword [rsp + 0x20], rsi
mov rcx, r15
call fcn.140004300
mov rcx, r14
mov edi, eax
call fcn.1400125fc
mov rcx, r15
call fcn.1400125fc
jmp 0x14000512b
mov r12, qword [rbp + 0x58]
xor r8d, r8d
mov rsi, qword [rbp + 0x60]
mov rdx, r14
mov qword [rsp + 0x28], r12
mov rcx, r15
mov qword [rsp + 0x20], rsi
call fcn.140004300
mov edi, eax
mov rcx, r14
call fcn.1400125fc
mov rcx, r15
call fcn.1400125fc
test rbx, rbx
je 0x140005133
mov rcx, rbx
call fcn.1400085e6
mov r13, qword [rsp + 0x2f0]
mov eax, edi
mov r12, qword [rsp + 0x2f8]
mov rsi, qword [rsp + 0x340]
jmp 0x140005154
mov eax, 0xc0000001
mov rcx, qword [rbp + 0x1e8]
xor rcx, rsp
call fcn.140008800
add rsp, 0x300
pop r15
pop r14
pop rdi
pop rbx
pop rbp
ret