Function at 0x140003544
Capabilities:
Read file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x130
lea rbp, [rsp + 0x20]
mov qword [rbp + 0x160], rbx
mov rax, qword [0x1402ccee0]
xor rax, rbp
mov qword [rbp + 0x100], rax
mov r12, rdx
mov qword [rbp + 0x10], rdx
mov rdx, rcx
lea r8, [0x1402311c0]
xor ebx, ebx
lea rcx, [rbp]
mov qword [rbp], rbx
call fcn.1401acfe0
mov rcx, qword [rbp]
test rcx, rcx
jne 0x1400035a5
lea eax, [rbx + 1]
jmp 0x1400038c0
xor r8d, r8d
mov dword [rbp + 8], ebx
xor edx, edx
call fcn.1401a8f2c
mov r9, qword [rbp]
lea rsi, [0x1402cffc0]
mov r8d, 2
mov rcx, rsi
lea r14d, [r8 - 1]
mov edx, r14d
call fcn.1401ae3cc
movzx ecx, word [0x1402cffc0]
call qword [sym.imp.WS2_32.dll_ntohs]
mov ecx, 0x4d5a
cmp ax, cx
jne 0x1400038b2
mov rcx, qword [rbp]
lea edx, [r14 + 0x3b]
xor r8d, r8d
call fcn.1401a8f2c
mov r9, qword [rbp]
lea r8d, [r14 + 3]
mov edx, r14d
lea rcx, [rbp + 8]
call fcn.1401ae3cc
mov edx, dword [rbp + 8]
xor r8d, r8d
mov rcx, qword [rbp]
call fcn.1401a8f2c
mov r13d, dword [rbp + 8]
lea r8d, [r14 + 0x17]
mov r9, qword [rbp]
mov edx, r14d
mov rcx, rsi
add r13d, 0x58
call fcn.1401ae3cc
cmp dword [0x1402cffc0], 0x4550
jne 0x1400038b2
movzx edx, word [0x1402cffd4]
lea rax, [rdx + 0x38]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140003669
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1401a62f0
sub rsp, rcx
mov r9d, r14d
mov r8d, 8
lea rcx, [rsp + 0x20]
call fcn.140079034
mov rdi, rax
mov rdx, r14
add rax, 8
mov rcx, rdi
mov r8, qword [rdi - 0x18]
mov qword [rdi], rax
mov r9, qword [rbp]
call fcn.1401ae3cc
movzx eax, word [rdi]
cmp eax, 0x10b
je 0x1400036d7
cmp eax, 0x20b
jne 0x1400038b2
mov eax, dword [rdi + 0x90]
mov edi, ebx
mov r15d, dword [rbp + 8]
test eax, eax
cmovne edi, eax
add r15d, 0xa8
jmp 0x1400036ef
mov eax, dword [rdi + 0x80]
mov edi, ebx
mov r15d, dword [rbp + 8]
test eax, eax
cmovne edi, eax
add r15d, 0x98
test edi, edi
jne 0x14000378e
mov rcx, qword [rbp]
lea edx, [rdi - 0x10]
lea r8d, [rdi + 2]
mov dword [rbp + 0xc], ebx
call fcn.1401a8f2c
mov r9, qword [rbp]
lea r8d, [rdi + 0x10]
mov rdx, r14
mov rcx, rsi
call fcn.1401ae3cc
mov rax, qword [0x1402cffc0]
cmp rax, qword [0x1402cda60]
jne 0x140003783
mov rax, qword [0x1402cffc8]
cmp rax, qword [0x1402cda68]
jne 0x140003783
mov rcx, qword [rbp]
lea edx, [rdi - 0x14]
mov r8d, r14d
call fcn.1401a8f2c
mov r9, qword [rbp]
lea r8d, [rdi + 4]
mov rdx, r14
lea rcx, [rbp + 0xc]
call fcn.1401ae3cc
mov ecx, dword [rbp + 0xc]
call qword [sym.imp.WS2_32.dll_ntohl]
mov rcx, qword [rbp]
mov dword [rbp + 0xc], eax
call fcn.1401a893c
mov edi, eax
mov eax, 0xfffffffc
sub eax, dword [rbp + 0xc]
add edi, eax
jmp 0x14000378e
mov rcx, qword [rbp]
call fcn.1401a893c
mov edi, eax
lea rcx, [rbp + 0x20]
call fcn.14009a890
mov rcx, qword [rbp]
xor r8d, r8d
xor edx, edx
mov esi, edi
call fcn.1401a8f2c
test r13d, r13d
je 0x140003829
mov r9, qword [rbp]
lea r8d, [r13 + 4]
mov rdx, r14
lea rcx, [0x1402cffc0]
call fcn.1401ae3cc
lea rcx, [0x1402cffc0]
mov r8, rax
mov dword [r13 + rcx], ebx
mov rdx, rcx
lea rcx, [rbp + 0x20]
mov r12, rax
call fcn.14009a920
test edi, edi
je 0x1400037e8
sub esi, r12d
mov r9, qword [rbp]
sub r15d, r13d
lea r13, [0x1402cffc0]
mov rdx, r14
mov rcx, r13
lea r8d, [r15 + 4]
call fcn.1401ae3cc
mov r8, rax
lea rcx, [rbp + 0x20]
mov rdx, r13
mov r15, rax
mov qword [rax + r13 - 8], rbx
call fcn.14009a920
mov r12, qword [rbp + 0x10]
test edi, edi
je 0x140003830
sub esi, r15d
jmp 0x140003830
lea r13, [0x1402cffc0]
mov r9, qword [rbp]
mov eax, 0x1000
cmp esi, eax
mov r8d, esi
mov rdx, r14
mov rcx, r13
cmova r8d, eax
test edi, edi
cmove r8d, eax
call fcn.1401ae3cc
mov r15, rax
test rax, rax
je 0x1400038a4
mov r12d, 0x1000
mov r8, r15
lea rcx, [rbp + 0x20]
mov rdx, r13
call fcn.14009a920
test edi, edi
je 0x140003879
sub esi, r15d
je 0x1400038a0
mov r9, qword [rbp]
cmp esi, r12d
mov r8d, esi
mov rdx, r14
cmova r8, r12
mov rcx, r13
test edi, edi
cmove r8, r12
call fcn.1401ae3cc
mov r15, rax
test rax, rax
jne 0x140003861
mov r12, qword [rbp + 0x10]
lea rdx, [rbp + 0x20]
mov rcx, r12
call fcn.14009a870
jmp 0x1400038b5
mov ebx, r14d
mov rcx, qword [rbp]
call fcn.1401a8b70
mov eax, ebx
mov rcx, qword [rbp + 0x100]
xor rcx, rbp
call fcn.1401a5d00
mov rbx, qword [rbp + 0x160]
lea rsp, [rbp + 0x110]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret