Function at 0x1800ad570
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
sub rsp, 0xb8
mov qword [rax + 0x20], rdi
mov qword [rax - 0x10], r13
mov qword [rax - 0x18], r14
mov r14, rdx
mov r9, rdx
mov edx, 0x60
mov r13, r8
mov edi, ecx
lea r8d, [rdx - 0x5f]
lea rcx, [rsp + 0x30]
call fcn.1800e6400
cmp rax, 1
je 0x1800ad5b4
mov eax, 0x20
jmp 0x1800adb30
mov rcx, r13
mov qword [rsp + 0xb0], r12
call fcn.1800ad3c0
cmp eax, 0xffffffff
mov r12d, eax
je 0x1800adb5f
movzx ecx, byte [rsp + 0x30]
mov qword [rsp + 0xc0], rbx
mov rbx, r12
imul rbx, rbx, 0x68
add rbx, qword [r13 + 0x10]
cmp edi, 1
mov byte [rbx], cl
jne 0x1800ad614
movzx eax, byte [rsp + 0x36]
movzx ecx, byte [rsp + 0x35]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x34]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x37]
or ecx, eax
jmp 0x1800ad618
mov ecx, dword [rsp + 0x34]
cmp edi, 1
mov dword [rbx + 4], ecx
jne 0x1800ad645
movzx eax, byte [rsp + 0x3a]
movzx ecx, byte [rsp + 0x39]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x38]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x3b]
or ecx, eax
jmp 0x1800ad649
mov ecx, dword [rsp + 0x38]
cmp edi, 1
mov dword [rbx + 8], ecx
jne 0x1800ad676
movzx eax, byte [rsp + 0x3e]
movzx ecx, byte [rsp + 0x3d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x3c]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x3f]
or ecx, eax
jmp 0x1800ad67a
mov ecx, dword [rsp + 0x3c]
cmp edi, 1
mov dword [rbx + 0xc], ecx
jne 0x1800ad6a7
movzx eax, byte [rsp + 0x42]
movzx ecx, byte [rsp + 0x41]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x40]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x43]
or ecx, eax
jmp 0x1800ad6ab
mov ecx, dword [rsp + 0x40]
cmp edi, 1
mov dword [rbx + 0x10], ecx
jne 0x1800ad6d8
movzx eax, byte [rsp + 0x46]
movzx ecx, byte [rsp + 0x45]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x44]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x47]
or ecx, eax
jmp 0x1800ad6dc
mov ecx, dword [rsp + 0x44]
cmp edi, 1
mov dword [rbx + 0x14], ecx
jne 0x1800ad709
movzx eax, byte [rsp + 0x4a]
movzx ecx, byte [rsp + 0x49]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x48]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x4b]
or ecx, eax
jmp 0x1800ad70d
mov ecx, dword [rsp + 0x48]
cmp edi, 1
mov dword [rbx + 0x18], ecx
jne 0x1800ad73a
movzx eax, byte [rsp + 0x4e]
movzx ecx, byte [rsp + 0x4d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x4c]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x4f]
or ecx, eax
jmp 0x1800ad73e
mov ecx, dword [rsp + 0x4c]
cmp edi, 1
mov dword [rbx + 0x1c], ecx
jne 0x1800ad76b
movzx eax, byte [rsp + 0x52]
movzx ecx, byte [rsp + 0x51]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x50]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x53]
or ecx, eax
jmp 0x1800ad76f
mov ecx, dword [rsp + 0x50]
cmp edi, 1
mov dword [rbx + 0x20], ecx
jne 0x1800ad79c
movzx eax, byte [rsp + 0x56]
movzx ecx, byte [rsp + 0x55]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x54]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x57]
or ecx, eax
jmp 0x1800ad7a0
mov ecx, dword [rsp + 0x54]
cmp edi, 1
mov dword [rbx + 0x24], ecx
movzx eax, byte [rsp + 0x58]
mov byte [rbx + 0x28], al
jne 0x1800ad7d5
movzx eax, byte [rsp + 0x5e]
movzx ecx, byte [rsp + 0x5d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x5c]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x5f]
or ecx, eax
jmp 0x1800ad7d9
mov ecx, dword [rsp + 0x5c]
cmp edi, 1
mov dword [rbx + 0x2c], ecx
jne 0x1800ad806
movzx eax, byte [rsp + 0x62]
movzx ecx, byte [rsp + 0x61]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x60]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x63]
or ecx, eax
jmp 0x1800ad80a
mov ecx, dword [rsp + 0x60]
cmp edi, 1
mov dword [rbx + 0x30], ecx
jne 0x1800ad837
movzx eax, byte [rsp + 0x66]
movzx ecx, byte [rsp + 0x65]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x64]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x67]
or ecx, eax
jmp 0x1800ad83b
mov ecx, dword [rsp + 0x64]
cmp edi, 1
mov dword [rbx + 0x34], ecx
jne 0x1800ad868
movzx eax, byte [rsp + 0x6a]
movzx ecx, byte [rsp + 0x69]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x68]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x6b]
or ecx, eax
jmp 0x1800ad86c
mov ecx, dword [rsp + 0x68]
cmp edi, 1
mov dword [rbx + 0x38], ecx
jne 0x1800ad899
movzx eax, byte [rsp + 0x6e]
movzx ecx, byte [rsp + 0x6d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x6c]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x6f]
or ecx, eax
jmp 0x1800ad89d
mov ecx, dword [rsp + 0x6c]
cmp edi, 1
mov dword [rbx + 0x3c], ecx
jne 0x1800ad8ca
movzx eax, byte [rsp + 0x72]
movzx ecx, byte [rsp + 0x71]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x70]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x73]
or ecx, eax
jmp 0x1800ad8ce
mov ecx, dword [rsp + 0x70]
cmp edi, 1
mov dword [rbx + 0x40], ecx
jne 0x1800ad8fb
movzx eax, byte [rsp + 0x76]
movzx ecx, byte [rsp + 0x75]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x74]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x77]
or ecx, eax
jmp 0x1800ad8ff
mov ecx, dword [rsp + 0x74]
cmp edi, 1
mov dword [rbx + 0x44], ecx
jne 0x1800ad92c
movzx eax, byte [rsp + 0x7a]
movzx ecx, byte [rsp + 0x79]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x78]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x7b]
or ecx, eax
jmp 0x1800ad930
mov ecx, dword [rsp + 0x78]
cmp edi, 1
mov dword [rbx + 0x48], ecx
jne 0x1800ad95d
movzx eax, byte [rsp + 0x7e]
movzx ecx, byte [rsp + 0x7d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x7c]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x7f]
or ecx, eax
jmp 0x1800ad961
mov ecx, dword [rsp + 0x7c]
cmp edi, 1
mov dword [rbx + 0x4c], ecx
jne 0x1800ad99a
movzx eax, byte [rsp + 0x82]
movzx ecx, byte [rsp + 0x81]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x80]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x83]
or ecx, eax
jmp 0x1800ad9a1
mov ecx, dword [rsp + 0x80]
cmp edi, 1
mov dword [rbx + 0x50], ecx
jne 0x1800ad9da
movzx eax, byte [rsp + 0x86]
movzx ecx, byte [rsp + 0x85]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x84]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x87]
or ecx, eax
jmp 0x1800ad9e1
mov ecx, dword [rsp + 0x84]
cmp edi, 1
mov dword [rbx + 0x54], ecx
jne 0x1800ada1a
movzx eax, byte [rsp + 0x8a]
movzx ecx, byte [rsp + 0x89]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x88]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x8b]
or ecx, eax
jmp 0x1800ada21
mov ecx, dword [rsp + 0x88]
cmp edi, 1
mov dword [rbx + 0x58], ecx
jne 0x1800ada5a
movzx eax, byte [rsp + 0x8e]
movzx ecx, byte [rsp + 0x8d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x8c]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x8f]
or ecx, eax
jmp 0x1800ada61
mov ecx, dword [rsp + 0x8c]
test ecx, ecx
mov qword [rsp + 0xc8], rbp
mov dword [rbx + 0x5c], ecx
mov qword [rsp + 0xd0], rsi
je 0x1800adb5b
shl rcx, 2
call fcn.180079290
test rax, rax
mov qword [rbx + 0x60], rax
je 0x1800adb50
xor esi, esi
cmp dword [rbx + 0x5c], esi
jbe 0x1800adb5b
xor ebp, ebp
nop
mov edx, 4
lea rcx, [rsp + 0x20]
mov r9, r14
lea r8d, [rdx - 3]
call fcn.1800e6400
cmp rax, 1
jne 0x1800adb00
cmp edi, eax
jne 0x1800adae5
movzx eax, byte [rsp + 0x22]
movzx ecx, byte [rsp + 0x21]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x20]
shl eax, 0x18
shl ecx, 8
or ecx, eax
movzx eax, byte [rsp + 0x23]
or ecx, eax
jmp 0x1800adae9
mov ecx, dword [rsp + 0x20]
mov rax, qword [rbx + 0x60]
inc esi
add rbp, 4
mov dword [rax + rbp - 4], ecx
cmp esi, dword [rbx + 0x5c]
jb 0x1800adaa0
xor eax, eax
jmp 0x1800adb10
mov edx, r12d
mov rcx, r13
call fcn.1800ad230
mov eax, 0x20
mov rsi, qword [rsp + 0xd0]
mov rbp, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xa0]
mov r13, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xd8]
add rsp, 0xb8
ret
mov edx, r12d
mov rcx, r13
call fcn.1800ad230
xor eax, eax
jmp 0x1800adb10
mov eax, reloc.WSOCK32.dll_ioctlsocket
jmp 0x1800adb28