Function at 0x140007ae0
Capabilities:
Parse pe header

Disassembly:
push rbp
push rsi
push rdi
mov rbp, rsp
mov eax, 0x50
call fcn.14012a170
sub rsp, rax
mov rdi, rcx
lea esi, [rax - 0x4d]
call qword [0x1401cf6e8]
test eax, eax
je 0x140007b0e
mov eax, esi
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x48], r12
xor r12d, r12d
mov qword [rsp + 0x40], r13
cmp dword [rdi], r12d
jle 0x14000864e
lea r13, [rdi + 8]
nop dword [rax]
lea rcx, [rbp + 0x28]
mov edx, r12d
call qword [0x1401cf6d8]
test eax, eax
jne 0x14000866c
cmp qword [r13], 0
je 0x140008667
mov rcx, qword [r13]
mov eax, dword [rbp + 0x28]
xor edx, edx
mov dword [rcx], eax
mov rax, qword [r13]
mov r8d, 0x2a8
mov dword [rax + 0x40], r12d
mov rbx, qword [r13]
lea rcx, [rbx + 0x48]
call sub.MSVCR120.dll_memset
lea rdx, [0x140007a50]
lea rcx, [0x1401d0700]
call fcn.14000d1b0
mov r11, qword [0x1401d06f8]
mov rcx, qword [r13]
mov rax, qword [r11 + 0x38]
mov edx, dword [rbp + 0x28]
add rcx, 8
call qword [rax + reloc.WS2_32.dll_recv]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x48]
mov edx, 0x100
call qword [0x1401cf6f8]
test eax, eax
jne 0x14000866c
mov edx, dword [rbp + 0x28]
lea rcx, [rbx + 0x148]
call qword [0x1401cf708]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x190]
lea edx, [rax + 0x4b]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x194]
lea edx, [rax + 0x4c]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1a8]
lea edx, [rax + 0xf]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x280]
lea edx, [rax + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1ac]
lea edx, [rax + 0x10]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1b0]
lea edx, [rax + 0x11]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1b4]
lea edx, [rax + 0x12]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1b8]
lea edx, [rax + 0x13]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1c0]
lea edx, [rax + 0x15]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1c4]
lea edx, [rax + 0x4d]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1c8]
lea edx, [rax + 0x45]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1cc]
lea edx, [rax + 0x16]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1d0]
lea edx, [rax + 0x17]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1d4]
lea edx, [rax + 0x49]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1d8]
lea edx, [rax + 0x4a]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1dc]
lea edx, [rax + 0x46]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1e0]
lea edx, [rax + 0x47]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1e4]
lea edx, [rax + 0x48]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1e8]
lea edx, [rax + 0x2d]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1ec]
lea edx, [rax + 0x2e]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1f0]
lea edx, [rax + 0x18]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1f4]
lea edx, [rax + 0x19]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1f8]
lea edx, [rax + 0x1a]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x1fc]
lea edx, [rax + 0x2f]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x200]
lea edx, [rax + 0x30]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x204]
lea edx, [rax + 0x31]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x208]
lea edx, [rax + 0x34]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x20c]
lea edx, [rax + 0x2a]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x210]
lea edx, [rax + 0x2b]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x214]
lea edx, [rax + 0x1b]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x218]
lea edx, [rax + 0x1c]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x21c]
lea edx, [rax + 0x1d]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x220]
lea edx, [rax + 0x35]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x224]
lea edx, [rax + 0x36]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x228]
lea edx, [rax + 0x37]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x22c]
lea edx, [rax + 0x38]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x230]
lea edx, [rax + 0x39]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x234]
lea edx, [rax + 0x3a]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x238]
lea edx, [rax + 0x3b]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x23c]
lea edx, [rax + 0x3c]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x240]
lea edx, [rax + 0x3d]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x244]
lea edx, [rax + 0x3e]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x248]
lea edx, [rax + 0x3f]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x24c]
lea edx, [rax + 0x40]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x250]
lea edx, [rax + 0x41]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x254]
lea edx, [rax + 0x42]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x258]
lea edx, [rax + 0x43]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x25c]
lea edx, [rax + 0x44]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x268]
lea edx, [rax + 0x1f]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x26c]
lea edx, [rax + 0x20]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x270]
lea edx, [rax + 0x21]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x274]
lea edx, [rax + 0x22]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x278]
lea edx, [rax + 0x32]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x27c]
lea edx, [rax + 0x23]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x284]
lea edx, [rax + 0x29]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x288]
lea edx, [rax + 0x24]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x28c]
lea edx, [rax + 0x25]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x290]
lea edx, [rax + 0x26]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x294]
lea edx, [rax + 0x27]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea edx, [rax + 0x1e]
lea rcx, [rbp + 0x30]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
movsxd rax, dword [rbp + 0x30]
lea rcx, [rbp + 0x38]
mov edx, 0x33
mov qword [rbx + 0x260], rax
mov r8d, dword [rbp + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
movsxd rax, dword [rbp + 0x38]
lea rcx, [rbp - 0x30]
mov edx, 8
mov qword [rbx + 0x1a0], rax
mov r8d, dword [rbp + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
movsxd rax, dword [rbp - 0x30]
lea rcx, [rbp - 0x2c]
mov edx, 0x51
mov qword [rbx + 0x150], rax
mov r8d, dword [rbp + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
movsxd rax, dword [rbp - 0x2c]
lea rcx, [rbx + 0x158]
mov edx, recv
mov qword [rbx + 0x2a8], rax
mov r8d, dword [rbp + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2b0]
lea edx, [rax + 0x52]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x15c]
lea edx, [rax + 0xa]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea edx, [rax + 0xb]
lea rcx, [rbp - 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
movsxd rax, dword [rbp - 0x28]
lea rcx, [rbx + 0x168]
mov edx, 1
mov qword [rbx + 0x160], rax
mov r8d, dword [rbp + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x16c]
lea edx, [rax + 2]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x170]
mov edx, esi
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x174]
lea edx, [rax + 4]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x178]
lea edx, [rax + 5]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x17c]
lea edx, [rax + 6]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x180]
lea edx, [rax + 7]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea edx, [rax + 9]
lea rcx, [rbp - 0x24]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
movsxd rax, dword [rbp - 0x24]
lea rcx, [rbx + 0x184]
mov edx, recv
mov qword [rbx + 0x188], rax
mov r8d, dword [rbp + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea edx, [rax + 0xe]
lea rcx, [rbp - 0x20]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
movsxd rax, dword [rbp - 0x20]
lea rcx, [rbx + 0x298]
mov edx, 0x4e
mov qword [rbx + 0x198], rax
mov r8d, dword [rbp + 0x28]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x29c]
lea edx, [rax + 0x4f]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2a0]
lea edx, [rax + 0x50]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2b4]
lea edx, [rax + 0x53]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2b8]
lea edx, [rax + 0x54]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2bc]
lea edx, [rax + 0x55]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2c0]
lea edx, [rax + 0x56]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2c4]
lea edx, [rax + 0x57]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2c8]
lea edx, [rax + 0x58]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2cc]
lea edx, [rax + 0x59]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2d0]
lea edx, [rax + 0x5a]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2d4]
lea edx, [rax + 0x5b]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2d8]
lea edx, [rax + 0x5f]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2dc]
lea edx, [rax + 0x60]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2e8]
lea edx, [rax + 0x64]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
mov r8d, dword [rbp + 0x28]
lea rcx, [rbx + 0x2ec]
lea edx, [rax + 0x65]
call qword [0x1401cf718]
test eax, eax
jne 0x14000866c
inc r12d
add r13, 8
cmp r12d, dword [rdi]
jl 0x140007b30
xor eax, eax
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x70]
mov r13, qword [rsp + 0x40]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
mov esi, 2
mov dword [rdi], 0
mov eax, esi
jmp 0x140008650