Function at 0x140051d70
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
mov eax, 0x4748
call fcn.14006bba0
sub rsp, rax
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0x1042
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x4768]
mov rax, qword [0x14009f088]
xor rax, rbp
mov qword [rbp + 0x46f0], rax
lea rcx, [0x1401a5341]
call fcn.14006b9e0
mov rax, qword [rbp + 0x4720]
mov eax, dword [rax + 0x11c]
mov dword [rbp + 0x54], eax
mov dword [rbp + 0x74], 0
mov rax, qword [rbp + 0x4720]
mov r9, qword [rax]
mov r8d, reloc.WS2_32.dll_recv
mov edx, 1
lea rcx, [rbp + 0x28]
call qword [sym.imp.ucrtbased.dll_fread]
mov qword [rbp + 8], rax
cmp qword [rbp + 8], 0x10
jae 0x140051e5e
cmp qword [rbp + 8], 0
ja 0x140051e18
jmp 0x140051e57
cmp qword [rbp + 8], 0
jne 0x140051e21
jmp 0x140051e57
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, [0x14008daf0]
mov rcx, rax
call fcn.140001b10
xor eax, eax
jmp 0x14005253a
mov rax, qword [rbp + 0x4720]
mov rax, qword [rax + 0x138]
add rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x4720]
mov qword [rcx + 0x138], rax
lea rdx, [rbp + 0x28]
mov ecx, dword [rbp + 0x54]
call fcn.140051240
mov rcx, qword [rbp + 0x4728]
mov dword [rcx], eax
lea rax, [rbp + 0x2c]
mov rdx, rax
mov ecx, dword [rbp + 0x54]
call fcn.140051240
mov rcx, qword [rbp + 0x4730]
mov dword [rcx], eax
lea rax, [rbp + 0x30]
mov rdx, rax
mov ecx, dword [rbp + 0x54]
call fcn.140051240
mov rcx, qword [rbp + 0x4740]
mov dword [rcx], eax
lea rax, [rbp + 0x34]
mov rdx, rax
mov ecx, dword [rbp + 0x54]
call fcn.140051240
mov rcx, qword [rbp + 0x4738]
mov dword [rcx], eax
mov rax, qword [rbp + 0x4730]
cmp dword [rax], 0xf42a4
jbe 0x140051f78
mov rax, qword [rbp + 0x4730]
cmp dword [rax], 0xf42a4
jae 0x140051f2a
mov rax, qword [rbp + 0x4728]
mov eax, dword [rax]
inc eax
mov rcx, qword [rbp + 0x4728]
mov dword [rcx], eax
mov rax, qword [rbp + 0x4730]
mov eax, dword [rax]
sub eax, 0xf4240
mov rcx, qword [rbp + 0x4730]
mov dword [rcx], eax
jmp 0x140051f78
mov rax, qword [rbp + 0x4730]
cmp dword [rax], 0xffffff00
jbe 0x140051f71
mov rax, qword [rbp + 0x4728]
mov eax, dword [rax]
dec eax
mov rcx, qword [rbp + 0x4728]
mov dword [rcx], eax
mov rax, qword [rbp + 0x4730]
mov eax, dword [rax]
add eax, 0xf4240
mov rcx, qword [rbp + 0x4730]
mov dword [rcx], eax
mov rax, qword [rbp + 0x4730]
mov ecx, dword [rax]
mov dword [rax], ecx
jmp 0x140051f78
mov dword [rbp + 0x74], 1
mov rax, qword [rbp + 0x4730]
cmp dword [rax], 0
jne 0x140051fad
mov rax, qword [rbp + 0x4728]
cmp dword [rax], 0
jne 0x140051fad
mov rax, qword [rbp + 0x4738]
cmp dword [rax], 0
jne 0x140051fad
mov rax, qword [rbp + 0x4740]
cmp dword [rax], 0
jne 0x140051fad
jmp 0x140051de5
mov rax, qword [rbp + 0x4740]
mov ecx, dword [rbp + 0x4750]
cmp dword [rax], ecx
jbe 0x140051fc5
mov dword [rbp + 0x74], 1
mov rax, qword [rbp + 0x4738]
mov rcx, qword [rbp + 0x4740]
mov ecx, dword [rcx]
cmp dword [rax], ecx
jae 0x140051fe0
mov dword [rbp + 0x74], 1
mov rax, qword [rbp + 0x4738]
cmp dword [rax], 8
jae 0x140051ff3
mov dword [rbp + 0x74], 1
mov rax, qword [rbp + 0x4738]
cmp dword [rax], 0x27100
jbe 0x140052009
mov dword [rbp + 0x74], 1
cmp dword [rbp + 0x74], 0
je 0x1400523bc
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rax]
call fcn.140051560
mov qword [rbp + 0x40b8], rax
cmp qword [rbp + 0x40b8], 0xffffffffffffffff
jne 0x1400520a9
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x4720]
mov r9, qword [rcx + 0x128]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_lld:_could_not_resolve_file_corruption__ftell__n
mov rcx, rax
call fcn.140001b10
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_perror]
mov r8d, 2
xor edx, edx
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rax]
call fcn.140051510
xor eax, eax
jmp 0x14005253a
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x40b8]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp + 0x40b8]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 0x4720]
mov r9, qword [rcx + 0x128]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_lld:_corruption_found_at_0x_08I64x___I64d__n
mov rcx, rax
call fcn.140001b10
mov rax, qword [rbp + 0x4720]
mov r9, qword [rax]
mov r8d, 0x4000
mov edx, 1
lea rcx, [rbp + 0xa0]
call qword [sym.imp.ucrtbased.dll_fread]
mov qword [rbp + 8], rax
cmp qword [rbp + 8], 0
jne 0x1400521c6
cmp qword [rbp + 8], 0
ja 0x140052189
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_error_at_end_of_file_n
mov rcx, rax
call fcn.140001b10
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_perror]
jmp 0x1400521bf
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_premature_end_of_file_n
mov rcx, rax
call fcn.140001b10
xor eax, eax
jmp 0x14005253a
mov rax, qword [rbp + 0x4720]
mov rax, qword [rax + 0x138]
add rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x4720]
mov qword [rcx + 0x138], rax
mov dword [rbp + 0x40d4], 0
jmp 0x140052200
mov eax, dword [rbp + 0x40d4]
inc eax
mov dword [rbp + 0x40d4], eax
mov eax, dword [rbp + 0x40d4]
cmp rax, qword [rbp + 8]
jae 0x1400523ab
mov eax, dword [rbp + 0x40d4]
mov rcx, qword [rbp + 8]
sub rcx, rax
mov rax, rcx
mov ecx, dword [rbp + 0x40d4]
lea rcx, [rbp + rcx + 0xa0]
mov rdx, qword [rbp + 0x4720]
mov r9d, dword [rdx + 0x120]
mov r8d, dword [rbp + 0x54]
mov edx, eax
call fcn.140052a20
test eax, eax
jne 0x14005224d
jmp 0x1400521f2
mov eax, dword [rbp + 0x40d4]
mov rcx, qword [rbp + 0x40b8]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x40b8], rax
xor r8d, r8d
mov rdx, qword [rbp + 0x40b8]
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rax]
call fcn.140051510
test eax, eax
je 0x1400522ec
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_could_not_resolve_file_corruption__seek_forward__n
mov rcx, rax
call fcn.140001b10
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_perror]
mov r8d, 2
xor edx, edx
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rax]
call fcn.140051510
xor eax, eax
jmp 0x14005253a
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rax]
call fcn.140051560
mov qword [rbp + 0x40b8], rax
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x40b8]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp + 0x40b8]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 0x4720]
mov r9, qword [rcx + 0x128]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_lld:_good_packet_found_at_0x_08I64x___I64d__n
mov rcx, rax
call fcn.140001b10
mov eax, dword [rbp + 0x4750]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0x4748]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x4740]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp + 0x4738]
mov r8, qword [rbp + 0x4730]
mov rdx, qword [rbp + 0x4728]
mov rcx, qword [rbp + 0x4720]
call fcn.140051d70
jmp 0x14005253a
lea rcx, str.No_valid_packet_found_in_chunk_n
call fcn.1400024a0
jmp 0x140052009
mov rax, qword [rbp + 0x4740]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x4720]
mov r9, qword [rcx]
mov r8d, eax
mov edx, 1
mov rcx, qword [rbp + 0x4748]
call qword [sym.imp.ucrtbased.dll_fread]
mov qword [rbp + 8], rax
mov rax, qword [rbp + 0x4740]
mov eax, dword [rax]
cmp qword [rbp + 8], rax
jae 0x140052499
cmp qword [rbp + 8], 0
ja 0x14005245c
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x4720]
mov r9, qword [rcx + 0x128]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_could_not_read_packet_data__frame__lld_n
mov rcx, rax
call fcn.140001b10
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_perror]
jmp 0x140052492
mov rax, qword [rbp + 0x4720]
add rax, 0x1c
mov qword [rbp + 0x46e8], rax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, qword [rbp + 0x46e8]
mov r8, rcx
lea rdx, str._s:_premature_end_of_file_n
mov rcx, rax
call fcn.140001b10
xor eax, eax
jmp 0x14005253a
mov rax, qword [rbp + 0x4720]
mov rax, qword [rax + 0x138]
add rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x4720]
mov qword [rcx + 0x138], rax
mov rax, qword [rbp + 0x4720]
cmp qword [rax + 0x128], 0
jne 0x1400524f0
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rbp + 0x4728]
mov ecx, dword [rcx]
mov dword [rax + 0xc], ecx
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rbp + 0x4730]
mov ecx, dword [rcx]
mov dword [rax + 0x10], ecx
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rbp + 0x4728]
mov ecx, dword [rcx]
mov dword [rax + 0x14], ecx
mov rax, qword [rbp + 0x4720]
mov rcx, qword [rbp + 0x4730]
mov ecx, dword [rcx]
mov dword [rax + 0x18], ecx
mov rax, qword [rbp + 0x4720]
mov rax, qword [rax + 0x128]
inc rax
mov rcx, qword [rbp + 0x4720]
mov qword [rcx + 0x128], rax
mov eax, 1
mov rdi, rax
lea rcx, [rbp - 0x40]
lea rdx, [0x14008dae0]
call fcn.14006b950
mov rax, rdi
mov rcx, qword [rbp + 0x46f0]
xor rcx, rbp
call fcn.14006bb70
lea rsp, [rbp + 0x4708]
pop rdi
pop rbp
ret