Function at 0x140190f40
Capabilities:
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov eax, dword [0x1406d4ca8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406d4cac], 0xa
setl dl
or dl, al
nop word cs:[rax + rax]
nop dword [rax]
mov eax, reloc.WS2_32.dll_recv
call fcn.1401f8850
sub rsp, rax
mov rax, rsp
test dl, dl
je 0x140190f80
mov qword [rbp - 0x20], rax
mov eax, dword [0x1406cdfdc]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
cmp dword [0x1406cdfd8], 0xa
setl cl
or cl, al
mov byte [rbp + 7], cl
mov eax, dword [0x1406d4108]
mov qword [rbp - 0x28], rax
mov eax, dword [0x1406d410c]
mov dword [rbp - 0xc], eax
je 0x140191012
mov rax, qword [rbp - 0x28]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
cmp dword [rbp - 0xc], 0xa
jl 0x140190fe5
test ecx, ecx
jne 0x140191010
mov eax, dword [0x1406d3d98]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp dword [0x1406d3d9c], 0xa
setl al
or al, dl
cmp al, 1
je 0x140191320
jmp 0x140191602
jmp 0x140191010
mov rax, qword [rbp - 0x28]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
cmp dword [rbp - 0xc], 0xa
jl 0x140191029
test ecx, ecx
jne 0x140191050
mov eax, dword [0x1406d3d98]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x1406d3d9c], 0xa
setl al
or al, cl
cmp al, 1
je 0x140191052
jmp 0x140191312
jmp 0x140191050
mov rdx, qword gs:[0x60]
test al, al
je 0x140191312
mov rax, qword [rdx + 0x18]
mov rax, qword [rax + 0x10]
mov qword [rbp - 8], rax
cmp dword [0x1406d3da0], 0xa
jl 0x14019108d
mov eax, dword [0x1406d3da4]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140191300
mov eax, dword [0x1406d3da8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete r8b
cmp dword [0x1406d3dac], 0xa
setl dl
mov ecx, dword [0x1406d3db0]
lea ebx, [rcx - 1]
imul ebx, ecx
test bl, 1
sete bl
cmp dword [0x1406d3db4], 0xa
setl al
cmp dword [0x1406d3db8], 0xa
jl 0x1401910e4
mov ecx, dword [0x1406d3dbc]
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
jne 0x140191310
or dl, r8b
or al, bl
mov byte [rbp - 0x18], al
mov r8, qword [rbp - 8]
mov r10, qword [r8 + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov r9d, dword [rax + r10 + 0x88]
test r9, r9
je 0x1401912b0
mov eax, dword [r10 + r9 + 0x18]
mov r15, rax
jmp 0x140191134
mov edi, 0x811c9dc5
mov rax, r15
cmp edi, 0x491e0a9c
je 0x140190fce
sub r15, 1
jb 0x1401912b0
add eax, 0xffffffff
mov ecx, dword [r10 + r9 + 0x20]
add rcx, r10
mov r12d, dword [rcx + rax*4]
mov al, byte [r10 + r12]
test al, al
je 0x140191120
add r12, r10
mov edi, 0x811c9dc5
jmp 0x14019126d
mov ecx, edi
and ecx, 0x7ab683ed
or ecx, 0x1410812
mov eax, edi
and eax, 0x85497c12
xor eax, ecx
mov ecx, eax
xor ecx, 0x50af90c3
xor eax, 0xfebef7ed
and eax, ecx
mov r11d, edi
and r11d, 0xae11672e
mov r13d, esi
and r13d, 0xae11672e
mov ecx, eax
not ecx
mov ebx, r11d
not ebx
and ecx, ebx
and ebx, 0x6400fcd7
xor edi, 0x24006406
and edi, r11d
or edi, ebx
xor edi, eax
xor edi, 0x6400fcd7
xor r11d, eax
or r11d, ecx
not r11d
or r11d, edi
mov eax, esi
xor eax, 0xac106400
and eax, r13d
mov ecx, esi
and ecx, 0x12c8050
mov ebx, esi
and ebx, 0x50c21881
lea r14d, [rbx + 0x9148106]
xor r14d, ecx
xor ebx, 0xfdd6fc81
mov edi, esi
and edi, 0xac106400
or edi, 0x52831b03
xor edi, eax
mov eax, edi
xor eax, 0x53af9b53
xor r14d, 0xa390278
and r14d, eax
or edi, 0x400080
and edi, ebx
or edi, r14d
mov eax, esi
and eax, 0x51ee98d1
or eax, 0x2e016708
xor eax, r13d
xor eax, 0x7fefffd9
xor esi, 0xae11672e
or esi, eax
mov eax, esi
xor eax, edi
not eax
not esi
and esi, edi
or esi, eax
xor esi, r11d
imul edi, esi, 0x1000193
mov al, byte [r12]
test al, al
je 0x140191125
add r12, 1
movsx esi, al
add al, 0xbf
cmp al, 0x19
ja 0x140191170
nop
test dl, dl
je 0x140191280
mov eax, esi
and eax, 0xebcba6fa
and esi, 0x14345925
or esi, 0xab402048
xor esi, eax
xor esi, 0xab402068
jmp 0x140191170
mov al, byte [rbp - 0x18]
test al, al
je 0x1401912f0
nop word [rax + rax]
mov r8, qword [r8]
test al, al
je 0x1401912f0
cmp r8, qword [rbp - 8]
je 0x140190fce
mov r10, qword [r8 + 0x30]
test r10, r10
jne 0x1401910f4
jmp 0x140190fce
mov r8, qword [r8]
jmp 0x1401912c0
jmp 0x140191300
jmp 0x140191310
mov rcx, qword gs:[0x60]
jmp 0x140191052
mov rdx, qword gs:[0x60]
test al, al
je 0x140191602
mov rax, qword [rdx + 0x18]
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x30], rax
cmp dword [0x1406d3da0], 0xa
jl 0x14019135b
mov eax, dword [0x1406d3da4]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1401915f0
mov dword [rbp], ecx
mov eax, dword [0x1406d3da8]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
cmp dword [0x1406d3dac], 0xa
setl bl
mov edx, dword [0x1406d3db0]
lea edi, [rdx - 1]
imul edi, edx
test dil, 1
sete dl
cmp dword [0x1406d3db4], 0xa
setl cl
cmp dword [0x1406d3db8], 0xa
jl 0x1401913b5
mov edi, dword [0x1406d3dbc]
lea esi, [rdi - 1]
imul esi, edi
and esi, 1
jne 0x140191600
or bl, al
or cl, dl
mov rax, qword [rbp - 0x30]
mov r12, qword [rax + 0x30]
mov byte [rbp + 6], cl
mov qword [rbp - 0x18], rax
movsxd rax, dword [r12 + 0x3c]
mov ecx, dword [rax + r12 + 0x88]
mov rax, rcx
mov qword [rbp - 8], rcx
test rcx, rcx
je 0x1401915a0
mov rax, qword [rbp - 8]
mov eax, dword [r12 + rax + 0x18]
mov r15, rax
jmp 0x140191416
mov r10d, 0x811c9dc5
mov rax, r15
cmp r10d, 0x491e0a9c
je 0x140191610
sub r15, 1
jb 0x1401915a0
mov r13d, eax
add r13d, 0xffffffff
mov rax, qword [rbp - 8]
mov eax, dword [r12 + rax + 0x20]
add rax, r12
mov r8d, dword [rax + r13*4]
mov al, byte [r12 + r8]
test al, al
je 0x140191400
add r8, r12
mov r10d, 0x811c9dc5
jmp 0x140191559
mov esi, r10d
and esi, 0x7ab683ed
or esi, 0x1410812
mov eax, r10d
and eax, 0x85497c12
xor eax, esi
mov esi, eax
xor esi, 0x50af90c3
xor eax, 0xfebef7ed
and eax, esi
mov ecx, r10d
and ecx, 0xae11672e
mov r14d, r9d
and r14d, 0xae11672e
mov esi, eax
not esi
mov r11d, ecx
not r11d
and esi, r11d
and r11d, 0x6400fcd7
xor r10d, 0x24006406
and r10d, ecx
or r10d, r11d
xor r10d, eax
xor r10d, 0x6400fcd7
xor ecx, eax
or ecx, esi
not ecx
or ecx, r10d
mov esi, r9d
xor esi, 0xac106400
and esi, r14d
mov eax, r9d
and eax, 0x12c8050
mov edx, r9d
and edx, 0x50c21881
lea edi, [rdx + 0x9148106]
xor edi, eax
xor edx, 0xfdd6fc81
mov eax, r9d
and eax, 0xac106400
or eax, 0x52831b03
xor eax, esi
mov esi, eax
xor esi, 0x53af9b53
xor edi, 0xa390278
and edi, esi
or eax, 0x400080
and eax, edx
or eax, edi
mov edx, r9d
and edx, 0x51ee98d1
or edx, 0x2e016708
xor edx, r14d
xor edx, 0x7fefffd9
xor r9d, 0xae11672e
or r9d, edx
mov edx, r9d
xor edx, eax
not edx
not r9d
and r9d, eax
or r9d, edx
xor r9d, ecx
imul r10d, r9d, 0x1000193
mov al, byte [r8]
test al, al
je 0x140191406
add r8, 1
movsx r9d, al
add al, 0xbf
cmp al, 0x19
ja 0x140191450
nop dword [rax + rax]
test bl, bl
je 0x140191570
mov eax, r9d
and eax, 0xebcba6fa
and r9d, 0x14345925
or r9d, 0xab402048
xor r9d, eax
xor r9d, 0xab402068
jmp 0x140191450
mov cl, byte [rbp + 6]
test cl, cl
mov rax, qword [rbp - 0x18]
je 0x1401915e0
nop dword [rax + rax]
mov rax, qword [rax]
test cl, cl
je 0x1401915e0
cmp rax, qword [rbp - 0x30]
je 0x140191692
mov r12, qword [rax + 0x30]
test r12, r12
jne 0x1401913c4
jmp 0x140191692
mov rax, qword [rax]
jmp 0x1401915b0
jmp 0x1401915f0
jmp 0x140191600
mov rdx, qword gs:[0x60]
jmp 0x140191320
mov rcx, qword [rbp - 8]
mov eax, dword [r12 + rcx + 0x1c]
mov ecx, dword [r12 + rcx + 0x24]
add rax, r12
add rcx, r12
movzx ecx, word [rcx + r13*2]
mov edi, dword [rax + rcx*4]
add rdi, r12
mov ecx, dword [rbp]
cmp byte [rbp + 7], 0
je 0x14019101f
mov rax, qword [rbp - 0x20]
mov dword [rax], 0x3c48565a
mov ecx, dword [0x1406d4080]
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
sete cl
cmp dword [0x1406d4084], 0xa
setl dl
setge bl
or dl, cl
and al, bl
test dl, dl
jne 0x140191677
xor ebx, ebx
nop
test bl, 1
mov ebx, edx
je 0x140191670
mov rcx, qword [rbp - 0x20]
mov byte [rcx], 0x63
test al, al
je 0x1401916a3
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x140191690
mov ecx, dword [rbp]
xor edi, edi
cmp byte [rbp + 7], 0
je 0x14019101f
jmp 0x14019163c
mov word [rcx + 1], 0x736c
mov byte [rcx + 3], 0
sub rsp, 0x20
call rdi
nop
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret