Function at 0x180029550
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
sub rsp, 0xa8
cmp byte [0x180233954], 0
je 0x180029ebb
mov rax, qword [0x1802339a8]
mov rcx, qword [rax]
test rcx, rcx
je 0x180029ebb
mov qword [r11 - 8], rsi
mov rsi, qword [rcx + 8]
test rsi, rsi
je 0x180029eb3
mov qword [r11 + 0x18], rbp
mov rbp, qword [rsi + 0x30]
test rbp, rbp
je 0x180029eab
movsd xmm0, qword [rsi + 0x90]
mov eax, dword [rsi + 0x98]
movsd qword [rsp + 0x40], xmm0
movss xmm0, dword [0x18019ecc4]
comiss xmm0, dword [rsi + 0x280]
mov dword [rsp + 0x48], eax
ja 0x180029eab
mov rax, qword gs:[0x60]
mov qword [r11 + 0x10], rbx
mov qword [r11 - 0x10], rdi
mov qword [r11 - 0x18], r14
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 0x180029667
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x180029667
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xe0639c46
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x180029662
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 0x180029640
cmp r8d, 0x5a79f44e
je 0x18002966c
test r9d, r9d
jne 0x180029620
mov rax, qword [rax]
jmp 0x1800295f0
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]
mov ecx, dword [0x18023043c]
add rax, r10
call rax
test ax, ax
setne byte [0x1802332b9]
test ax, ax
je 0x1800296a7
movd xmm0, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm0, xmm0
jmp 0x1800296af
movss xmm0, dword [0x18019ec08]
mov rax, qword gs:[0x60]
movss dword [0x1802303c0], xmm0
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [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 0x180029747
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x180029747
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x7a07ccc6
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x180029742
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 0x180029720
cmp r8d, 0xfb4b44ce
je 0x18002974c
test r9d, r9d
jne 0x180029700
mov rax, qword [rax]
jmp 0x1800296d0
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]
mov ecx, dword [0x180230440]
add rax, r10
call rax
xor r14d, r14d
test ax, ax
je 0x180029788
cmp dword [reloc.WS2_32.dll_accept], r14d
mov eax, r14d
sete al
mov dword [reloc.WS2_32.dll_accept], eax
jmp 0x18002978e
mov eax, dword [reloc.WS2_32.dll_accept]
test eax, eax
je 0x180029e93
movaps xmmword [rsp + 0x80], xmm6
movabs rcx, 0xd80958fc74e988a6
movaps xmmword [rsp + 0x70], xmm7
movaps xmmword [rsp + 0x60], xmm8
movaps xmmword [rsp + 0x50], xmm9
call fcn.18001d5c0
xor r8d, r8d
mov edx, eax
movabs rcx, 0x997abd671d25ca0b
mov ebx, eax
call fcn.18001d770
test eax, eax
je 0x1800297e9
mov edx, ebx
movabs rcx, 0x6094ad011a2ea87d
call fcn.18001d680
xorps xmm9, xmm9
xorps xmm3, xmm3
xorps xmm2, xmm2
movss dword [rsp + 0x20], xmm9
mov edx, ebx
movabs rcx, 0x1c99bb7b6e96d16f
call fcn.18001e860
mov dword [rsp + 0x30], r14d
xorps xmm3, xmm3
mov dword [rsp + 0x28], r14d
xorps xmm2, xmm2
mov edx, ebx
movss dword [rsp + 0x20], xmm9
movabs rcx, 0x8524a8b0171d5e07
call fcn.18001e9b0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [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 0x1800298c7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1800298c7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xc90c9e1e
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1800298c2
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 0x1800298a0
cmp r8d, 0x3a8d77e6
je 0x1800298cc
test r9d, r9d
jne 0x180029880
mov rax, qword [rax]
jmp 0x180029850
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]
mov ecx, 0x57
add rax, r10
call rax
movss xmm7, dword [rsp + 0x48]
movss xmm8, dword [rsp + 0x44]
movss xmm6, dword [rsp + 0x40]
test ax, ax
jns 0x1800299df
mov qword [rsi + 0x320], r14
mov dword [rsi + 0x328], r14d
mov rax, qword [0x1802339c0]
test rax, rax
je 0x180029925
mov rcx, qword [rax]
jmp 0x18002992d
mov rcx, qword [rsp + 0xb0]
movsd xmm1, qword [rcx + 0x3d0]
movss xmm4, dword [0x1802303c0]
movaps xmm0, xmm1
movaps xmm3, xmm4
shufps xmm0, xmm0, 0x55
mulss xmm3, xmm1
movaps xmm2, xmm4
mulss xmm4, dword [rcx + 0x3d8]
addss xmm3, xmm6
mulss xmm2, xmm0
addss xmm4, xmm7
addss xmm2, xmm8
movss dword [rsi + 0x90], xmm3
movaps xmm1, xmm3
movss dword [rsi + 0x94], xmm2
movss dword [rsi + 0x98], xmm4
unpcklps xmm1, xmm2
movsd qword [rbp + 0x50], xmm1
movss dword [rbp + 0x58], xmm4
mov eax, dword [0x1802339ec]
mov rcx, qword [rax + rsi]
test rcx, rcx
je 0x1800299df
movsd xmm0, qword [rcx + 0x90]
ucomiss xmm0, xmm9
jp 0x1800299ae
je 0x1800299df
mov rax, qword [rcx + 0x30]
mov qword [rcx + 0x320], r14
mov dword [rcx + 0x328], r14d
movsd qword [rcx + 0x90], xmm1
movss dword [rcx + 0x98], xmm4
test rax, rax
je 0x1800299df
movsd qword [rax + 0x50], xmm1
movss dword [rax + 0x58], xmm4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x180029a67
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x180029a67
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xfe7043e2
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x180029a62
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 0x180029a40
cmp r8d, 0xc334299a
je 0x180029a6c
test r9d, r9d
jne 0x180029a20
mov rax, qword [rax]
jmp 0x1800299f0
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]
mov ecx, 0x53
add rax, r10
call rax
test ax, ax
jns 0x180029b76
mov qword [rsi + 0x320], r14
mov dword [rsi + 0x328], r14d
mov rax, qword [0x1802339c0]
test rax, rax
je 0x180029ab2
mov rcx, qword [rax]
jmp 0x180029aba
mov rcx, qword [rsp + 0xb0]
movsd xmm1, qword [rcx + 0x3d0]
movaps xmm4, xmm6
movss xmm2, dword [0x1802303c0]
movaps xmm0, xmm1
mulss xmm0, xmm2
movaps xmm3, xmm8
subss xmm4, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movaps xmm1, xmm7
mulss xmm0, xmm2
subss xmm3, xmm0
movss xmm0, dword [rcx + 0x3d8]
movss dword [rsi + 0x90], xmm4
mulss xmm0, xmm2
movaps xmm2, xmm4
movss dword [rsi + 0x94], xmm3
subss xmm1, xmm0
unpcklps xmm2, xmm3
movss dword [rsi + 0x98], xmm1
movsd qword [rbp + 0x50], xmm2
movss dword [rbp + 0x58], xmm1
mov eax, dword [0x1802339ec]
mov rcx, qword [rax + rsi]
test rcx, rcx
je 0x180029b76
movsd xmm0, qword [rcx + 0x90]
ucomiss xmm0, xmm9
jp 0x180029b45
je 0x180029b76
mov rax, qword [rcx + 0x30]
mov qword [rcx + 0x320], r14
mov dword [rcx + 0x328], r14d
movsd qword [rcx + 0x90], xmm2
movss dword [rcx + 0x98], xmm1
test rax, rax
je 0x180029b76
movsd qword [rax + 0x50], xmm2
movss dword [rax + 0x58], xmm1
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 0x180029c07
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x180029c07
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xac33e65a
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x180029c02
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 0x180029be0
cmp r8d, 0xcb3a72b2
je 0x180029c0c
test r9d, r9d
jne 0x180029bc0
mov rax, qword [rax]
jmp 0x180029b90
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]
mov ecx, 0x44
add rax, r10
call rax
test ax, ax
jns 0x180029cfd
mov qword [rsi + 0x320], r14
mov dword [rsi + 0x328], r14d
mov rax, qword [0x1802339c0]
test rax, rax
je 0x180029c52
mov rax, qword [rax]
jmp 0x180029c5a
mov rax, qword [rsp + 0xb0]
movsd xmm2, qword [rax + 0x3d0]
movaps xmm1, xmm8
movaps xmm3, xmm2
mulss xmm2, dword [0x1802303c0]
shufps xmm3, xmm3, 0x55
mulss xmm3, dword [0x1802303c0]
subss xmm1, xmm2
addss xmm3, xmm6
movss dword [rsi + 0x90], xmm3
movaps xmm2, xmm3
movss dword [rsi + 0x94], xmm1
movss dword [rsi + 0x98], xmm7
unpcklps xmm2, xmm1
movsd qword [rbp + 0x50], xmm2
movss dword [rbp + 0x58], xmm7
mov eax, dword [0x1802339ec]
mov rcx, qword [rax + rsi]
test rcx, rcx
je 0x180029cfd
movsd xmm0, qword [rcx + 0x90]
ucomiss xmm0, xmm9
jp 0x180029ccc
je 0x180029cfd
mov rax, qword [rcx + 0x30]
mov qword [rcx + 0x320], r14
mov dword [rcx + 0x328], r14d
movsd qword [rcx + 0x90], xmm2
movss dword [rcx + 0x98], xmm7
test rax, rax
je 0x180029cfd
movsd qword [rax + 0x50], xmm2
movss dword [rax + 0x58], xmm7
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 0x180029d87
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x180029d87
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xf6f8e112
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x180029d82
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x180029d60
cmp r8d, 0xa039f9ea
je 0x180029d8c
test r9d, r9d
jne 0x180029d40
mov rax, qword [rax]
jmp 0x180029d10
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]
mov ecx, 0x41
add rax, r10
call rax
test ax, ax
jns 0x180029e7a
mov qword [rsi + 0x320], r14
mov dword [rsi + 0x328], r14d
mov rax, qword [0x1802339c0]
test rax, rax
je 0x180029dd2
mov rax, qword [rax]
jmp 0x180029dda
mov rax, qword [rsp + 0xb0]
movsd xmm2, qword [rax + 0x3d0]
movaps xmm0, xmm2
mulss xmm2, dword [0x1802303c0]
shufps xmm0, xmm0, 0x55
mulss xmm0, dword [0x1802303c0]
addss xmm2, xmm8
subss xmm6, xmm0
movss dword [rsi + 0x90], xmm6
movaps xmm1, xmm6
movss dword [rsi + 0x94], xmm2
movss dword [rsi + 0x98], xmm7
unpcklps xmm1, xmm2
movsd qword [rbp + 0x50], xmm1
movss dword [rbp + 0x58], xmm7
mov eax, dword [0x1802339ec]
mov rcx, qword [rax + rsi]
test rcx, rcx
je 0x180029e7a
movsd xmm0, qword [rcx + 0x90]
ucomiss xmm0, xmm9
jp 0x180029e49
je 0x180029e7a
mov rax, qword [rcx + 0x30]
mov qword [rcx + 0x320], r14
mov dword [rcx + 0x328], r14d
movsd qword [rcx + 0x90], xmm1
movss dword [rcx + 0x98], xmm7
test rax, rax
je 0x180029e7a
movsd qword [rax + 0x50], xmm1
movss dword [rax + 0x58], xmm7
movaps xmm8, xmmword [rsp + 0x60]
movaps xmm7, xmmword [rsp + 0x70]
movaps xmm6, xmmword [rsp + 0x80]
movaps xmm9, xmmword [rsp + 0x50]
mov rdi, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xb8]
mov r14, qword [rsp + 0x90]
mov rbp, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xa0]
add rsp, 0xa8
ret