Function at 0x444f80
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x268
xor eax, eax
test r8, r8
mov qword [rsp + 0x2b0], rcx
mov qword [rsp + 0x2b8], rdx
mov rbp, r8
mov rbx, r9
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x58], 0
mov qword [rdx], 0
je 0x445206
call fcn.00443fd0
mov rdi, rax
mov qword [rsp + 0x30], rax
mov eax, 0x1b
test rdi, rdi
je 0x445206
lea r9, str.Content_Type:_multipart_form_data
test rbx, rbx
lea r8, str._s__boundary_s_r_n
mov qword [rsp + 0x20], rdi
cmovne r9, rbx
lea rbx, [rsp + 0x48]
xor edx, edx
mov rcx, rbx
call fcn.00444150
test eax, eax
jne 0x44521a
mov rax, qword [rsp + 0x48]
lea rsi, [rsp + 0x58]
lea r13, [rsp + 0x60]
xor r14d, r14d
mov qword [rsp + 0x50], rax
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
mov qword [rsp + 0x38], rax
nop dword [rax]
cmp qword [rsp + 0x58], 0
je 0x445065
lea r8, [0x00470911]
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov r9, qword [rsp + 0x30]
lea r8, str.___s_r_n
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
lea r8, str.Content_Disposition:_form_data__name_
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
movsxd r9, dword [rbp + 0x10]
mov r8, qword [rbp + 8]
xor edx, edx
mov qword [rsp + 0x20], rsi
mov rcx, rbx
call fcn.00444000
test eax, eax
mov r15d, eax
jne 0x4451da
lea r8, [0x0047093f]
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov rax, qword [rbp + 0x48]
test rax, rax
je 0x44513a
test r14, r14
je 0x4450fd
mov rax, qword [0x00474c20]
mov rcx, r14
call qword [rax]
mov rcx, qword [rsp + 0x2b0]
call fcn.00443fd0
test rax, rax
mov r14, rax
je 0x445400
lea r8, str._r_nContent_Type:_multipart_mixed__boundary_s_r_n
mov r9, rax
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov rax, qword [rbp + 0x48]
test rax, rax
mov rdi, rbp
je 0x4452a6
nop word cs:[rax + rax]
lea r8, str._r_n___s_r_nContent_Disposition:_attachment
mov r9, r14
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov rdx, qword [rdi + 0x58]
mov rcx, qword [rdi + 0x18]
mov r9, rsi
mov r8, rbx
call fcn.00444250
test eax, eax
mov r15d, eax
jne 0x4451da
mov r9, qword [rdi + 0x38]
test r9, r9
je 0x4451a8
lea r8, str._r_nContent_Type:__s
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov r12, qword [rdi + 0x40]
test r12, r12
jne 0x4451bd
jmp 0x445232
mov r12, qword [r12 + 8]
test r12, r12
je 0x445232
mov r9, qword [r12]
lea r8, str._r_n_s
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
je 0x4451b3
mov r15d, eax
lea rcx, [rsp + 0x50]
call fcn.00444e90
test r14, r14
je 0x4451f5
mov rax, qword [0x00474c20]
mov rcx, r14
call qword [rax]
mov rax, qword [0x00474c20]
mov rcx, qword [rsp + 0x30]
call qword [rax]
mov eax, r15d
add rsp, 0x268
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [0x00474c20]
mov dword [rsp + 0x38], eax
mov rcx, qword [rsp + 0x30]
call qword [rdx]
mov eax, dword [rsp + 0x38]
jmp 0x445206
lea r8, str._r_n_r_n
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov eax, dword [rbp + 0x50]
test al, 3
jne 0x4452d0
test al, 0x10
jne 0x445383
test al, 0x40
movsxd r9, dword [rbp + 0x20]
je 0x445370
mov r8, qword [rbp + 0x60]
mov edx, 2
mov qword [rsp + 0x20], rsi
mov rcx, rbx
call fcn.00444000
test eax, eax
mov r15d, eax
sete al
test al, al
mov rdi, qword [rdi + 0x48]
je 0x44540b
test rdi, rdi
je 0x44540b
mov rax, qword [rbp + 0x48]
test rax, rax
jne 0x445150
mov eax, dword [rbp + 0x50]
test al, 0x51
je 0x445186
mov rdx, qword [rbp + 0x58]
test rdx, rdx
je 0x4453e9
mov rcx, qword [rbp + 0x18]
jmp 0x445174
mov rdx, qword [rdi + 0x18]
lea rcx, [0x00470869]
call fcn.00441e60
test eax, eax
je 0x445390
mov rax, qword [rsp + 0x38]
call rax
mov r12, rax
test r12, r12
je 0x4453ac
call qword [sym.imp.msvcrt.dll___iob_func]
cmp r12, rax
je 0x445341
mov rcx, r12
call sub.msvcrt.dll_fclose
mov r8, qword [rdi + 0x18]
xor r9d, r9d
mov qword [rsp + 0x20], rsi
mov edx, 3
jmp 0x445274
mov qword [rsp + 0x20], rsi
mov r8, r13
mov edx, 1
mov rcx, rbx
call fcn.00444000
test eax, eax
jne 0x4453f6
mov r9, r12
mov r8d, 0x200
mov edx, 1
mov rcx, r13
call sub.msvcrt.dll_fread
test rax, rax
mov r9, rax
jne 0x445324
mov eax, 1
jmp 0x445284
mov r8, qword [rbp + 0x18]
mov qword [rsp + 0x20], rsi
mov edx, 1
jmp 0x445274
movsxd r9, dword [rbp + 0x30]
mov r8, qword [rbp + 0x28]
jmp 0x445374
mov rcx, qword [rdi + 0x18]
lea rdx, [0x00470840]
call sub.msvcrt.dll_fopen
mov r12, rax
test r12, r12
jne 0x4452fb
cmp qword [rsp + 0x2b0], 0
je 0x4453cf
mov r8, qword [rdi + 0x18]
mov rcx, qword [rsp + 0x2b0]
lea rdx, str.couldnt_open_file___s_
call fcn.00416f80
mov rax, qword [rsp + 0x2b8]
mov r15d, 0x1a
mov qword [rax], 0
jmp 0x4451da
test al, 1
je 0x445186
jmp 0x4452be
mov r15d, eax
xor eax, eax
jmp 0x445284
mov r15d, 0x1b
jmp 0x4451da
test r15d, r15d
jne 0x4451da
cmp qword [rbp + 0x48], 0
je 0x44543b
lea r8, str._r_n___s__
mov r9, r14
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov rbp, qword [rbp]
test rbp, rbp
jne 0x445040
mov r9, qword [rsp + 0x30]
lea r8, str._r_n___s___r_n
mov rdx, rsi
mov rcx, rbx
call fcn.00444150
test eax, eax
mov r15d, eax
jne 0x4451da
mov rdx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x2d0]
test r14, r14
mov qword [rax], rdx
je 0x44548b
mov rax, qword [0x00474c20]
mov rcx, r14
call qword [rax]
mov rax, qword [0x00474c20]
mov rcx, qword [rsp + 0x30]
call qword [rax]
mov rax, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x2b8]
mov qword [rdi], rax
xor eax, eax
jmp 0x445206