Function at 0x140140fe0
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x1401f2308]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov rdi, rdx
mov rbx, rcx
test rdx, rdx
jne 0x140141015
lea ecx, [rdx + 0x12]
jmp 0x140141234
mov rax, qword [rdx]
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov rax, qword [rax + 0x10]
call qword [case.0x1400309a4.0]
cmp rax, 0xffffffffffffffff
jne 0x14014103a
mov ecx, gethostbyaddr
jmp 0x140141234
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [case.0x1400309a4.0]
xorps xmm0, xmm0
mov qword [rbx + 8], rax
mov rax, qword [rdi]
lea rdx, [rsp + 0x20]
mov r8d, 0x40
mov rcx, rdi
movups xmmword [rsp + 0x20], xmm0
mov rax, qword [rax + 8]
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm0
call qword [case.0x1400309a4.0]
cmp rax, 0xffffffffffffffff
jne 0x140141090
mov ecx, reloc.WS2_32.dll_send
jmp 0x140141234
cmp rax, 0x40
jne 0x14014122f
mov eax, 0x5a4d
cmp ax, word [rsp + 0x20]
jne 0x14014122f
mov eax, 0xffffffff
cmp qword [rbx + 8], rax
jle 0x1401410bf
mov ecx, gethostbyaddr
jmp 0x140141234
cmp dword [rsp + 0x5c], 0
je 0x14014122f
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [case.0x1400309a4.0]
movsxd rcx, dword [rsp + 0x5c]
cmp rax, rcx
jl 0x14014122f
lfence
mov rax, qword [rdi]
xor r8d, r8d
movsxd rdx, dword [rsp + 0x5c]
mov rcx, rdi
mov rax, qword [rax + 0x10]
call qword [case.0x1400309a4.0]
cmp rax, 0xffffffffffffffff
je 0x140141030
lfence
mov esi, dword [rsp + 0x5c]
lea rcx, [rsp + 0x60]
xor edx, edx
mov r8d, 0x108
call main
mov rax, qword [rdi]
lea rdx, [rsp + 0x60]
mov r8d, 0xf8
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x1400309a4.0]
cmp rax, 0xffffffffffffffff
je 0x140141086
cmp rax, 0xf8
jne 0x14014122f
cmp dword [rsp + 0x60], 0x4550
jne 0x14014122f
xor ecx, ecx
cmp cx, word [rsp + 0x74]
je 0x14014122f
movzx eax, word [rsp + 0x78]
mov edx, 0x10b
cmp dx, ax
jne 0x1401411b5
mov rdx, qword [rbp - 0x42]
movzx eax, dx
shr ax, 0xc
and al, 1
cmp dword [rbp - 0x2c], 5
mov byte [rbx + 0x23], al
jb 0x14014122f
mov eax, dword [rbp - 8]
mov dword [rbx + 0x10], eax
mov eax, dword [rbp - 4]
mov dword [rbx + 0x14], eax
lea eax, [rsi + 0x58]
mov dword [rbx + 0x18], eax
lea eax, [rsi + 0x98]
jmp 0x1401411ed
mov edx, 0x20b
cmp dx, ax
jne 0x14014122b
mov rdx, qword [rbp - 0x42]
movzx eax, dx
shr ax, 0xc
and al, 1
cmp dword [rbp - 0x1c], 5
mov byte [rbx + 0x23], al
jb 0x14014122f
mov eax, dword [rbp + 8]
mov dword [rbx + 0x10], eax
mov eax, dword [rbp + 0xc]
mov dword [rbx + 0x14], eax
lea eax, [rsi + 0x58]
mov dword [rbx + 0x18], eax
lea eax, [rsi + 0xa8]
mov r8, qword [rbp - 0x44]
mov dword [rbx + 0x1c], eax
mov eax, 1
cmp ax, r8w
je 0x14014121b
mov eax, 8
cmp ax, r8w
je 0x14014121b
xor al, al
shr dx, 7
and dl, 1
mov byte [rbx + 0x20], al
mov byte [rbx + 0x21], dl
jmp 0x140141234
mov al, 1
shr dx, 7
and dl, al
mov byte [rbx + 0x20], al
mov byte [rbx + 0x21], dl
jmp 0x140141234
mov word [rbx + 0x20], cx
mov ecx, gethostbyaddr
test ecx, ecx
sete al
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.140160900
mov rbx, qword [rsp + 0x1b0]
add rsp, 0x180
pop rdi
pop rsi
pop rbp
ret