Function at 0x1400751f0
Capabilities:
Enumerate pe sections

Disassembly:
mov dword [rsp + 0x18], r8d
push rbx
push rdi
push r12
sub rsp, 0x70
mov eax, dword [rcx + 0x10]
xor r10d, r10d
test byte [rcx + 0xf8], 2
mov r9d, r8d
mov rdi, rdx
mov dword [rsp + 0x3c], eax
mov rbx, rcx
mov dword [rsp + 0x34], r10d
mov r12d, r10d
je 0x140075245
cmp qword [rcx + 0x108], r10
je 0x140075245
lea r8, str._RI___d_bytes
lea edx, [r10 + 2]
call fcn.140075a30
mov r9d, dword [rsp + 0xa0]
xor r10d, r10d
test rdi, rdi
je 0x140075a1b
cmp r9d, 0x18
jl 0x140075a1b
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r15
mov eax, dword [rbx]
mov ecx, 0x100
movzx r13d, byte [rdi + 7]
sub r9d, 0x18
movzx edx, byte [rdi + 0xb]
movzx ebp, byte [rdi + 0xf]
movzx r15d, byte [rdi + 0x13]
movzx r8d, byte [rdi + 0x17]
movzx r14d, byte [rdi + 4]
mov dword [rsp + 0x38], eax
movzx eax, byte [rdi + 5]
mov byte [rsp + 0x90], al
movzx eax, byte [rdi + 6]
shl edx, 8
shl ebp, 8
shl r15d, 8
shl r8d, 8
movzx ecx, cx
imul r13d, ecx
mov dword [rsp + 0xa0], r9d
add r13w, ax
movzx eax, byte [rdi + 0xa]
add edx, eax
movzx eax, byte [rdi + 9]
shl edx, 8
add edx, eax
movzx eax, byte [rdi + 8]
shl edx, 8
add edx, eax
movzx eax, byte [rdi + 0xe]
add ebp, eax
mov dword [rsp + 0x30], edx
movzx eax, byte [rdi + 0xd]
shl ebp, 8
add ebp, eax
movzx eax, byte [rdi + 0xc]
shl ebp, 8
add ebp, eax
movzx eax, byte [rdi + 0x12]
add r15d, eax
movzx eax, byte [rdi + 0x11]
shl r15d, 8
add r15d, eax
movzx eax, byte [rdi + 0x10]
shl r15d, 8
add r15d, eax
movzx eax, byte [rdi + 0x16]
add r8d, eax
movzx eax, byte [rdi + 0x15]
shl r8d, 8
add r8d, eax
movzx eax, byte [rdi + 0x14]
shl r8d, 8
add r8d, eax
lea rax, [rdi + 0x18]
mov qword [rsp + 0x98], rax
mov dword [rsp + 0xa8], r8d
cmp r9d, r8d
jl 0x140075a14
test r8d, r8d
js 0x140075a14
lea eax, [r14 - 0x51]
cmp al, 3
ja 0x140075a0d
lea rsi, [rbx + 0xa8]
movzx eax, r13w
mov rcx, qword [rsi]
mov dword [rbx + 0x40], eax
cmp rcx, rsi
je 0x1400753da
mov rdi, qword [rcx]
mov eax, r15d
sub eax, dword [rcx + 0x24]
test eax, eax
jle 0x1400753ce
mov rax, qword [rcx + 8]
mov qword [rdi + 8], rax
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rdx], rax
mov rax, qword [0x1403f1028]
mov qword [rcx], r10
mov qword [rcx + 8], r10
test rax, rax
je 0x1400753b8
call rax
jmp 0x1400753bd
call fcn.140018fc0
dec dword [rbx + 0x60]
mov rcx, rdi
mov r10d, 0
cmp rdi, rsi
jne 0x140075382
mov edx, dword [rsp + 0x30]
mov r9d, dword [rsp + 0xa0]
mov r8, qword [rsi]
lea rdi, [rbx + 0x14]
cmp r8, rsi
je 0x1400753ec
mov r11d, dword [r8 + 0x24]
jmp 0x1400753ef
mov r11d, dword [rdi]
mov dword [rbx + 0x10], r11d
cmp r14b, 0x52
jne 0x14007558c
mov r9d, dword [rbx + 0x4c]
sub r9d, edx
js 0x140075495
mov r10d, dword [rbx + 0x2c]
test r10d, r10d
jne 0x140075426
mov eax, r9d
mov dword [rbx + 0x2c], r9d
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov dword [rbx + 0x28], eax
jmp 0x140075470
mov ecx, r9d
sub ecx, r10d
jns 0x140075434
mov ecx, r10d
sub ecx, r9d
mov eax, dword [rbx + 0x28]
lea ecx, [rcx + rax*2]
add eax, ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
mov ecx, eax
mov dword [rbx + 0x28], eax
imul eax, r10d, 7
add eax, r9d
cdq
and edx, 7
add eax, edx
sar eax, 3
mov dword [rbx + 0x2c], eax
mov r9d, eax
cmp eax, 1
jge 0x140075470
mov eax, 1
mov dword [rbx + 0x2c], eax
mov r9d, eax
lea ecx, [rcx*4]
mov eax, 0xea60
cmp dword [rbx + 0x50], ecx
cmovae ecx, dword [rbx + 0x50]
add ecx, r9d
cmp dword [rbx + 0x34], ecx
cmovae ecx, dword [rbx + 0x34]
cmp ecx, eax
cmovbe eax, ecx
mov dword [rbx + 0x30], eax
cmp ebp, r11d
js 0x1400754f4
cmp ebp, dword [rdi]
jns 0x1400754f4
cmp r8, rsi
je 0x1400754f4
cmp ebp, dword [r8 + 0x24]
je 0x1400754b5
js 0x1400754f4
mov r8, qword [r8]
cmp r8, rsi
jne 0x1400754a3
jmp 0x1400754f4
mov rdx, qword [r8]
mov rcx, r8
mov rax, qword [r8 + 8]
mov qword [rdx + 8], rax
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
mov qword [rdx], rax
mov rax, qword [0x1403f1028]
mov qword [r8], 0
mov qword [r8 + 8], 0
test rax, rax
je 0x1400754ec
call rax
jmp 0x1400754f1
call fcn.140018fc0
dec dword [rbx + 0x60]
mov rax, qword [rsi]
cmp rax, rsi
je 0x140075500
lea rdi, [rax + 0x24]
cmp dword [rsp + 0x34], 0
mov eax, dword [rdi]
mov dword [rbx + 0x10], eax
jne 0x140075519
mov dword [rsp + 0x34], 1
mov r12d, ebp
jmp 0x140075524
mov eax, ebp
sub eax, r12d
test eax, eax
cmovg r12d, ebp
mov edx, 0x20
mov rcx, rbx
call fcn.1400747d0
test eax, eax
je 0x140075559
mov ecx, dword [rbx + 0x4c]
lea r8, str.input_ack:_sn_lu_rtt_ld_rto_ld
sub ecx, dword [rsp + 0x30]
mov r9d, ebp
mov eax, dword [rbx + 0x30]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov rcx, rbx
call fcn.140075a30
mov r14d, dword [rsp + 0xa8]
mov r9d, dword [rsp + 0xa0]
mov rdi, qword [rsp + 0x98]
sub r9d, r14d
mov eax, r14d
add rdi, rax
cmp r9d, 0x18
jl 0x140075903
xor r10d, r10d
jmp 0x140075271
cmp r14b, 0x51
jne 0x140075886
test byte [rbx + 0xf8], 0x10
je 0x1400755c4
cmp qword [rbx + 0x108], 0
je 0x1400755c4
mov dword [rsp + 0x20], edx
lea r8, str.input_psh:_sn_lu_ts_lu
mov edx, reloc.WS2_32.dll_recv
mov r9d, ebp
mov rcx, rbx
call fcn.140075a30
mov eax, ebp
sub eax, dword [rbx + 0x3c]
cmp eax, dword [rbx + 0x18]
jns 0x140075559
mov eax, dword [rbx + 0xd0]
inc eax
cmp eax, dword [rbx + 0xd4]
jbe 0x1400756ab
mov esi, 8
cmp eax, esi
jbe 0x1400755f6
nop dword [rax + rax]
add esi, esi
cmp esi, eax
jb 0x1400755f0
mov rax, qword [0x1403f1020]
mov ecx, esi
shl rcx, 3
test rax, rax
je 0x14007560c
call rax
jmp 0x140075611
call fcn.14001a500
mov r14, rax
test rax, rax
je 0x140075a29
lea rdi, [rbx + 0xc8]
cmp qword [rdi], 0
je 0x1400756a0
xor r9d, r9d
cmp dword [rbx + 0xd0], r9d
jbe 0x14007567f
nop word [rax + rax]
mov rax, qword [rdi]
lea r8d, [r9 + r9]
lea rdx, [r8*4]
inc r9d
mov ecx, dword [rdx + rax]
lea eax, [r8 + 1]
mov dword [rdx + r14], ecx
lea rdx, [rax*4]
mov rax, qword [rdi]
mov ecx, dword [rdx + rax]
mov dword [rdx + r14], ecx
cmp r9d, dword [rbx + 0xd0]
jb 0x140075640
lea rdi, [rbx + 0xc8]
mov rax, qword [0x1403f1028]
mov rcx, qword [rdi]
test rax, rax
je 0x14007569b
call rax
mov qword [rdi], r14
mov dword [rbx + 0xd4], esi
jmp 0x1400756b2
call fcn.140018fc0
mov qword [rdi], r14
mov dword [rbx + 0xd4], esi
jmp 0x1400756b2
lea rdi, [rbx + 0xc8]
mov eax, dword [rbx + 0xd0]
mov esi, dword [rsp + 0x30]
lea ecx, [rax + rax]
mov rax, qword [rdi]
mov dword [rax + rcx*4], ebp
mov dword [rax + rcx*4 + 4], esi
inc dword [rbx + 0xd0]
cmp ebp, dword [rbx + 0x18]
js 0x140075559
mov r14d, dword [rsp + 0xa8]
mov rax, qword [0x1403f1020]
movsxd rcx, r14d
add rcx, 0x48
test rax, rax
je 0x1400756f7
call rax
jmp 0x1400756fc
call fcn.14001a500
mov rdi, rax
mov eax, dword [rsp + 0x38]
mov dword [rdi + 0x10], eax
movzx eax, byte [rsp + 0x90]
mov dword [rdi + 0x18], eax
movzx eax, r13w
mov dword [rdi + 0x1c], eax
mov dword [rdi + 0x14], 0x51
mov dword [rdi + 0x20], esi
mov dword [rdi + 0x24], ebp
mov dword [rdi + 0x28], r15d
mov dword [rdi + 0x2c], r14d
test r14d, r14d
je 0x140075746
mov rdx, qword [rsp + 0x98]
lea rcx, [rdi + 0x40]
mov r8, r14
call fcn.14027dfb0
mov r8d, dword [rdi + 0x24]
mov eax, r8d
sub eax, dword [rbx + 0x3c]
mov ecx, dword [rbx + 0x18]
cmp eax, ecx
jns 0x140075866
cmp r8d, ecx
js 0x140075866
mov rcx, qword [rbx + 0xc0]
lea r9, [rbx + 0xb8]
cmp rcx, r9
je 0x14007579e
nop word [rax + rax]
mov edx, dword [rcx + 0x24]
cmp edx, r8d
je 0x140075846
mov eax, r8d
sub eax, edx
test eax, eax
jg 0x14007579e
mov rcx, qword [rcx + 8]
cmp rcx, r9
jne 0x140075780
mov qword [rdi], rdi
mov qword [rdi + 8], rcx
mov rax, qword [rcx]
mov qword [rdi], rax
mov rax, qword [rcx]
mov qword [rax + 8], rdi
mov qword [rcx], rdi
inc dword [rbx + 0x5c]
mov rdx, qword [rbx + 0xb8]
lea r8, [rbx + 0xb8]
cmp r8, rdx
je 0x140075561
nop
mov eax, dword [rbx + 0x18]
cmp dword [rdx + 0x24], eax
jne 0x140075561
mov eax, dword [rbx + 0x3c]
cmp dword [rbx + 0x64], eax
jae 0x140075561
mov rcx, qword [rdx]
mov rax, qword [rdx + 8]
mov qword [rcx + 8], rax
mov rax, qword [rdx]
mov rcx, qword [rdx + 8]
mov qword [rcx], rax
xor eax, eax
mov qword [rdx], rax
mov qword [rdx + 8], rax
mov rax, qword [rbx + 0xa0]
dec dword [rbx + 0x5c]
mov qword [rdx + 8], rax
lea rax, [rbx + 0x98]
mov qword [rdx], rax
mov rax, qword [rbx + 0xa0]
mov qword [rax], rdx
inc dword [rbx + 0x64]
inc dword [rbx + 0x18]
mov qword [rbx + 0xa0], rdx
mov rdx, qword [rbx + 0xb8]
cmp r8, rdx
jne 0x1400757d0
jmp 0x140075561
mov rax, qword [0x1403f1028]
mov rcx, rdi
test rax, rax
je 0x14007585c
call rax
jmp 0x1400757b8
call fcn.140018fc0
jmp 0x1400757b8
mov rax, qword [0x1403f1028]
mov rcx, rdi
test rax, rax
je 0x14007587c
call rax
jmp 0x140075561
call fcn.140018fc0
jmp 0x140075561
cmp r14b, 0x53
jne 0x1400758bc
or dword [rbx + 0x48], 2
test byte [rbx + 0xf8], 0x40
je 0x1400758f6
cmp qword [rbx + 0x108], 0
je 0x1400758f6
lea r8, str.input_probe
mov edx, 0x40
mov rcx, rbx
call fcn.140075a30
jmp 0x140075559
cmp r14b, 0x54
jne 0x140075a0d
test byte [rbx + 0xf8], 0x80
je 0x1400758f6
cmp qword [rbx + 0x108], 0
je 0x1400758f6
movzx r9d, r13w
lea r8, str.input_wins:__lu
mov edx, 0x80
mov rcx, rbx
call fcn.140075a30
jmp 0x140075559
mov r14d, dword [rsp + 0xa8]
jmp 0x140075569
cmp dword [rsp + 0x34], 0
je 0x14007593b
cmp r12d, dword [rbx + 0x10]
js 0x14007593b
cmp r12d, dword [rbx + 0x14]
jns 0x14007593b
lea r9, [rbx + 0xa8]
mov rcx, qword [r9]
cmp rcx, r9
je 0x14007593b
cmp r12d, dword [rcx + 0x24]
mov r8, qword [rcx]
js 0x14007593b
je 0x140075933
inc dword [rcx + 0x38]
mov rcx, r8
cmp r8, r9
jne 0x140075925
mov eax, dword [rbx + 0x10]
sub eax, dword [rsp + 0x3c]
test eax, eax
jle 0x1400759e9
mov r9d, dword [rbx + 0x44]
lea r10, [rbx + 0x44]
mov r11d, dword [rbx + 0x40]
cmp r9d, r11d
jae 0x1400759e9
mov r8d, dword [rbx + 8]
mov edi, dword [rbx + 0x80]
cmp r9d, dword [rbx + 0x24]
jae 0x140075981
inc r9d
lea eax, [rdi + r8]
mov dword [r10], r9d
mov dword [rbx + 0x80], eax
jmp 0x1400759d6
mov rsi, r10
cmp edi, r8d
jae 0x140075990
mov edi, r8d
lea rsi, [rbx + 0x44]
xor edx, edx
mov eax, r8d
imul eax, r8d
div edi
mov edx, r8d
add eax, edi
shr edx, 4
add edx, eax
lea eax, [r9 + 1]
imul eax, r8d
mov dword [rbx + 0x80], edx
cmp eax, edx
ja 0x1400759d6
lea eax, [r8 - 1]
mov ecx, 1
add eax, edx
test r8d, r8d
cmovne ecx, r8d
xor edx, edx
div ecx
mov dword [r10], eax
mov r9d, eax
mov r10, rsi
cmp r9d, r11d
jbe 0x1400759e9
mov dword [r10], r11d
imul r11d, r8d
mov dword [rbx + 0x80], r11d
xor eax, eax
mov r14, qword [rsp + 0x50]
mov r13, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
add rsp, 0x70
pop r12
pop rdi
pop rbx
ret
mov eax, 0xfffffffd
jmp 0x1400759eb
mov eax, 0xfffffffe
jmp 0x1400759eb
mov eax, 0xffffffff
add rsp, 0x70
pop r12
pop rdi
pop rbx
ret
call fcn.14025c5b0
int3