Function at 0x140087070
Capabilities:
Hash data with crc32

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x40]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
lea rax, [rcx + 0x130]
mov qword [rbp - 0x18], rax
lea rax, [rcx + 0x2e8]
mov qword [rbp - 0x10], rax
add rcx, 8
mov r8d, 0x478
xor edx, edx
call fcn.14021ea60
mov qword [rbp - 8], rbx
mov qword [rbx], rdi
mov rcx, rsi
call fcn.14023e390
mov rdi, rax
inc rdi
mov rdx, qword [0x14032b520]
mov rcx, rdi
call qword [0x140321fb0]
mov r14, rax
mov rax, qword [0x14032b510]
test rax, rax
mov r15, qword [rbp - 8]
je 0x140087185
mov r8d, dword [rax + 0x4098]
movsx rdx, word [rax + 0x6338]
cmp dword [rax + rdx*8 + 0x633c], r8d
jne 0x14008712b
lea rdx, [rax + rdx*8]
add rdx, 0x633c
cmp rdi, 0xffffffffffffffff
je 0x140087179
add rax, 0x6330
inc word [rdx + 4]
jmp 0x140087183
inc edx
movsxd rdx, edx
imul rcx, rdx, 0x2aaaaaab
mov rbx, rcx
shr rbx, 0x3f
shr rcx, 0x20
add ecx, ebx
add ecx, ecx
lea ecx, [rcx + rcx*2]
sub edx, ecx
mov word [rax + 0x6338], dx
movsxd rcx, edx
lea rdx, [rax + rcx*8]
add rdx, 0x633c
mov dword [rax + rcx*8 + 0x633c], r8d
mov dword [rax + rcx*8 + 0x6340], 0
cmp rdi, 0xffffffffffffffff
jne 0x14008711f
inc word [rdx + 6]
add rax, 0x6334
inc dword [rax]
mov rcx, r14
mov rdx, rsi
mov r8, rdi
call fcn.14021e3b0
mov qword [r15 + 8], r14
mov rcx, rsi
call fcn.14023e390
inc eax
mov dword [r15 + 0xb0], eax
movzx ebx, byte [rsi]
test bl, bl
je 0x140087204
add rsi, 2
mov r8d, 0xffffffff
lea rdx, [0x14025f0d0]
mov eax, 0xffffffff
jmp 0x1400871e7
movzx ebx, bl
movzx edi, al
shr eax, 8
xor edi, ebx
xor eax, dword [rdx + rdi*4]
inc rsi
mov ebx, ecx
test cl, cl
je 0x140087200
movzx ecx, byte [rsi - 1]
cmp bl, 0x23
jne 0x1400871d0
cmp cl, 0x23
jne 0x1400871d0
cmp byte [rsi], 0x23
cmove eax, r8d
mov cl, reloc.WLDAP32.dll_Ordinal_35
jmp 0x1400871d0
not eax
jmp 0x140087206
xor eax, eax
lea rdx, [r15 + 0x10]
mov dword [r15 + 0x10], eax
mov rcx, qword [rbp - 0x18]
call fcn.14007f930
mov rax, qword [rbp - 8]
mov dword [rax + 0x54], 0xffffffff
movabs rcx, 0x7f7fffff7f7fffff
mov qword [rax + 0x4c], rcx
mov r8, qword [rax + 0x138]
movsxd r9, dword [rax + 0x130]
mov r10d, dword [r8 + r9*4 - 4]
dec r9
not r10d
mov cl, reloc.WLDAP32.dll_Ordinal_35
lea rbx, [0x1402d8db5]
lea r14, [0x14025f0d0]
mov esi, r10d
jmp 0x140087279
movzx ecx, cl
movzx edi, sil
shr esi, 8
xor edi, ecx
xor esi, dword [r14 + rdi*4]
inc rbx
mov ecx, edx
test dl, dl
je 0x140087292
movzx edx, byte [rbx - 1]
cmp cl, 0x23
jne 0x140087260
cmp dl, 0x23
jne 0x140087260
cmp byte [rbx], 0x23
cmove esi, r10d
mov dl, reloc.WLDAP32.dll_Ordinal_35
jmp 0x140087260
not esi
mov rcx, qword [rax]
cmp dword [rcx + 0x418c], esi
jne 0x1400872ca
lea r8, str.MOVE
mov ecx, esi
mov edx, reloc.WS2_32.dll_inet_addr
xor r9d, r9d
call fcn.14009f2d0
mov rax, qword [rbp - 8]
mov r8, qword [rax + 0x138]
movsxd r9, dword [rax + 0x130]
dec r9
mov dword [rax + 0xb4], esi
mov r8d, dword [r8 + r9*4]
not r8d
mov dl, reloc.WLDAP32.dll_Ordinal_35
lea rcx, [0x1402d8ffe]
mov esi, r8d
jmp 0x140087309
movzx edx, dl
movzx edi, sil
shr esi, 8
xor edi, edx
xor esi, dword [r14 + rdi*4]
inc rcx
mov edx, ebx
test bl, bl
je 0x140087322
movzx ebx, byte [rcx - 1]
cmp dl, 0x23
jne 0x1400872f0
cmp bl, 0x23
jne 0x1400872f0
cmp byte [rcx], 0x23
cmove esi, r8d
mov bl, reloc.WLDAP32.dll_Ordinal_35
jmp 0x1400872f0
not esi
mov rcx, qword [rax]
cmp dword [rcx + 0x418c], esi
jne 0x14008734c
lea r8, str.TAB
mov ecx, esi
mov edx, reloc.WS2_32.dll_inet_addr
xor r9d, r9d
call fcn.14009f2d0
mov rax, qword [rbp - 8]
mov rcx, qword [rax]
mov dword [rax + 0xb8], esi
movaps xmm0, xmmword [0x140260360]
movups xmmword [rax + 0xd0], xmm0
mov word [rax + 0x110], 0xffff
mov dword [rax + 0x114], 0xffffffff
mov dword [rax + 0x12c], 0x7f7fffff
movaps xmm0, xmmword [0x140260370]
movups xmmword [rax + 0x11c], xmm0
mov qword [rax + 0x2a0], 0xffffffffffffffff
mov dword [rax + 0x2a8], 0xbf800000
movsd xmm0, qword [0x14025e010]
movsd qword [rax + 0x2d0], xmm0
mov dword [rax + 0x2d8], 0xffffffff
mov word [rax + 0x43e], 0xffff
mov rdx, qword [rbp - 0x10]
mov qword [rax + 0x2e0], rdx
add rcx, 0x3e80
mov qword [rax + 0x320], rcx
mov rcx, qword [rax + 8]
mov qword [rax + 0x328], rcx
movaps xmm0, xmmword [0x140260310]
movups xmmword [rax + 0x420], xmm0
xorps xmm0, xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov dword [rax + 0x24], 0xffffffff
mov byte [rax + 0x3d], 1
add rsp, 0x48
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret