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

Disassembly:
mov rax, rsp
sub rsp, 0x608
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov qword [rax - 0x18], r14
mov qword [rax - 0x20], r15
xor r15d, r15d
mov r14, rdx
mov rdi, rcx
lea rbp, [0x1801b3530]
mov qword [rdx], r15
mov rsi, r15
mov rax, r15
cmp qword [rax + rbp], r15
je 0x1800a05be
add rax, 0x3d0
inc rsi
cmp rax, 0x7a000
jb 0x1800a05a7
cmp rsi, 0x200
jne 0x1800a05d1
mov eax, 0x2bb
jmp 0x1800a06b8
mov eax, dword [rcx + 0x2c]
mov qword [rsp + 0x610], rbx
test eax, eax
jne 0x1800a06e8
lea rax, [rsp + 0x40]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x48]
xor edx, edx
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x20], rax
call fcn.1800d5da0
test eax, eax
jne 0x1800a06b0
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1800a06ab
cmp qword [rsp + 0x40], 4
jne 0x1800a06ab
movzx eax, byte [rcx + 2]
movzx edx, byte [rcx + 1]
imul rsi, rsi, 0x3d0
shl edx, 8
or edx, eax
movzx eax, byte [rcx]
shl eax, 0x18
shl edx, 8
or edx, eax
movzx eax, byte [rcx + 3]
or edx, eax
mov dword [rsi + rbp + 0xc], edx
call fcn.180078fc0
lea rcx, [rsp + 0x60]
call fcn.180079cb0
mov r11d, dword [rsp + 0x60]
lea rcx, [rsp + 0x60]
or r11d, 0xf0000000
mov dword [rsi + rbp + 0x10], r11d
call fcn.180079cb0
movzx eax, byte [rsp + 0x60]
mov dword [rsi + rbp + 0x14], eax
test byte [rdi + 0x3c], 4
je 0x1800a0699
mov byte [rsi + rbp + 0x18], r15b
jmp 0x1800a0bdc
lea rcx, [rsi + rbp + 0x18]
call fcn.1800d3d60
test eax, eax
je 0x1800a0bdc
mov eax, 0x2bb
mov rbx, qword [rsp + 0x610]
mov r15, qword [rsp + 0x5e8]
mov r14, qword [rsp + 0x5f0]
mov rdi, qword [rsp + 0x628]
mov rsi, qword [rsp + 0x620]
mov rbp, qword [rsp + 0x618]
add rsp, 0x608
ret
cmp eax, 1
jne 0x1800a06ab
mov qword [rsp + 0x600], r12
mov ecx, 0x1000
mov qword [rsp + 0x5f8], r13
mov r13d, r15d
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x50], r15
mov r12d, r15d
call fcn.180079290
test rax, rax
mov rbp, rax
jne 0x1800a072c
lea ebx, [rax + 3]
jmp 0x1800a0ae8
lea rax, [rsp + 0x1e0]
lea rdx, [rsp + 0x80]
mov ecx, 0x21
mov qword [rsp + 0xe8], rax
lea rax, [rsp + 0x3e0]
mov qword [rsp + 0xf0], 0x200
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe0], 0x200
call fcn.180074130
test eax, eax
mov ebx, eax
jne 0x1800a0abc
lea rdx, [rsp + 0x68]
lea ecx, [rax + 0x22]
call fcn.180074130
test eax, eax
mov ebx, eax
jne 0x1800a0abc
lea rdx, [rsp + 0x90]
lea ecx, [rax + 0x23]
call fcn.180074130
test eax, eax
mov ebx, eax
jne 0x1800a0abc
lea rcx, str.sober128
call fcn.18009c900
lea rcx, str.rmd160
call fcn.1800cc180
lea rcx, [0x1801b3380]
lea rdx, str.libbn_mp
mov r8d, 0x180
call fcn.180005f30
mov r8d, dword [rdi + 0x38]
lea rcx, [rsp + 0x190]
mov edx, 0x61706913
call fcn.1800a1240
test byte [rdi + 0x3c], 8
je 0x1800a086a
mov rax, qword [rdi + 0x158]
lea rcx, [rsp + 0x100]
mov qword [rcx], rax
mov rax, qword [rdi + 0x160]
mov qword [rcx + 8], rax
mov rax, qword [rdi + 0x168]
mov qword [rcx + 0x10], rax
mov rax, qword [rdi + 0x170]
mov qword [rcx + 0x18], rax
mov rax, qword [rdi + 0x178]
mov qword [rcx + 0x20], rax
mov rax, qword [rdi + 0x180]
mov qword [rcx + 0x28], rax
mov rax, qword [rdi + 0x188]
mov qword [rcx + 0x30], rax
mov rax, qword [rdi + 0x190]
mov qword [rcx + 0x38], rax
mov rax, qword [rdi + 0x198]
mov qword [rcx + 0x40], rax
jmp 0x1800a08b0
mov ecx, dword [rdi + 0x38]
lea r8, [rsp + 0x58]
mov rdx, rbp
call fcn.1800d1cb0
test eax, eax
je 0x1800a0888
mov ebx, 0x22
jmp 0x1800a0abc
mov edx, dword [rsp + 0x58]
lea r8, [rsp + 0x100]
mov rcx, rbp
call fcn.180097980
test eax, eax
je 0x1800a08aa
mov ebx, 0x2bb
jmp 0x1800a0abc
mov r13d, 1
test byte [rdi + 0x3c], 8
je 0x1800a0922
mov rax, qword [rdi + 0x1a0]
lea rcx, [rsp + 0x148]
mov qword [rcx], rax
mov rax, qword [rdi + 0x1a8]
mov qword [rcx + 8], rax
mov rax, qword [rdi + 0x1b0]
mov qword [rcx + 0x10], rax
mov rax, qword [rdi + 0x1b8]
mov qword [rcx + 0x18], rax
mov rax, qword [rdi + 0x1c0]
mov qword [rcx + 0x20], rax
mov rax, qword [rdi + 0x1c8]
mov qword [rcx + 0x28], rax
mov rax, qword [rdi + 0x1d0]
mov qword [rcx + 0x30], rax
mov rax, qword [rdi + 0x1d8]
mov qword [rcx + 0x38], rax
mov rax, qword [rdi + 0x1e0]
mov qword [rcx + 0x40], rax
jmp 0x1800a0968
mov ecx, dword [rdi + 0x38]
lea r8, [rsp + 0x58]
mov rdx, rbp
call int.1800cfc10
test eax, eax
je 0x1800a0940
mov ebx, 0x22
jmp 0x1800a0abc
mov edx, dword [rsp + 0x58]
lea r8, [rsp + 0x148]
mov rcx, rbp
call fcn.180097980
test eax, eax
je 0x1800a0962
mov ebx, 0x2bb
jmp 0x1800a0abc
mov r12d, 1
lea rcx, [rsp + 0x30]
call fcn.1800cdbd0
test eax, eax
je 0x1800a0980
mov ebx, 0x22
jmp 0x1800a0abc
mov rdx, qword [rsp + 0x80]
lea r9, [rsp + 0x88]
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x30]
call fcn.18007bc30
test eax, eax
je 0x1800a09ad
mov ebx, 0x2bb
jmp 0x1800a0abc
mov r9, qword [rsp + 0x88]
mov r8, qword [rsp + 0x50]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x38]
xor edx, edx
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.1800d5da0
mov rcx, qword [rsp + 0x50]
mov ebx, eax
call fcn.1800797f0
test ebx, ebx
jne 0x1800a0abc
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
lea r9, [rsp + 0x48]
call fcn.18007b790
test eax, eax
je 0x1800a0a13
mov ebx, 0x2bb
jmp 0x1800a0abc
mov r8d, dword [rdi + 0x38]
lea rcx, [rsp + 0x98]
mov edx, 0x766c6962
call fcn.1800a1240
mov rdx, qword [rsp + 0x48]
lea r9, [rsp + 0x98]
lea r8, [rsp + 0xb0]
lea rcx, [rsp + 0x100]
call fcn.1800a1360
test eax, eax
je 0x1800a0a56
mov ebx, 0x2bb
jmp 0x1800a0abc
mov rcx, qword [rsp + 0x38]
call fcn.1800797f0
mov rdx, qword [rsp + 0x90]
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x38]
lea rcx, [rsp + 0xb0]
mov qword [rsp + 0x38], r15
call fcn.18007bc30
test eax, eax
je 0x1800a0a8f
mov ebx, 0x2bb
jmp 0x1800a0abc
mov r9, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
mov edx, 1
mov rcx, rdi
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
call fcn.1800d5da0
mov rcx, qword [rsp + 0x38]
mov ebx, eax
call fcn.1800797f0
mov rcx, rbp
call fcn.180078fc0
test r13d, r13d
je 0x1800a0ad6
lea rcx, [rsp + 0x100]
call fcn.18007c0a0
test r12d, r12d
je 0x1800a0ae8
lea rcx, [rsp + 0x148]
call fcn.18007c0a0
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x5f8]
mov r12, qword [rsp + 0x600]
test rcx, rcx
je 0x1800a0b0c
mov rdx, qword [rsp + 0x68]
call fcn.180079a50
test ebx, ebx
je 0x1800a0b17
mov eax, ebx
jmp 0x1800a06b0
imul rsi, rsi, 0x3d0
lea rbp, [0x1801b3530]
lea rdx, [rsp + 0x1b8]
lea rcx, [rsi + rbp + 0x3a8]
mov r8d, setsockopt
call fcn.180079270
lea rcx, [rsi + rbp + 0x3b8]
lea rdx, [rsp + 0x1c8]
mov r8d, setsockopt
call fcn.180079270
xor edx, edx
lea rcx, [rsp + 0x70]
lea r8d, [rdx + 0x10]
call fcn.1800a0240
mov r11d, dword [rsp + 0xf8]
mov ecx, 6
mov eax, r11d
mov byte [rsp + 0x73], r11b
lea rbx, [rsi + rbp + 0x20]
shr eax, 0x18
mov byte [rsp + 0x70], al
mov eax, r11d
shr eax, 0x10
mov byte [rsp + 0x71], al
mov eax, r11d
shr eax, 8
mov byte [rsp + 0x72], al
call fcn.1800cdb80
lea r8, [rsp + 0x1b8]
lea rdx, [rsp + 0x70]
mov r9d, setsockopt
mov ecx, eax
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], r15d
call fcn.1800cdab0
test eax, eax
jne 0x1800a06ab
mov dword [rsi + rbp + 0x3c8], 1
mov rax, qword [rdi + 0x20]
lea rcx, [rsi + rbp]
mov qword [rcx], rax
mov eax, dword [rdi + 0x2c]
mov dword [rsi + rbp + 8], eax
mov qword [r14], rcx
xor eax, eax
jmp 0x1800a06b0
sub rsp, 0x28
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x40], rsi
mov qword [rdx], 0
mov r9, qword [rcx + 0x20]
lea rbp, [0x1801b3530]
mov qword [rsp + 0x48], rdi
mov rdi, rdx
mov rax, rbp
mov rsi, rcx
xor r8d, r8d
lea rdx, [0x18022d530]
cmp qword [rax], r9
je 0x1800a0f5b
add rax, 0x3d0
inc r8d
cmp rax, rdx
jl 0x1800a0f48
cmp r8d, 0x200
je 0x1800a0fb8
cmp byte [rcx + 0x231], 1
jne 0x1800a1023
movsxd rcx, r8d
imul rcx, rcx, 0x3d0
mov eax, dword [rcx + rbp + 0xc]
cmp dword [rsi + 8], eax
jne 0x1800a0fa1
lea rax, [rcx + rbp]
mov qword [rdi], rax
xor eax, eax
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x38]
add rsp, 0x28
ret
xor ecx, ecx
mov rax, rbp
cmp qword [rax], r9
je 0x1800a0fd6
add rax, 0x3d0
inc ecx
cmp rax, rdx
jl 0x1800a0fa6
mov rdx, rdi
mov rcx, rsi
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x38]
add rsp, 0x28
jmp 0x1800a0570
mov qword [rsp + 0x30], rbx
movsxd rbx, ecx
imul rbx, rbx, 0x3d0
cmp dword [rbx + rbp + 8], 1
jne 0x1800a100b
cmp dword [rbx + rbp + 0x3c8], 0
je 0x1800a100b
lea rcx, [rbx + rbp + 0x20]
call fcn.1800d6020
mov dword [rbx + rbp + 0x3c8], 0
lea rcx, [rbx + rbp]
xor edx, edx
mov r8d, 0x3d0
call fcn.18009ff60
mov rbx, qword [rsp + 0x30]
jmp 0x1800a0fb8
mov rsi, qword [rsp + 0x40]
movsxd rax, r8d
imul rax, rax, 0x3d0
add rax, rbp
mov rbp, qword [rsp + 0x38]
mov qword [rdi], rax
mov rdi, qword [rsp + 0x48]
xor eax, eax
add rsp, 0x28
ret