Function at 0x1800176f0
Capabilities:
Hash data with md5
Read file on windows

Disassembly:
push rbx
push r13
sub rsp, 0x948
mov rax, qword [0x18003c1b0]
xor rax, rsp
mov qword [rsp + 0x910], rax
mov rbx, rdx
mov qword [rsp + 0x90], rdx
lea rdx, [0x18003568c]
call fcn.18001becc
mov r13, rax
test rax, rax
jne 0x180017759
mov rax, qword [str.Get_File_Error]
mov qword [rbx], rax
mov eax, dword [0x180036140]
mov dword [rbx + 8], eax
movzx eax, word [0x180036144]
mov word [rbx + 0xc], ax
movzx eax, byte [0x180036146]
mov byte [rbx + 0xe], al
jmp 0x1800179fe
mov qword [rsp + 0x970], rbp
mov qword [rsp + 0x940], rsi
mov qword [rsp + 0x938], rdi
mov qword [rsp + 0x930], r12
xor esi, esi
xor ebp, ebp
mov qword [rsp + 0x928], r14
mov dword [rsp + 0xa0], 0x67452301
mov dword [rsp + 0xa4], 0xefcdab89
mov qword [rsp + 0x920], r15
mov dword [rsp + 0xa8], 0x98badcfe
mov dword [rsp + 0xac], 0x10325476
xor r12d, r12d
nop dword [rax]
lea rcx, [rsp + 0x110]
mov r9, r13
mov edx, 1
mov r8d, 0x800
call fcn.18001bd74
mov edx, ebp
lea ebp, [rbp + rax*8]
shr edx, 3
lea ecx, [rax*8]
add r12d, eax
and edx, 0x3f
mov rdi, rax
mov dword [rsp + 0xb0], ebp
cmp ebp, ecx
jae 0x180017801
inc esi
shr eax, 0x1d
mov ebx, 0x40
add esi, eax
sub ebx, edx
mov dword [rsp + 0xb4], esi
cmp edi, ebx
jb 0x180017891
movsxd rax, edx
test ebx, ebx
je 0x180017837
lea rcx, [rsp + rax + 0xb8]
lea rdx, [rsp + 0x110]
mov r8d, ebx
call fcn.180019ce0
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0xa0]
call fcn.180016cf0
lea eax, [rbx + 0x3f]
cmp eax, edi
jae 0x18001787f
nop word [rax + rax]
lea rdx, [rsp + rbx + 0x110]
lea rcx, [rsp + 0xa0]
call fcn.180016cf0
add ebx, 0x40
lea eax, [rbx + 0x3f]
cmp eax, edi
jb 0x180017860
mov esi, dword [rsp + 0xb4]
mov ebp, dword [rsp + 0xb0]
xor edx, edx
jmp 0x180017893
xor ebx, ebx
mov eax, edi
movsxd r8, ebx
movsxd rcx, edx
sub eax, ebx
je 0x1800178c5
lea rdx, [rsp + r8 + 0x110]
lea rcx, [rsp + rcx + 0xb8]
mov r8d, eax
call fcn.180019ce0
mov esi, dword [rsp + 0xb4]
mov ebp, dword [rsp + 0xb0]
cmp edi, 0x800
jge 0x1800177c0
mov rcx, r13
call fcn.18001bf64
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x100]
call fcn.180016be0
movzx eax, byte [rsp + 0x10e]
movzx r11d, byte [rsp + 0x10f]
movzx edx, byte [rsp + 0x10d]
movzx r10d, byte [rsp + 0x10c]
movzx ecx, byte [rsp + 0x10b]
movzx ebx, byte [rsp + 0x10a]
movzx edi, byte [rsp + 0x109]
movzx esi, byte [rsp + 0x108]
movzx ebp, byte [rsp + 0x107]
movzx r12d, byte [rsp + 0x106]
movzx r13d, byte [rsp + 0x105]
movzx r14d, byte [rsp + 0x104]
movzx r15d, byte [rsp + 0x103]
movzx r9d, byte [rsp + 0x101]
movzx r8d, byte [rsp + 0x100]
mov dword [rsp + 0x88], r11d
mov dword [rsp + 0x80], eax
movzx eax, byte [rsp + 0x102]
mov dword [rsp + 0x78], edx
mov dword [rsp + 0x70], r10d
mov dword [rsp + 0x68], ecx
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0x60], ebx
mov dword [rsp + 0x58], edi
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x48], ebp
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x30], r14d
lea rdx, str._02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], eax
call fcn.180019b70
mov r15, qword [rsp + 0x920]
mov r14, qword [rsp + 0x928]
mov r12, qword [rsp + 0x930]
mov rdi, qword [rsp + 0x938]
mov rsi, qword [rsp + 0x940]
mov rbp, qword [rsp + 0x970]
mov rcx, qword [rsp + 0x910]
xor rcx, rsp
call fcn.180019b50
add rsp, 0x948
pop r13
pop rbx
ret