Function at 0x1800d46f0
Capabilities:
Access peb ldr_data
Encode data using xor
Get kernel32 base address
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x78]
sub rsp, 0x150
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
mov rax, qword [0x180249a80]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov r14d, dword [reloc.WS2_32.dll_accept]
xor esi, esi
movdqa xmm8, xmmword [0x1801c6f20]
mov r12d, esi
movdqa xmm10, xmmword [0x1801c7120]
mov r13d, esi
movdqa xmm9, xmmword [0x1801c6e90]
mov r15d, esi
movdqa xmm6, xmmword [0x1801c73d0]
movdqa xmm7, xmmword [0x1801c6e40]
movdqa xmm11, xmmword [0x1801c6e50]
test r12, r12
je 0x1800d4a50
test r13, r13
je 0x1800d4bda
test r15, r15
je 0x1800d4bd1
xorps xmm0, xmm0
mov qword [rbp - 0x28], rsi
movups xmmword [rbp - 0x38], xmm0
lea rdx, [r12 + 0x3f378]
mov qword [rbp - 0x20], rsi
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdx + r8], sil
jne 0x1800d47c0
lea rcx, [rbp - 0x38]
call fcn.180001450
cmp byte [0x1801c1dd9], sil
movups xmm0, xmmword [str.xRLNUIW]
movzx eax, word [0x1801c1dd8]
mov word [rsp + 0x40], ax
movups xmmword [rsp + 0x30], xmm0
je 0x1800d4954
mov r8d, esi
cmp r14d, 2
jl 0x1800d4907
movdqa xmmword [rbp - 0x60], xmm10
lea rcx, [rsp + 0x34]
mov edx, dword [rbp - 0x60]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x1800d4812
cmp r8d, 0x12
jge 0x1800d4954
movsxd rax, r8d
lea r9, [rsp + 0x30]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 0x12
jl 0x1800d4920
lea rcx, [rsp + 0x30]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], sil
jne 0x1800d4960
cmp qword [rbp - 0x20], 0xf
lea rcx, [rbp - 0x38]
mov r8, qword [rbp - 0x28]
cmova rcx, qword [rbp - 0x38]
cmp r8, rax
jne 0x1800d576b
lea rdx, [rsp + 0x30]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800d576b
mov ecx, dword [0x18024e310]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x18024db88], eax
jg 0x1800d5bda
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1800d4a4b
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1800d4a4b
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x4e167ca0
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1800d4a46
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x1800d4a20
cmp r8d, 0xaaa0a507
je 0x1800d557d
test r9d, r9d
jne 0x1800d4a00
mov rax, qword [rax]
jmp 0x1800d49d0
mov eax, dword [0x1801c1d68]
mov r8d, esi
mov dword [rbp - 0x70], eax
movzx eax, byte [0x1801c1d6c]
mov byte [rbp - 0x6c], al
movups xmm0, xmmword [0x1801c1d58]
movups xmmword [rbp - 0x80], xmm0
cmp r14d, 2
jl 0x1800d4b85
movdqa xmmword [rbp - 0x60], xmm10
lea rcx, [rbp - 0x7c]
mov edx, dword [rbp - 0x60]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x1800d4a90
cmp r8d, 0x15
jge 0x1800d4bc4
movsxd rax, r8d
lea r9, [rbp - 0x80]
add r9, rax
nop
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 0x15
jl 0x1800d4b90
lea rcx, [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r12, rax
test r13, r13
jne 0x1800d4d61
movzx eax, byte [0x1801c1d8c]
mov r8d, esi
mov ecx, dword [0x1801c1d88]
mov dword [rbp - 0x20], ecx
mov byte [rbp - 0x1c], al
movups xmm0, xmmword [0x1801c1d70]
movups xmmword [rbp - 0x38], xmm0
movsd xmm0, qword [0x1801c1d80]
movsd qword [rbp - 0x28], xmm0
cmp r14d, 2
jl 0x1800d4d15
movdqa xmmword [rbp - 0x60], xmm10
lea rcx, [rbp - 0x34]
mov edx, dword [rbp - 0x60]
nop
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x18
jl 0x1800d4c20
cmp r8d, 0x1d
jge 0x1800d4d54
movsxd rax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 0x1d
jl 0x1800d4d20
lea rcx, [rbp - 0x38]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r13, rax
test r15, r15
jne 0x1800d5554
test r13, r13
je 0x1800d5554
cmp byte [0x1801c1dc1], sil
movups xmm0, xmmword [0x1801c1db0]
movzx ecx, word [0x1801c1dc0]
mov word [rsp + 0x58], cx
movups xmmword [rsp + 0x48], xmm0
je 0x1800d4ef4
mov r8d, esi
cmp r14d, 2
jl 0x1800d4eb5
movdqa xmmword [rbp - 0x60], xmm10
lea rcx, [rsp + 0x4c]
mov edx, dword [rbp - 0x60]
nop dword [rax]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x10
jl 0x1800d4dc0
cmp r8d, 0x12
jge 0x1800d4ef4
movsxd rax, r8d
lea r9, [rsp + 0x48]
add r9, rax
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 0x12
jl 0x1800d4ec0
mov eax, dword [0x1801c1da8]
mov r8d, esi
mov dword [rsp + 0x78], eax
movzx eax, byte [0x1801c1dac]
mov byte [rsp + 0x7c], al
movups xmm0, xmmword [str.ULP_R]
movups xmmword [rsp + 0x60], xmm0
movsd xmm0, qword [0x1801c1da0]
movsd qword [rsp + 0x70], xmm0
cmp r14d, 2
jl 0x1800d5035
movdqa xmmword [rbp - 0x60], xmm10
lea rcx, [rsp + 0x64]
mov edx, dword [rbp - 0x60]
nop
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x18
jl 0x1800d4f40
cmp r8d, 0x1d
jge 0x1800d5074
movsxd rax, r8d
lea r9, [rsp + 0x60]
add r9, rax
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 0x1d
jl 0x1800d5040
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1800d5107
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1800d5107
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x6fe081f
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1800d5102
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x1800d50e0
cmp r8d, 0x1a602c8a
je 0x1800d510c
test r9d, r9d
jne 0x1800d50c0
mov rax, qword [rax]
jmp 0x1800d5090
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rcx, [rsp + 0x60]
add rax, r10
call rax
mov rdi, rax
test rax, rax
jne 0x1800d513a
mov r15, rsi
jmp 0x1800d5554
movsxd rax, dword [rax + 0x3c]
lea r8, [rsp + 0x48]
xorps xmm0, xmm0
lea rdx, [rbp - 0x60]
lea rcx, [0x18024db08]
mov ebx, dword [rax + rdi + 0x50]
xor eax, eax
mov qword [rbp - 0x50], rax
movups xmmword [rbp - 0x60], xmm0
call fcn.18006a520
mov r11, qword [rbp - 0x58]
mov r9d, esi
mov r10, qword [rbp - 0x60]
sub r11, r10
sar r11, 2
sub rbx, r11
je 0x1800d5218
nop
mov edx, esi
test r11, r11
je 0x1800d51b4
mov rax, rsi
nop word [rax + rax]
mov r8d, dword [r10 + rax*4]
lea eax, [rdx + r9]
movzx eax, byte [rax + rdi + 0x13000]
cmp eax, r8d
je 0x1800d51ab
cmp r8d, 0xffffffff
jne 0x1800d5209
inc edx
mov eax, edx
cmp rax, r11
jb 0x1800d5190
mov r15d, r9d
add r15, 0x13000
add r15, rdi
test r10, r10
je 0x1800d51fe
mov rdx, qword [rbp - 0x50]
mov rax, r10
sub rdx, r10
and rdx, 0xfffffffffffffffc
cmp rdx, 0x1000
jb 0x1800d51f6
mov r10, qword [r10 - 8]
add rdx, 0x27
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800d5bd3
mov rcx, r10
call fcn.1801a8d40
test r15, r15
jne 0x1800d5554
jmp 0x1800d5258
inc r9d
mov eax, r9d
cmp rax, rbx
jb 0x1800d5180
test r10, r10
je 0x1800d5255
mov rdx, qword [rbp - 0x50]
mov rax, r10
sub rdx, r10
and rdx, 0xfffffffffffffffc
cmp rdx, 0x1000
jb 0x1800d524d
mov r10, qword [r10 - 8]
add rdx, 0x27
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800d5bd3
mov rcx, r10
call fcn.1801a8d40
mov r15, rsi
mov r10, qword [0x18024e080]
test r10, r10
jne 0x1800d531e
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r14, qword [rax]
mov rdi, r14
nop
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1800d52f8
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1800d52f8
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x82956991
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1800d52f3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x1800d52d0
cmp edx, 0x112679e0
je 0x1800d551c
test r8d, r8d
jne 0x1800d52b0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, r14
je 0x1800d530d
cmp qword [rax + 0x30], rsi
jne 0x1800d5280
mov r10, rsi
mov r14d, dword [reloc.WS2_32.dll_accept]
mov qword [0x18024e080], r10
cmp byte [0x1801bf7ab], sil
movsd xmm0, qword [0x1801bf7a0]
mov eax, dword [0x1801bf7a8]
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
je 0x1800d5474
mov r8d, esi
cmp r14d, 2
jl 0x1800d542d
movd eax, xmm10
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
movdqa xmm0, xmm7
pmuldq xmm1, xmm6
movdqa xmm2, xmm11
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm7
pmulld xmm0, xmm9
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [0x1801bf7a0]
xorps xmm1, xmm0
movdqa xmm0, xmm11
movd dword [rsp + 0x30], xmm1
movdqa xmm1, xmm11
punpckhdq xmm0, xmm11
pmuldq xmm0, xmm6
punpckldq xmm1, xmm11
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm11
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x34]
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x34], xmm2
movsxd rax, r8d
lea r9, [rsp + 0x30]
add r9, rax
nop dword [rax + rax]
mov eax, 0x92492493
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 0xc
jl 0x1800d5440
xor r9d, r9d
lea r8, [0x1801aec24]
lea rdx, [rsp + 0x30]
xor ecx, ecx
call r10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1800d5517
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1800d5517
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xfd9ce6f7
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1800d5512
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x1800d54f0
cmp r8d, 0xaa361937
je 0x1800d5539
test r9d, r9d
jne 0x1800d54d0
mov rax, qword [rax]
jmp 0x1800d54a0
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov r10d, dword [rcx + rdx*4]
add r10, r9
jmp 0x1800d5310
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
xor ecx, ecx
add rax, r10
call rax
test r12, r12
je 0x1800d5567
test r13, r13
je 0x1800d5567
test r15, r15
jne 0x1800d4786
lea rcx, [rbp - 0x60]
mov qword [rbp - 0x60], 0x258
call fcn.180062690
jmp 0x1800d4786
mov ecx, dword [rdi + 0x24]
mov r8d, 8
add rcx, r10
movzx edx, word [rcx + r9*2]
mov r9d, 0x40
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rcx, [rbp - 0x40]
mov qword [rsp + 0x20], rcx
add rax, r10
mov rcx, 0xffffffffffffffff
mov rdx, r15
call rax
mov r8, qword [0x18024db80]
lea rdi, [0x18024da80]
mov qword [0x18024b1a0], r8
cmp rdi, r8
je 0x1800d5690
mov eax, dword [r8]
lea rcx, [0x18024da88]
mov dword [0x18024da80], eax
mov r8, qword [r8 + 8]
mov rdx, qword [r8]
call fcn.180054c90
mov rcx, qword [0x18024da90]
xorps xmm0, xmm0
mov rbx, qword [0x18024dab8]
test rcx, rcx
js 0x1800d560c
cvtsi2ss xmm0, rcx
jmp 0x1800d5621
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x18024da80]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
movss xmm1, dword [0x1801bb1b8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x1800d5653
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1800d5653
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1800d5685
cmp rbx, 0x200
jae 0x1800d5682
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1800d5685
mov rbx, rcx
mov rdx, rbx
mov rcx, rdi
call fcn.180072590
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x1800d5728
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1800d5728
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x99f4c5a5
mov r10d, r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r11]
add rdx, r11
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1800d5723
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x1800d5701
cmp r8d, 0xea2fa32e
je 0x1800d572d
test r9d, r9d
jne 0x1800d56e0
mov rax, qword [rax]
jmp 0x1800d56b0
mov r9d, dword [rdi + 0x24]
lea rdx, [rbp - 0x40]
add r9, r11
mov qword [rsp + 0x20], rdx
mov r8d, 8
mov rdx, r15
mov rcx, 0xffffffffffffffff
movzx r10d, word [r9 + r10*2]
mov r9d, dword [rdi + 0x1c]
add r9, r11
mov eax, dword [r9 + r10*4]
mov r9d, dword [rbp - 0x40]
add rax, r11
call rax
jmp 0x1800d5b4a
mov r10, qword [0x18024dfc8]
test r10, r10
jne 0x1800d583e
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r14, qword [rax]
mov rdi, r14
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1800d5818
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1800d5818
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x3368d08d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1800d5813
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x1800d57f0
cmp edx, 0x10cd37ac
je 0x1800d5a5c
test r8d, r8d
jne 0x1800d57d0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, r14
je 0x1800d582d
cmp qword [rax + 0x30], rsi
jne 0x1800d57a0
mov r10, rsi
mov r14d, dword [reloc.WS2_32.dll_accept]
mov qword [0x18024dfc8], r10
cmp byte [0x1801c1df3], sil
movups xmm0, xmmword [str.pJJNe_U_a____iI]
mov eax, dword [0x1801c1df0]
mov dword [rsp + 0x58], eax
movups xmmword [rsp + 0x48], xmm0
je 0x1800d59b0
cmp r14d, 2
jl 0x1800d5972
movdqa xmmword [rbp - 0x60], xmm10
lea rcx, [rsp + 0x4c]
mov edx, dword [rbp - 0x60]
nop dword [rax]
movd xmm2, esi
lea eax, [rsi + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm7
add esi, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movd dword [rcx - 0xc], xmm2
movd xmm2, eax
mov eax, esi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movd xmm0, edx
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp esi, 0x10
jl 0x1800d5880
cmp eax, 0x14
jge 0x1800d59b0
movsxd rax, esi
lea r8, [rsp + 0x48]
add r8, rax
nop dword [rax]
mov eax, 0x92492493
lea r8, [r8 + 1]
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, sil
inc esi
sub al, cl
add al, 0x36
xor byte [r8 - 1], al
cmp esi, 0x14
jl 0x1800d5980
xor r9d, r9d
lea rdx, [rsp + 0x48]
xor r8d, r8d
xor ecx, ecx
call r10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1800d5a57
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1800d5a57
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xb6d16d88
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1800d5a52
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x1800d5a30
cmp r8d, 0x377309e
je 0x1800d5a79
test r9d, r9d
jne 0x1800d5a10
mov rax, qword [rax]
jmp 0x1800d59e0
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov r10d, dword [rcx + rdx*4]
add r10, r9
jmp 0x1800d5830
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
add rax, r10
call rax
mov rcx, qword gs:[0x60]
mov rsi, rax
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop word [rax + rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1800d5b27
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1800d5b27
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xb5d16bf5
lea rax, [r10 + r9*4]
mov edx, dword [rax + rbx]
add rdx, r10
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x1800d5b22
nop dword [rax]
movsx eax, al
lea rdx, [rdx + 1]
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx - 1]
test al, al
jne 0x1800d5b00
cmp r8d, 0xd9381729
je 0x1800d5b2c
test r9d, r9d
jne 0x1800d5ae0
mov rcx, qword [rcx]
jmp 0x1800d5ab0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
xor edx, edx
add rax, r10
mov rcx, rsi
call rax
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x1800d5b88
mov rcx, qword [rbp - 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800d5b83
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800d5b83
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1801a8d40
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.1801a9230
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea rcx, [0x18024db88]
call fcn.1801a9124
cmp dword [0x18024db88], 0xffffffff
jne 0x1800d49bd
lea rax, [r13 + 0x34cf0]
lea rcx, [0x18024db88]
mov qword [0x18024db80], rax
call fcn.1801a90b8
jmp 0x1800d49bd