Function at 0x1800024d0
Capabilities:
Access peb ldr_data
Parse pe header
Resolve function by hash
Resolve function by parsing pe exports

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x28
xor ebp, ebp
mov r13d, ebp
mov r12d, ebp
mov qword [rsp + 0x80], rbp
mov r14d, ebp
mov esi, ebp
mov qword [rsp + 0x70], rbp
mov r15d, ebp
call fcn.1800024c4
lea r9d, [rbp + 1]
mov rbx, rax
mov eax, 0x5a4d
cmp word [rbx], ax
jne 0x18000252e
movsxd rdx, dword [rbx + 0x3c]
lea rcx, [rdx - 0x40]
cmp rcx, 0x3bf
ja 0x18000252e
cmp dword [rdx + rbx], 0x4550
je 0x180002533
sub rbx, r9
jmp 0x18000250a
mov rax, qword gs:[0x60]
mov qword [rsp + 0x88], rbx
mov rcx, qword [rax + 0x18]
mov rdi, qword [rcx + 0x20]
mov qword [rsp + 0x78], rdi
test rdi, rdi
je 0x18000275d
mov ebx, 4
mov r10d, 0xffff
mov rdx, qword [rdi + 0x50]
movzx r8d, word [rdi + 0x48]
mov rcx, rbp
ror ecx, 0xd
cmp byte [rdx], 0x61
jb 0x180002583
movzx eax, byte [rdx]
sub eax, 0x20
cdqe
jmp 0x180002586
movzx eax, byte [rdx]
add rcx, rax
add rdx, r9
add r8w, r10w
jne 0x180002571
cmp ecx, 0x6a4abc5b
jne 0x18000267d
mov rdx, qword [rdi + 0x20]
movzx esi, bx
mov ebx, 0xffff
movsxd rax, dword [rdx + 0x3c]
mov ebp, dword [rax + rdx + 0x88]
mov r10d, dword [rbp + rdx + 0x20]
mov r11d, dword [rbp + rdx + 0x24]
add r10, rdx
add r11, rdx
xor r9d, r9d
lea edi, [r9 + 2]
mov r8d, dword [r10]
mov ecx, r9d
add r8, rdx
mov al, byte [r8]
ror ecx, 0xd
movsx eax, al
inc r8
add ecx, eax
mov al, byte [r8]
test al, al
jne 0x1800025d8
cmp ecx, 0xec0e4e8e
je 0x18000260a
cmp ecx, 0x7c0dfcaa
je 0x18000260a
cmp ecx, 0x91afca54
je 0x18000260a
cmp ecx, 0xef632f2
jne 0x18000265e
mov eax, dword [rbp + rdx + 0x1c]
movzx r8d, word [r11]
lea r9, [rdx + rax]
cmp ecx, 0xec0e4e8e
jne 0x180002627
mov r13d, dword [r9 + r8*4]
add r13, rdx
jmp 0x180002658
cmp ecx, 0x7c0dfcaa
jne 0x180002638
mov r12d, dword [r9 + r8*4]
add r12, rdx
jmp 0x180002658
cmp ecx, 0x91afca54
jne 0x180002649
mov r14d, dword [r9 + r8*4]
add r14, rdx
jmp 0x180002658
cmp ecx, 0xef632f2
jne 0x180002658
mov r15d, dword [r9 + r8*4]
add r15, rdx
add si, bx
xor r9d, r9d
add r10, 4
add r11, rdi
test si, si
jne 0x1800025cc
mov qword [rsp + 0x80], r12
xor ebp, ebp
jmp 0x180002711
cmp ecx, 0x3cfa685d
jne 0x18000272b
mov r8, qword [rdi + 0x20]
mov r12d, 1
mov ebx, 0xffff
movsxd rax, dword [r8 + 0x3c]
movzx esi, r12w
lea edi, [r12 + 1]
mov r11d, dword [rax + r8 + 0x88]
mov r9d, dword [r11 + r8 + 0x20]
mov r10d, dword [r11 + r8 + 0x24]
add r9, r8
add r10, r8
mov ecx, dword [r9]
mov edx, ebp
add rcx, r8
mov al, byte [rcx]
ror edx, 0xd
movsx eax, al
add rcx, r12
add edx, eax
mov al, byte [rcx]
test al, al
jne 0x1800026c7
cmp edx, 0x534c0ab8
jne 0x1800026fd
mov eax, dword [r11 + r8 + 0x1c]
movzx edx, word [r10]
add si, bx
lea rcx, [r8 + rax]
mov ebp, dword [rcx + rdx*4]
add rbp, r8
mov qword [rsp + 0x70], rbp
xor ebp, ebp
add r9, 4
add r10, rdi
test si, si
jne 0x1800026bd
mov r12, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov r9d, 1
lea ebx, [r9 + 3]
mov r10d, 0xffff
test r13, r13
je 0x180002744
test r12, r12
je 0x180002744
test r14, r14
je 0x180002744
test r15, r15
je 0x180002744
test rsi, rsi
jne 0x180002755
mov rdi, qword [rdi]
mov qword [rsp + 0x78], rdi
test rdi, rdi
jne 0x180002565
mov rbx, qword [rsp + 0x88]
movsxd rsi, dword [rbx + 0x3c]
xor ecx, ecx
mov r8d, 0x3000
add rsi, rbx
lea r9d, [rcx + 0x40]
mov edx, dword [rsi + 0x50]
call r14
mov edx, dword [rsi + 0x50]
mov rcx, rax
mov rdi, rax
call r15
mov edx, dword [rsi + 0x54]
mov rcx, rbx
mov r11d, 1
test rdx, rdx
je 0x1800027a7
mov r8, rdi
sub r8, rbx
mov al, byte [rcx]
mov byte [r8 + rcx], al
add rcx, r11
sub rdx, r11
jne 0x180002799
movzx r9d, word [rsi + 6]
movzx eax, word [rsi + 0x14]
test r9, r9
je 0x1800027ed
lea rcx, [rsi + 0x2c]
add rcx, rax
mov edx, dword [rcx - 8]
mov r8d, dword [rcx]
mov r10d, dword [rcx - 4]
add rdx, rdi
add r8, rbx
sub r9, r11
test r10, r10
je 0x1800027e4
mov al, byte [r8]
add r8, r11
mov byte [rdx], al
add rdx, r11
sub r10, r11
jne 0x1800027d4
add rcx, 0x28
test r9, r9
jne 0x1800027bc
mov ebx, dword [rsi + 0x90]
add rbx, rdi
cmp dword [rbx], ebp
je 0x180002899
mov rbp, qword [rsp + 0x80]
mov ecx, dword [rbx + 0xc]
add rcx, rdi
call r13
mov r12, rax
xor eax, eax
test r12, r12
je 0x18000288b
mov r15d, dword [rbx]
mov r14d, dword [rbx + 0x10]
add r15, rdi
add r14, rdi
jmp 0x180002886
test r15, r15
je 0x180002865
movabs rax, 0x8000000000000000
test qword [r15], rax
je 0x180002865
movsxd rax, dword [r12 + 0x3c]
movzx edx, word [r15]
mov ecx, dword [rax + r12 + 0x88]
mov eax, dword [rcx + r12 + 0x10]
mov ecx, dword [rcx + r12 + 0x1c]
add rcx, r12
sub rdx, rax
mov eax, dword [rcx + rdx*4]
add rax, r12
jmp 0x180002874
mov rdx, qword [r14]
mov rcx, r12
add rdx, 2
add rdx, rdi
call rbp
mov qword [r14], rax
add r14, 8
xor eax, eax
test r15, r15
je 0x180002886
add r15, 8
cmp qword [r14], rax
jne 0x180002828
add rbx, 0x14
cmp dword [rbx], eax
jne 0x180002806
xor ebp, ebp
mov eax, dword [rsi + 0xb4]
mov r9, rdi
sub r9, qword [rsi + 0x30]
test eax, eax
je 0x18000295d
mov r8d, dword [rsi + 0xb0]
mov r11d, eax
add r8, rdi
test eax, eax
je 0x18000295d
mov r14d, 0xfff
mov r12d, 2
cmp dword [r8 + 4], ebp
je 0x18000295d
mov r10d, dword [r8 + 4]
mov edx, dword [r8]
lea rbx, [r8 + 8]
sub r10, 8
add rdx, rdi
shr r10, 1
je 0x18000294d
mov r15d, 1
movzx ecx, word [rbx]
sub r10, r15
movzx eax, cx
shr ax, 0xc
cmp ax, 0xa
jne 0x180002912
and rcx, r14
add qword [rcx + rdx], r9
jmp 0x180002945
cmp ax, 3
jne 0x180002921
and rcx, r14
add dword [rcx + rdx], r9d
jmp 0x180002945
cmp ax, r15w
jne 0x180002937
mov rax, r9
and rcx, r14
shr rax, 0x10
add word [rcx + rdx], ax
jmp 0x180002945
cmp ax, r12w
jne 0x180002945
and rcx, r14
add word [rcx + rdx], r9w
add rbx, r12
test r10, r10
jne 0x1800028f6
mov eax, dword [r8 + 4]
add r8, rax
sub r11, rax
jne 0x1800028cf
mov ebx, dword [rsi + 0x28]
xor r8d, r8d
xor edx, edx
or rcx, 0xffffffffffffffff
add rbx, rdi
call qword [rsp + reloc.WS2_32.dll_WSASetLastError]
xor r8d, r8d
mov rcx, rdi
lea edx, [r8 + 1]
call rbx
mov rax, rbx
add rsp, 0x28
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret