Function at 0x1400a4080
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x270
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x140167c40]
xor rax, rsp
mov qword [rbp + 0x140], rax
mov r13, rcx
mov qword [rsp + 0x68], rcx
xor esi, esi
mov r15d, esi
mov dword [rsp + 0x30], esi
xor r8d, r8d
lea rdx, [rbp + 0x100]
mov rcx, qword [rcx + 8]
call fcn.140012870
test eax, eax
jle 0x1400a3244
movabs r14, 0x100000001b3
xorps xmm7, xmm7
lea r12, [0x140000000]
mov ecx, dword [rbp + 0x100]
sub ecx, 1
je 0x1400a2dfe
sub ecx, 1
je 0x1400a323a
cmp ecx, 1
jne 0x1400a3215
mov rax, qword [rbp + 0x118]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je case.0x1400a225d.2
cmp qword [rax + 0x18], 3
jbe 0x1400a2b02
movzx ebx, byte [rcx]
mov ecx, ebx
sub ecx, 2
je 0x1400a2aa2
sub ecx, 1
je 0x1400a2a3f
sub ecx, 1
je 0x1400a222e
sub ecx, 2
je 0x1400a21c2
cmp ecx, 1
je 0x1400a3244
jmp 0x1400a2b04
mov rcx, qword [rbp + 0x118]
call fcn.1400a6aa0
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400a21f0
mov rdx, rax
lea rcx, [rbp + 0x120]
call fcn.140017770
lea rcx, [rbp + 0x120]
call fcn.140090470
test al, al
je case.0x1400a225d.2
mov rcx, qword [rbp + 0x118]
call fcn.1400112f0
jmp 0x1400a3244
mov rcx, qword [rbp + 0x118]
call fcn.1400a6a00
mov rdi, rax
test rax, rax
je case.0x1400a225d.2
movzx eax, byte [rax]
cmp eax, 0x16
ja case.0x1400a225d.2
mov edx, dword [r12 + rax*4 + 0xa3280]
add rdx, r12
jmp rdx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x79], xmm0
mov word [rbp - 0x77], si
mov byte [rbp - 0x75], 0
movdqu xmmword [rbp - 0x60], xmm0
mov dword [rbp - 0x50], esi
mov byte [rsp + 0x78], reloc.WS2_32.dll_setsockopt
mov eax, dword [rdi + 0x14]
mov dword [rbp - 0x74], eax
movaps xmm0, xmmword [0x140136f20]
movups xmmword [rbp - 0x70], xmm0
mov dword [rsp + 0x20], reloc.WLDAP32.dll_Ordinal_60
lea r9, [rsp + 0x78]
mov r8d, 4
mov dl, 1
mov rcx, qword [0x14016bc30]
call fcn.1400a49a0
jmp case.0x1400a225d.2
mov dword [r13 + 0x5de8], esi
mov word [r13 + 0x5dec], si
lea rcx, [r13 + 0x5df0]
call fcn.1400a0b20
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x120], xmm1
xor r8d, r8d
mov qword [rbp + 0x130], r8
mov eax, dword [rdi + 0x39]
mov dword [r13 + 0x5de8], eax
movzx eax, word [rdi + 0x3d]
mov word [r13 + 0x5dec], ax
mov edx, eax
test rax, rax
je 0x1400a2319
lea r8, [rsp + 0x60]
lea rcx, [rbp + 0x120]
call fcn.1400a0110
mov r8, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x120]
sub r8, rcx
sar r8, 2
lea r8, [r8*4]
lea rdx, [rdi + 0x3f]
call sub.VCRUNTIME140.dll_memcpy
mov rdi, qword [rbp + 0x128]
mov rbx, qword [rbp + 0x120]
cmp rbx, rdi
je 0x1400a2387
nop dword [rax + rax]
movzx eax, word [rbx]
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x80]
lea rcx, [r13 + 0x5df0]
call fcn.1400a0290
mov rcx, qword [rax]
mov eax, dword [rbx]
mov dword [rcx + 0x14], eax
add rbx, 4
cmp rbx, rdi
jne 0x1400a2350
mov rbx, qword [rbp + 0x120]
test rbx, rbx
je case.0x1400a225d.2
mov rdx, qword [rbp + 0x130]
sub rdx, rbx
and rdx, 0xfffffffffffffffc
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400a23c3
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a3233
mov rcx, rbx
call fcn.14010df9c
jmp case.0x1400a225d.2
mov rcx, qword [rbp + 0x118]
call fcn.1400a6a50
mov rsi, rax
lea rbx, [r13 + 0x5df0]
lea r8, [rsp + 0x38]
cmp byte [rax + 3], 0
je 0x1400a2416
mov ecx, dword [rdi + 0x14]
mov dword [rsp + 0x38], ecx
lea rdx, [rbp + 0x90]
mov rcx, rbx
call fcn.1400a0290
mov rcx, qword [rax]
movzx eax, byte [rsi + 3]
add byte [rcx + 0x16], al
jmp case.0x1400a225d.2
mov eax, dword [rdi + 0x14]
mov dword [rsp + 0x38], eax
lea rdx, [rbp + 0xa0]
mov rcx, rbx
call fcn.1400a0290
mov rcx, qword [rax]
movzx eax, byte [rdi + 2]
cmp byte [rcx + 0x16], al
jbe 0x1400a2462
mov eax, dword [rdi + 0x14]
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0xb0]
mov rcx, rbx
call fcn.1400a0290
mov rcx, qword [rax]
movzx eax, byte [rdi + 2]
sub byte [rcx + 0x16], al
jmp case.0x1400a225d.2
mov r8d, dword [rdi + 0x14]
movzx edx, r8b
movabs rax, 0xcbf29ce484222325
xor rdx, rax
imul rdx, r14
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r14
mov r9, qword [rbx + 0x30]
and r9, rdx
add r9, r9
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rdx + r9*8 + 8]
cmp rcx, qword [rbx + 8]
je 0x1400a24e1
mov rax, qword [rdx + r9*8]
cmp r8d, dword [rcx + 0x10]
je 0x1400a24e3
nop dword [rax]
cmp rcx, rax
je 0x1400a24e1
mov rcx, qword [rcx + 8]
cmp r8d, dword [rcx + 0x10]
jne 0x1400a24d0
jmp 0x1400a24e3
xor ecx, ecx
test rcx, rcx
je case.0x1400a225d.2
mov rax, qword [rdx + r9*8]
cmp qword [rdx + r9*8 + 8], rcx
jne 0x1400a2516
cmp rax, rcx
jne 0x1400a250b
mov rax, qword [rbx + 8]
mov qword [rdx + r9*8], rax
mov qword [rdx + r9*8 + 8], rax
jmp 0x1400a2522
mov rax, qword [rcx + 8]
mov qword [rdx + r9*8 + 8], rax
jmp 0x1400a2522
cmp rax, rcx
jne 0x1400a2522
mov rax, qword [rcx]
mov qword [rdx + r9*8], rax
mov rdx, qword [rcx]
dec qword [rbx + 0x10]
mov rax, qword [rcx + 8]
mov qword [rax], rdx
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov edx, Ordinal_27
call fcn.14010df9c
jmp case.0x1400a225d.2
movss xmm1, dword [rdi + 0x18]
ucomiss xmm1, xmm7
jp 0x1400a28a4
jne 0x1400a28a4
movss xmm0, dword [rdi + 0x1c]
ucomiss xmm0, xmm7
jp 0x1400a28a4
jne 0x1400a28a4
mov eax, dword [r13 + 0x5f70]
cmp dword [rdi + 4], eax
jne 0x1400a27a0
mov r8d, dword [rdi + 0x14]
mov eax, r8d
shr eax, 8
movzx edx, al
movzx eax, r8b
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
imul rax, r14
xor rdx, rax
imul rdx, r14
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r14
mov rax, qword [r13 + 0x6058]
and rax, rdx
add rax, rax
mov rdx, qword [r13 + 0x6040]
mov rbx, qword [rdx + rax*8 + 8]
mov rcx, qword [r13 + 0x6030]
cmp rbx, rcx
je 0x1400a2606
mov rax, qword [rdx + rax*8]
cmp r8d, dword [rbx + 0x10]
je 0x1400a2609
cmp rbx, rax
je 0x1400a2606
mov rbx, qword [rbx + 8]
cmp r8d, dword [rbx + 0x10]
jne 0x1400a25f5
jmp 0x1400a2609
mov rbx, rsi
test rbx, rbx
cmove rbx, rcx
movzx r13d, word [rbx + 0x14]
cmp r13d, 0x70
je 0x1400a2820
mov r14, qword [rsp + 0x68]
movups xmm6, xmmword [rbx + 0x14]
mov eax, dword [rbx + 0x24]
mov dword [rbp + 0x130], eax
movd eax, xmm6
movzx edx, ax
lea rcx, [r14 + 0x5de8]
call fcn.14006ae00
test eax, eax
je 0x1400a2669
cmp eax, 0xc8
jge 0x1400a2685
mov esi, reloc.WLDAP32.dll_Ordinal_200
sub esi, eax
psrldq xmm6, 0xc
movd eax, xmm6
movzx ecx, al
cmp esi, ecx
cmovge esi, ecx
jmp 0x1400a2685
mov eax, dword [r14 + 0x5de8]
cmp rax, qword [r14 + 0x5e00]
jbe 0x1400a2685
psrldq xmm6, 0xc
movd eax, xmm6
movzx esi, al
mov edx, r13d
lea rcx, [r14 + 0x5de8]
call fcn.1400a1f30
mov dword [rsp + 0x38], r13d
lea r8, [rsp + 0x38]
test al, al
jne 0x1400a26d6
mov word [rsp + 0x64], r13w
mov byte [rsp + 0x66], sil
mov byte [rsp + 0x67], al
lea rdx, [rbp + 0xc0]
mov r13, r14
add r14, 0x5df0
mov rcx, r14
call fcn.1400a0290
mov rcx, qword [rax]
mov eax, dword [rsp + 0x64]
mov dword [rcx + 0x14], eax
jmp 0x1400a26f6
lea rdx, [rbp + 0xd0]
mov r13, r14
add r14, 0x5df0
mov rcx, r14
call fcn.1400a0290
mov rcx, qword [rax]
add byte [rcx + 0x16], sil
cmp byte [0x14016b3a8], 0
je 0x1400a272e
mov eax, 0xf2
mov ecx, dword [0x14016b3a0]
cmp word [rbx + 0x14], ax
jne 0x1400a2718
add ecx, esi
mov dword [0x14016b3a0], ecx
mov eax, 0x704
cmp word [rbx + 0x14], ax
jne 0x1400a272e
imul eax, esi, 0x64
add ecx, eax
mov dword [0x14016b3a0], ecx
mov ebx, 0xf2
mov dword [rsp + 0x38], ebx
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0xe0]
mov rcx, r14
call fcn.1400a0290
mov rax, qword [rax]
cmp byte [rax + 0x16], 0x64
jb 0x1400a2794
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp - 0x78], xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], eax
mov byte [rsp + 0x78], 0xa
mov dword [rbp - 0x74], ebx
mov dword [rsp + 0x20], reloc.WLDAP32.dll_Ordinal_60
lea r9, [rsp + 0x78]
xor edx, edx
lea r8d, [rax + 4]
mov rcx, qword [0x14016bc30]
call fcn.1400a49a0
movabs r14, 0x100000001b3
xor esi, esi
mov edx, dword [rdi + 0x14]
mov eax, edx
shr eax, 8
movzx r8d, al
movzx eax, dl
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
imul rax, r14
xor r8, rax
imul r8, r14
mov eax, edx
shr eax, 0x10
movzx ecx, al
xor r8, rcx
imul r8, r14
mov eax, edx
shr rax, 0x18
xor r8, rax
imul r8, r14
mov rax, qword [r13 + 0x6058]
and rax, r8
add rax, rax
mov r9, qword [r13 + 0x6040]
mov rcx, qword [r9 + rax*8 + 8]
cmp rcx, qword [r13 + 0x6030]
je 0x1400a282a
mov rax, qword [r9 + rax*8]
cmp edx, dword [rcx + 0x10]
je 0x1400a282d
nop
cmp rcx, rax
je 0x1400a282a
mov rcx, qword [rcx + 8]
cmp edx, dword [rcx + 0x10]
jne 0x1400a2810
jmp 0x1400a282d
mov r13, qword [rsp + 0x68]
jmp 0x1400a27a0
mov rcx, rsi
test rcx, rcx
je case.0x1400a225d.2
mov rdx, qword [r13 + 0x6058]
and rdx, r8
add rdx, rdx
mov rax, qword [r9 + rdx*8]
cmp qword [r9 + rdx*8 + 8], rcx
jne 0x1400a2870
cmp rax, rcx
jne 0x1400a2865
mov rax, qword [r13 + 0x6030]
mov qword [r9 + rdx*8], rax
mov qword [r9 + rdx*8 + 8], rax
jmp 0x1400a287c
mov rax, qword [rcx + 8]
mov qword [r9 + rdx*8 + 8], rax
jmp 0x1400a287c
cmp rax, rcx
jne 0x1400a287c
mov rax, qword [rcx]
mov qword [r9 + rdx*8], rax
mov rdx, qword [rcx]
dec qword [r13 + 0x6038]
mov rax, qword [rcx + 8]
mov qword [rax], rdx
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov edx, Ordinal_41
call fcn.14010df9c
jmp case.0x1400a225d.2
mov eax, dword [rdi + 4]
cmp eax, 0xffffffff
jne 0x1400a2929
movzx eax, word [rdi + 0x14]
mov word [rbp + 0x120], ax
movss xmm0, dword [rdi + 0x1c]
movss dword [rbp + 0x124], xmm1
movss dword [rbp + 0x128], xmm0
cvttss2si rax, dword [rdi + 0x10]
mov byte [rbp + 0x12c], al
mov byte [rbp + reloc.WLDAP32.dll_Ordinal_301], 0
inc dword [r13 + 0x5f98]
mov eax, dword [r13 + 0x5f98]
mov dword [rbp + 0x130], eax
lea rcx, [r13 + 0x6028]
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0xf0]
call fcn.14001eb00
mov rcx, qword [rax]
movups xmm0, xmmword [rbp + 0x120]
movups xmmword [rcx + 0x14], xmm0
mov eax, dword [rbp + 0x130]
mov dword [rcx + 0x24], eax
jmp case.0x1400a225d.2
cmp eax, 0xfffffffd
jne case.0x1400a225d.2
mov r8d, dword [rdi + 8]
movzx edx, r8b
movabs rax, 0xcbf29ce484222325
xor rdx, rax
imul rdx, r14
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r14
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r14
mov rax, qword [r13 + 0x6058]
and rax, rdx
add rax, rax
mov r9, qword [r13 + 0x6040]
mov rcx, qword [r9 + rax*8 + 8]
mov rdx, qword [r13 + 0x6030]
cmp rcx, rdx
je 0x1400a29b9
mov rax, qword [r9 + rax*8]
cmp r8d, dword [rcx + 0x10]
je 0x1400a29bc
cmp rcx, rax
je 0x1400a29b9
mov rcx, qword [rcx + 8]
cmp r8d, dword [rcx + 0x10]
jne 0x1400a29a8
jmp 0x1400a29bc
mov rcx, rsi
test rcx, rcx
cmove rcx, rdx
cmp rcx, rdx
je case.0x1400a225d.2
movzx eax, word [rdi + 0x14]
mov word [rcx + 0x14], ax
movss xmm0, dword [rdi + 0x18]
movss xmm1, dword [rdi + 0x1c]
movss dword [rcx + 0x18], xmm0
movss dword [rcx + 0x1c], xmm1
cvttss2si rax, dword [rdi + 0x10]
mov byte [rcx + 0x20], al
jmp case.0x1400a225d.2
mov rcx, rdi
call fcn.140091f80
test al, al
jne 0x1400a221d
jmp case.0x1400a225d.2
mov rdx, qword [rbp + 0x118]
mov edx, dword [rdx + 0x18]
mov rcx, rdi
call fcn.1400898c0
test al, al
jne 0x1400a221d
jmp case.0x1400a225d.2
mov rcx, rdi
call fcn.14008c750
test al, al
jne 0x1400a221d
jmp case.0x1400a225d.2
mov rcx, qword [rbp + 0x118]
call fcn.1400a6aa0
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400a2a70
mov rdx, rax
lea rcx, [rbp + 0x120]
call fcn.140017770
lea rcx, [rbp + 0x120]
call fcn.14004a3d0
test al, al
jne 0x1400a221d
jmp case.0x1400a225d.2
mov rcx, qword [rbp + 0x118]
call fcn.1400a6aa0
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400a2ad0
mov rdx, rax
lea rcx, [rbp + 0x120]
call fcn.140017770
lea rcx, [rbp + 0x120]
call fcn.14004ab90
test al, al
jne 0x1400a221d
jmp case.0x1400a225d.2
mov ebx, esi
lea rax, [rbp + 0x120]
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8d, 1
lea rdx, [0x1401282c8]
lea rcx, [rbp + 0x120]
call fcn.140017770
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8d, 4
lea rdx, [0x140128d44]
lea rcx, [rsp + 0x40]
call fcn.140017770
nop
lea r8, [rbp + 0x120]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.140028120
nop
lea rax, [rsp + 0x78]
mov qword [rbp - 0x40], rax
lea rax, [rbp - 0x60]
mov qword [rbp - 0x38], rax
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x30]
call fcn.140027f00
or r15d, 8
mov dword [rsp + 0x30], r15d
lea r9, [fcn.14000c370]
mov edx, Ordinal_41
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x78]
call fcn.14010e16c
lea rdx, [rbp - 0x30]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140016500
and r15d, 0xfffffff7
mov dword [rsp + 0x30], r15d
lea rcx, [rbp - 0x30]
call fcn.14002cf80
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8d, 1
lea rdx, [0x1401282d4]
lea rcx, [rsp + 0x40]
call fcn.140017770
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8d, 6
lea rdx, str.SERVER
lea rcx, [rbp + 0x120]
call fcn.140017770
nop
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x78]
call fcn.140028120
nop
lea rax, [rsp + 0x78]
mov qword [rbp - 0x20], rax
lea rax, [rbp - 0x60]
mov qword [rbp - 0x18], rax
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x10]
call fcn.140027f00
or r15d, 0x10
mov dword [rsp + 0x30], r15d
lea r9, [fcn.14000c370]
mov edx, Ordinal_41
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x78]
call fcn.14010e16c
lea rdx, [rbp - 0x10]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140016500
and r15d, 0xffffffef
mov dword [rsp + 0x30], r15d
lea rcx, [rbp - 0x10]
call fcn.14002cf80
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8d, 1
lea rdx, [0x1401282c8]
lea rcx, [rsp + 0x40]
call fcn.140017770
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8d, 2
lea rdx, [0x140128650]
lea rcx, [rbp + 0x120]
call fcn.140017770
nop
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x78]
call fcn.140028120
nop
lea rax, [rsp + 0x78]
mov qword [rbp], rax
lea rax, [rbp - 0x60]
mov qword [rbp + 8], rax
lea rdx, [rbp]
lea rcx, [rbp + 0x10]
call fcn.140027f00
or r15d, 0x20
mov dword [rsp + 0x30], r15d
lea r9, [fcn.14000c370]
mov edx, Ordinal_41
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x78]
call fcn.14010e16c
lea rdx, [rbp + 0x10]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140016500
and r15d, 0xffffffdf
mov dword [rsp + 0x30], r15d
lea rcx, [rbp + 0x10]
call fcn.14002cf80
lea rdx, str.Got_unknown_packet_of_type
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1400162a0
mov edx, ebx
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x1400a3244
cmp qword [r13], 0
je 0x1400a3244
mov r8, qword [rbp + 0x118]
xor edx, edx
call fcn.140012380
mov rcx, qword [r13]
call fcn.140012840
jmp 0x1400a3215
lea rax, [rsp + 0x40]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8d, 1
lea rdx, [0x14012829c]
lea rcx, [rsp + 0x40]
call fcn.140017770
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8d, 4
lea rdx, [0x140128d44]
lea rcx, [rbp + 0x120]
call fcn.140017770
nop
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x78]
call fcn.140028120
nop
lea rax, [rsp + 0x78]
mov qword [rbp + 0x20], rax
lea rax, [rbp - 0x60]
mov qword [rbp + 0x28], rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x30]
call fcn.140027f00
or r15d, 1
mov dword [rsp + 0x30], r15d
lea r9, [fcn.14000c370]
mov edx, Ordinal_41
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x78]
call fcn.14010e16c
mov r12, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov r14, qword [rbp + 0x30]
mov rbx, qword [r14]
cmp rbx, r14
je 0x1400a2f3c
mov r13d, 7
mov esi, dword [rbx + 0x30]
cmp esi, 0xff
ja 0x1400a2ef7
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
movzx edx, si
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
lea rdx, [rbx + 0x10]
cmp qword [rbx + 0x28], 0xf
jbe 0x1400a2f06
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x20]
mov rcx, r12
call fcn.14001c640
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
movzx edx, r13w
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r14
jne 0x1400a2ed5
mov r13, qword [rsp + 0x68]
xor esi, esi
and r15d, 0xfffffffe
mov dword [rsp + 0x30], r15d
lea rcx, [rbp + 0x30]
call fcn.14002cf80
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8d, 1
lea rdx, [0x1401282d4]
lea rcx, [rsp + 0x40]
call fcn.140017770
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8d, 6
lea rdx, str.CLIENT
lea rcx, [rbp + 0x120]
call fcn.140017770
nop
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x78]
call fcn.140028120
nop
lea rax, [rsp + 0x78]
mov qword [rbp + 0x40], rax
lea rax, [rbp - 0x60]
mov qword [rbp + 0x48], rax
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x50]
call fcn.140027f00
or r15d, 2
mov dword [rsp + 0x30], r15d
lea r9, [fcn.14000c370]
mov edx, Ordinal_41
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x78]
call fcn.14010e16c
mov r12, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov r14, qword [rbp + 0x50]
mov rbx, qword [r14]
cmp rbx, r14
je 0x1400a3097
mov r13d, 7
nop word [rax + rax]
mov esi, dword [rbx + 0x30]
cmp esi, 0xff
ja 0x1400a3052
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
movzx edx, si
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
lea rdx, [rbx + 0x10]
cmp qword [rbx + 0x28], 0xf
jbe 0x1400a3061
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x20]
mov rcx, r12
call fcn.14001c640
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
movzx edx, r13w
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r14
jne 0x1400a3030
mov r13, qword [rsp + 0x68]
xor esi, esi
and r15d, 0xfffffffd
mov dword [rsp + 0x30], r15d
lea rcx, [rbp + 0x50]
call fcn.14002cf80
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
mov r8d, 1
lea rdx, [0x14012829c]
lea rcx, [rsp + 0x40]
call fcn.140017770
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], rsi
mov r8d, 2
lea rdx, [0x140128650]
lea rcx, [rbp + 0x120]
call fcn.140017770
nop
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x78]
call fcn.140028120
nop
lea rax, [rsp + 0x78]
mov qword [rbp + 0x60], rax
lea rax, [rbp - 0x60]
mov qword [rbp + 0x68], rax
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x70]
call fcn.140027f00
or r15d, 4
mov dword [rsp + 0x30], r15d
lea r9, [fcn.14000c370]
mov edx, Ordinal_41
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x78]
call fcn.14010e16c
mov r12, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov r14, qword [rbp + 0x70]
mov rbx, qword [r14]
cmp rbx, r14
je 0x1400a31e6
mov r13d, 7
mov esi, dword [rbx + 0x30]
cmp esi, 0xff
ja 0x1400a31a3
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
movzx edx, si
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
lea rdx, [rbx + 0x10]
cmp qword [rbx + 0x28], 0xf
jbe 0x1400a31b2
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x20]
mov rcx, r12
call fcn.14001c640
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
movzx edx, r13w
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r14
jne 0x1400a3181
mov r13, qword [rsp + 0x68]
and r15d, 0xfffffffb
mov dword [rsp + 0x30], r15d
lea rcx, [rbp + 0x70]
call fcn.14002cf80
lea rdx, str.Connection_Event.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1400162a0
movabs r14, 0x100000001b3
xor r8d, r8d
lea rdx, [rbp + 0x100]
mov rcx, qword [r13 + 8]
call fcn.140012870
test eax, eax
jle 0x1400a3244
xor esi, esi
jmp 0x1400a2148
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov dl, 1
mov rcx, r13
call fcn.1400a15e0
mov rcx, qword [rbp + 0x140]
xor rcx, rsp
call fcn.14010e0b0
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
push rbx
sub rsp, 0x20
mov rbx, rcx
call fcn.1400a32e0
cmp qword [rbx + 8], 0
je 0x1400a40a2
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp 0x1400a20d0
add rsp, 0x20
pop rbx
ret