Function at 0x180058d08
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3f8]
sub rsp, 0x4b8
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
call fcn.180055d10
mov rcx, rax
mov r12, rax
call fcn.180055c08
mov rcx, r12
mov qword [rbp + 0xf0], rax
mov rdi, rax
xor r13d, r13d
call fcn.180055afc
test rax, rax
je 0x180059f52
xor ebx, ebx
mov qword [rbp + 0x410], rbx
mov rax, qword [rdi + rbx*8]
and dword [rbp + 0x400], 0
mov r15, qword [rax]
mov rcx, r15
call fcn.1800558f8
test rax, rax
je 0x180059f31
xor edi, edi
mov ebx, edi
mov rdx, qword [r15]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], rdi
or r8, 0xffffffffffffffff
mov qword [rbp - 0x68], rdi
inc r8
cmp byte [rdx + r8], dil
jne 0x180058d9d
lea rcx, [rbp - 0x80]
call fcn.180052b60
mov rdx, rbx
mov rcx, r15
call fcn.1800559f8
mov r14, rax
test rax, rax
je 0x180059ec3
mov rsi, qword [rax + 0x10]
xor ebx, ebx
mov rdi, qword [rax + 0x18]
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
mov qword [rbp + 0x230], rbx
or r8, 0xffffffffffffffff
mov qword [rbp + 0x238], rbx
inc r8
cmp byte [rdi + r8], bl
jne 0x180058dec
mov rdx, rdi
lea rcx, [rbp + 0x220]
call fcn.180052b60
cmp qword [rbp + 0x230], rbx
lea rcx, [rbp + 0x220]
sete bl
call fcn.180052838
test bl, bl
je 0x180058ee9
movabs rcx, 0x95616bf6da677d06
lea r8, [rbp + 0x20]
movabs rax, 0x63ad2a4f36db38f3
lea rdx, [rbp - 0x80]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x28], rax
movabs rax, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x418], rcx
lea rcx, [rbp + 0x2d0]
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x188], rax
movdqa xmm0, xmmword [rbp + 0x180]
xorps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x20], xmm0
call fcn.1800a3f84
mov rdx, rax
lea rcx, [rbp + 0x2b0]
mov r8, rsi
call fcn.1800a3fe4
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.180052894
lea rcx, [rbp + 0x2b0]
call fcn.180052838
lea rcx, [rbp + 0x2d0]
jmp 0x180059047
movabs rbx, 0x95616bf6da677d06
lea r8, [rbp + 0x50]
movabs rdx, 0x63ad2a4f36db38f3
movabs rcx, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rdx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x418], rbx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x190], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x198], rax
movdqa xmm0, xmmword [rbp + 0x190]
xorps xmm0, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x418], rdx
lea rdx, [rbp - 0x80]
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x418], rbx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x418], rcx
lea rcx, [rbp + 0x350]
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x418], rbx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x1a8], rax
movdqa xmm0, xmmword [rbp + 0x1a0]
xorps xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp + 0x50], xmm0
call fcn.1800a3f84
mov rdx, rax
lea rcx, [rbp + 0x330]
mov r8, rdi
call fcn.1800a3fe4
lea r8, [rbp + 0x60]
mov rdx, rax
lea rcx, [rbp + 0x310]
call fcn.1800a3fe4
mov rdx, rax
lea rcx, [rbp + 0x2f0]
mov r8, rsi
call fcn.1800a3fe4
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.180052894
lea rcx, [rbp + 0x2f0]
call fcn.180052838
lea rcx, [rbp + 0x310]
call fcn.180052838
lea rcx, [rbp + 0x330]
call fcn.180052838
lea rcx, [rbp + 0x350]
call fcn.180052838
xor edi, edi
lea rdx, [rbp + 0x408]
mov rcx, r14
mov qword [rbp + 0x408], rdi
call fcn.1800556f0
jmp 0x180059eb7
mov rcx, rsi
call fcn.180055320
mov rbx, rax
movabs rax, 0x63ad2a4f36db38f3
mov qword [rbp + 0x418], rax
movabs rax, 0x95616bf6da677d06
mov rcx, qword [rbp + 0x418]
mov qword [rbp - 0x20], rcx
mov qword [rbp + 0x418], rax
mov rcx, qword [rbp + 0x418]
mov qword [rbp - 0x18], rcx
movabs rcx, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rcx
mov rcx, qword [rbp + 0x418]
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x1b8], rax
lea rax, [rbp - 0x20]
mov qword [rbp + 0x1b0], rcx
or rcx, 0xffffffffffffffff
movdqa xmm0, xmmword [rbp + 0x1b0]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x20], xmm0
inc rcx
cmp byte [rax + rcx], dil
jne 0x1800590f9
mov rdx, qword [rbp - 0x70]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x180059fac
cmp qword [rbp - 0x68], 0xf
lea rax, [rbp - 0x20]
mov qword [rsp + 0x30], rcx
lea r9, [rbp - 0x80]
cmova r9, qword [rbp - 0x80]
lea rcx, [rbp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
call fcn.1800a5e14
mov rdx, rbx
lea rcx, [rbp + 0xf8]
call fcn.1800a34bc
mov ebx, recv
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rbx
mov byte [rax], dil
mov rdx, qword [rbp + 0x110]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp rdx, rbx
jbe 0x1800591b9
mov rcx, qword [rbp + 0xf8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800591b4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f74
call fcn.1800c8a0c
mov rcx, rsi
mov qword [rbp + 0x108], rdi
mov qword [rbp + 0x110], rbx
mov byte [rbp + 0xf8], dil
call fcn.18005501c
test eax, eax
je 0x180059ac9
movabs rcx, 0x95616bf6da677d06
movabs rax, 0x63ad2a4f36db02e1
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp - 0x10], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov qword [rbp - 8], rax
movabs rax, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x418], rcx
or rcx, 0xffffffffffffffff
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x218], rax
lea rax, [rbp - 0x10]
movdqa xmm0, xmmword [rbp + 0x210]
xorps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp - 0x10], xmm0
inc rcx
cmp byte [rax + rcx], dil
jne 0x180059263
mov rdx, qword [rsp + 0x50]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x180059fca
cmp qword [rsp + 0x58], rbx
lea rax, [rbp - 0x10]
mov qword [rsp + 0x30], rcx
lea r9, [rsp + 0x40]
cmova r9, qword [rsp + 0x40]
lea rcx, [rbp + 0x240]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
call fcn.1800a5e14
mov rdx, qword [rsp + 0x58]
cmp rdx, rbx
jbe 0x1800592f2
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800592ed
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f90
call fcn.1800c8a0c
movups xmm1, xmmword [rbp + 0x250]
mov qword [rbp + 0x258], rbx
mov rcx, rsi
movups xmm0, xmmword [rbp + 0x240]
mov qword [rbp + 0x250], rdi
mov ebx, edi
movups xmmword [rsp + 0x50], xmm1
mov byte [rbp + 0x240], dil
movups xmmword [rsp + 0x40], xmm0
call fcn.18005501c
test eax, eax
je 0x1800596cd
mov edx, ebx
mov rcx, rsi
call fcn.18005521c
mov rcx, rax
call fcn.180054f28
xorps xmm0, xmm0
mov qword [rsp + 0x70], rdi
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x78], rdi
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], dil
jne 0x180059359
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180052b60
movabs rcx, 0x95616bf6da677d06
lea rdx, [rbp + 0x70]
movabs rax, 0x63ad2a4f36db02e7
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x78], rax
movabs rax, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x418], rcx
lea rcx, [rsp + 0x60]
mov qword [rbp + 0x200], rax
mov rax, qword [rbp + 0x418]
movdqa xmm0, xmmword [rbp + 0x70]
mov qword [rbp + 0x208], rax
xorps xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp + 0x70], xmm0
call fcn.1800a3400
mov rcx, qword [rsp + 0x70]
xorps xmm0, xmm0
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0xe0], rdi
lea rdx, [rax + 1]
mov qword [rbp + 0xe8], rdi
cmp rcx, rdx
jb 0x180059fb8
sub rcx, rdx
lea rax, [rsp + 0x60]
or r8, 0xffffffffffffffff
cmp rcx, r8
cmovb r8, rcx
cmp qword [rsp + 0x78], 0xf
lea rcx, [rbp + 0xd0]
cmova rax, qword [rsp + 0x60]
add rdx, rax
call fcn.180052b60
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x18005948f
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005948a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f82
call fcn.1800c8a0c
movups xmm0, xmmword [rbp + 0xd0]
mov byte [rbp + 0xd0], dil
movabs rcx, 0x95616bf6da677d06
movups xmm1, xmmword [rbp + 0xe0]
mov qword [rbp + 0xe0], rdi
movabs rax, 0x63ad2a4f36db02e5
movups xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0xe8], recv
movups xmmword [rsp + 0x70], xmm1
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x88], rax
movabs rax, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x1e0], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
mov qword [rbp + 0x1e8], rax
movabs rax, 0x7fffffffffffffff
movdqa xmm0, xmmword [rbp + 0x1e0]
sub rax, rcx
xorps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x80], xmm0
cmp rax, rdx
jb 0x180059fb2
cmp qword [rsp + 0x58], 0xf
lea r9, [rsp + 0x40]
mov qword [rsp + 0x30], rdx
lea rax, [rsp + 0x60]
cmova r9, qword [rsp + 0x40]
cmp qword [rsp + 0x78], 0xf
cmova rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x118]
call fcn.1800a5e14
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x118]
call fcn.1800a34bc
mov rdx, qword [rsp + 0x58]
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], recv
mov byte [rax], dil
movups xmmword [rbp + 0x370], xmm6
movups xmmword [rbp + 0x380], xmm7
cmp rdx, 0xf
jbe 0x18005961a
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059615
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f7b
call fcn.1800c8a0c
mov rdx, qword [rbp + 0x130]
movups xmmword [rsp + 0x40], xmm6
movups xmmword [rsp + 0x50], xmm7
cmp rdx, 0xf
jbe 0x180059665
mov rcx, qword [rbp + 0x118]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059660
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f7b
call fcn.1800c8a0c
mov rdx, qword [rsp + 0x78]
mov qword [rbp + 0x128], rdi
mov qword [rbp + 0x130], recv
mov byte [rbp + 0x118], dil
cmp rdx, 0xf
jbe 0x1800596bb
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800596b6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f82
call fcn.1800c8a0c
mov rcx, rsi
inc ebx
call fcn.18005501c
cmp ebx, eax
jb 0x180059331
mov rcx, rsi
call fcn.18005511c
mov rcx, rax
call fcn.180054f28
xorps xmm0, xmm0
mov qword [rbp - 0x30], rdi
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x28], rdi
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], dil
jne 0x1800596f0
mov rdx, rax
lea rcx, [rbp - 0x40]
call fcn.180052b60
mov rax, qword [rsp + 0x50]
lea rdx, [rsp + 0x40]
xorps xmm0, xmm0
mov qword [rbp + 0xc0], rdi
mov ebx, recv
mov qword [rbp + 0xc8], rdi
lea rcx, [rbp + 0xb0]
lea r8, [rax - 1]
cmp rax, r8
movups xmmword [rbp + 0xb0], xmm0
cmovb r8, rax
cmp qword [rsp + 0x58], rbx
cmova rdx, qword [rsp + 0x40]
call fcn.180052b60
mov rdx, qword [rsp + 0x58]
cmp rdx, rbx
jbe 0x18005978a
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059785
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f90
call fcn.1800c8a0c
movups xmm1, xmmword [rbp + 0xc0]
lea rdx, [0x180043ee0]
mov qword [rbp + 0xc0], rdi
movups xmm0, xmmword [rbp + 0xb0]
lea rcx, [rbp - 0x40]
mov qword [rbp + 0xc8], rbx
movups xmmword [rsp + 0x50], xmm1
mov byte [rbp + 0xb0], dil
movups xmmword [rsp + 0x40], xmm0
call fcn.1800a3400
xorps xmm0, xmm0
mov qword [rbp + 0xa0], rdi
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa8], rdi
lea rcx, [rax + 1]
mov rax, qword [rbp - 0x30]
cmp rax, rcx
jb 0x180059fc4
sub rax, rcx
lea rdx, [rbp - 0x40]
or r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
cmp qword [rbp - 0x28], rbx
cmova rdx, qword [rbp - 0x40]
add rdx, rcx
lea rcx, [rbp + 0x90]
call fcn.180052b60
movabs rcx, 0x95616bf6da677d06
movabs rax, 0x63ad2a4f36fb38e0
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 8], rax
movabs rax, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x1f0], rax
mov qword [rbp + 0x418], rcx
or rcx, 0xffffffffffffffff
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x1f8], rax
lea rax, [rbp]
movdqa xmm0, xmmword [rbp + 0x1f0]
xorps xmm0, xmmword [rbp]
movdqa xmmword [rbp], xmm0
inc rcx
cmp byte [rax + rcx], dil
jne 0x18005989f
mov rdx, qword [rsp + 0x50]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x180059fbe
cmp qword [rsp + 0x58], rbx
lea rax, [rbp]
mov qword [rsp + 0x30], rcx
lea r9, [rsp + 0x40]
cmova r9, qword [rsp + 0x40]
lea rcx, [rbp + 0x138]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
call fcn.1800a5e14
lea r8, [rbp + 0x90]
lea rdx, [rbp + 0x138]
lea rcx, [rbp + 0x260]
call fcn.1800a4124
mov rbx, rax
lea rax, [rsp + 0x40]
cmp rax, rbx
je 0x180059976
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x180059956
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059951
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f89
call fcn.1800c8a0c
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
mov qword [rbx + 0x10], rdi
movups xmmword [rsp + 0x40], xmm0
mov qword [rbx + 0x18], recv
movups xmmword [rsp + 0x50], xmm1
mov byte [rbx], dil
mov rdx, qword [rbp + 0x278]
mov ebx, 0x1000
cmp rdx, 0xf
jbe 0x1800599b8
mov rcx, qword [rbp + 0x260]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x1800599b3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f89
call fcn.1800c8a0c
mov rdx, qword [rbp + 0x150]
mov qword [rbp + 0x270], rdi
mov qword [rbp + 0x278], recv
mov byte [rbp + 0x260], dil
cmp rdx, 0xf
jbe 0x180059a0e
mov rcx, qword [rbp + 0x138]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x180059a09
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f89
call fcn.1800c8a0c
mov rdx, qword [rbp + 0xa8]
mov qword [rbp + 0x148], rdi
mov qword [rbp + 0x150], recv
mov byte [rbp + 0x138], dil
cmp rdx, 0xf
jbe 0x180059a64
mov rcx, qword [rbp + 0x90]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x180059a5f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f89
call fcn.1800c8a0c
mov rdx, qword [rbp - 0x28]
mov qword [rbp + 0xa0], rdi
mov qword [rbp + 0xa8], recv
mov byte [rbp + 0x90], dil
cmp rdx, 0xf
jbe 0x180059ab4
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x180059aaf
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f90
call fcn.1800c8a0c
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], recv
mov byte [rbp - 0x40], dil
jmp 0x180059df0
mov rcx, rsi
call fcn.18005511c
mov rcx, rax
call fcn.180054f28
xorps xmm0, xmm0
mov qword [rbp - 0x50], rdi
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x48], rdi
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], dil
jne 0x180059aec
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.180052b60
lea rdx, [0x180043ee0]
lea rcx, [rbp - 0x60]
call fcn.1800a3400
xorps xmm0, xmm0
mov qword [rbp + 0x40], rdi
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x48], rdi
lea rcx, [rax + 1]
mov rax, qword [rbp - 0x50]
cmp rax, rcx
jb 0x180059fd6
sub rax, rcx
lea rdx, [rbp - 0x60]
or r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
cmp qword [rbp - 0x48], rbx
cmova rdx, qword [rbp - 0x60]
add rdx, rcx
lea rcx, [rbp + 0x30]
call fcn.180052b60
movabs rcx, 0x95616bf6da677d06
movabs rax, 0x63ad2a4f16e12be1
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x418], rcx
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x18], rax
movabs rax, 0x63ad2a4f36db02c9
mov qword [rbp + 0x418], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x1d0], rax
mov qword [rbp + 0x418], rcx
or rcx, 0xffffffffffffffff
mov rax, qword [rbp + 0x418]
movdqa xmm0, xmmword [rbp + 0x10]
mov qword [rbp + 0x1d8], rax
lea rax, [rbp + 0x10]
xorps xmm0, xmmword [rbp + 0x1d0]
movdqa xmmword [rbp + 0x10], xmm0
inc rcx
cmp byte [rax + rcx], dil
jne 0x180059bdd
mov rdx, qword [rsp + 0x50]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x180059fd0
cmp qword [rsp + 0x58], rbx
lea rax, [rbp + 0x10]
mov qword [rsp + 0x30], rcx
lea r9, [rsp + 0x40]
cmova r9, qword [rsp + 0x40]
lea rcx, [rbp + 0x158]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
call fcn.1800a5e14
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x158]
lea rcx, [rbp + 0x280]
call fcn.1800a4124
mov rbx, rax
lea rax, [rsp + 0x40]
cmp rax, rbx
je 0x180059cb1
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x180059c91
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059c8c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f97
call fcn.1800c8a0c
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
mov qword [rbx + 0x10], rdi
movups xmmword [rsp + 0x40], xmm0
mov qword [rbx + 0x18], recv
movups xmmword [rsp + 0x50], xmm1
mov byte [rbx], dil
mov rdx, qword [rbp + 0x298]
mov ebx, 0x1000
cmp rdx, 0xf
jbe 0x180059cf3
mov rcx, qword [rbp + 0x280]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x180059cee
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f97
call fcn.1800c8a0c
mov rdx, qword [rbp + 0x170]
mov qword [rbp + 0x290], rdi
mov qword [rbp + 0x298], recv
mov byte [rbp + 0x280], dil
cmp rdx, 0xf
jbe 0x180059d49
mov rcx, qword [rbp + 0x158]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x180059d44
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f97
call fcn.1800c8a0c
mov rdx, qword [rbp + 0x48]
mov qword [rbp + 0x168], rdi
mov qword [rbp + 0x170], recv
mov byte [rbp + 0x158], dil
cmp rdx, 0xf
jbe 0x180059d99
mov rcx, qword [rbp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x180059d94
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f97
call fcn.1800c8a0c
mov rdx, qword [rbp - 0x48]
mov qword [rbp + 0x40], rdi
mov qword [rbp + 0x48], recv
mov byte [rbp + 0x30], dil
cmp rdx, 0xf
jbe 0x180059de0
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, rbx
jb 0x180059ddb
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059f9e
call fcn.1800c8a0c
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], recv
mov byte [rbp - 0x60], dil
mov rdi, qword [rsp + 0x58]
lea rcx, [rsp + 0x40]
mov rbx, qword [rsp + 0x40]
cmp rdi, 0xf
cmova rcx, rbx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x180059e0b
cmp rdi, 0xf
lea r8, [rsp + 0x40]
cmova r8, rbx
or edx, 0xffffffff
test eax, eax
je 0x180059e4d
mov r9d, eax
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
shr edx, 8
movzx eax, cl
inc r8
lea rcx, [0x18003eb10]
xor edx, dword [rcx + rax*4]
sub r9, 1
jne 0x180059e2b
not edx
mov qword [rbp + 0x1c8], rsi
mov dword [rbp + 0x1c0], edx
lea r8, [rbp + 0x1c0]
lea rdx, [rbp + 0x2a0]
call fcn.1800a4030
cmp rdi, 0xf
jbe 0x180059ea6
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x180059e9e
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059fa5
mov rcx, rbx
call fcn.1800c8a0c
lea rdx, [rbp + 0x408]
mov rcx, r14
call fcn.1800556f0
xor edi, edi
mov rsi, rax
test rax, rax
jne 0x180059069
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x180059efe
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180059ef9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180059fa5
call fcn.1800c8a0c
mov r14d, dword [rbp + 0x400]
mov rcx, r15
inc r14d
mov dword [rbp + 0x400], r14d
movsxd rbx, r14d
call fcn.1800558f8
cmp rbx, rax
jb 0x180058d87
mov rbx, qword [rbp + 0x410]
mov rdi, qword [rbp + 0xf0]
inc rbx
mov rcx, r12
mov qword [rbp + 0x410], rbx
inc r13d
call fcn.180055afc
movsxd rcx, r13d
cmp rcx, rax
jb 0x180058d64
lea r11, [rsp + 0x4b8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180052794
int3
call fcn.180052794
int3
call fcn.180052b14
int3
call fcn.180052794
int3
call fcn.180052b14
int3
call fcn.180052794
int3
call fcn.180052794
int3
call fcn.180052b14
int3