Function at 0x1800077f0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x1800f6ae8]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov rbx, qword [rbp + 0xe0]
lea esi, [r8 - 0x10]
mov qword [rsp + 0x68], rcx
mov r13, rdx
mov qword [rsp + 0x60], r9
mov rdx, rcx
mov qword [rbp - 0x70], rbx
mov r12d, r8d
mov dword [rsp + 0x58], r8d
mov edi, r8d
lea rcx, [0x180000000]
cmp r8d, esi
jbe 0x180007bd2
mov r14d, dword [rsp + 0x50]
lea r15d, [r8 - 0x55]
mov r11d, 0x68
lea r10d, [r11 + 6]
lea r8d, [r11 + 0xb]
cmp r15d, 0x34
ja case.default.0x18000788f
movzx eax, byte [rcx + r15 + 0x7e54]
mov ecx, dword [rcx + rax*4 + 0x7e14]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
movzx eax, word [rbx]
mov ecx, 0xfffd
dec ax
cmp ax, cx
ja 0x180007987
movzx eax, byte [rdx]
cmp byte [rbx + 1], al
jne 0x180007987
movzx eax, byte [rdx + 1]
cmp byte [rbx], al
jb 0x180007987
movzx eax, word [r9]
lea rdx, [rsp + 0x48]
mov r8d, 0xf4
mov word [rsp + 0x48], ax
mov rcx, r13
call fcn.180097510
mov esi, eax
test eax, eax
je 0x180007982
cmp byte [0x1800f6bd9], 0
je 0x18000790d
mov rax, qword [rsp + 0x60]
lea rcx, str.CTypeFactory::ListTypesMSIL__:_import__EnumTypeSpecs____a__failed
movzx r9d, byte [rbx]
movzx r8d, byte [rbx + 1]
mov dword [rsp + 0x20], esi
movzx edx, word [rax]
call fcn.1800d0700
mov edi, 0xa
cmp edi, 0xa
jne 0x180007970
mov ebx, 0x61
nop dword [rax]
cmp ebx, 0x61
je 0x180007934
cmp ebx, 0xfa
jne 0x180007962
mov eax, esi
jmp 0x180007cad
cmp byte [0x1800f6bd9], 0
je 0x180007962
lea r9, [0x1800d9468]
mov qword [rsp + 0x20], 0
lea r8, [0x1800d9468]
mov edx, esi
lea rcx, str.DW_TAG_SUN_memop_info
call fcn.1800d0700
add ebx, 0x99
cmp ebx, 0x193
jb 0x180007920
add edi, 0xa6
cmp edi, 0xb0
jb 0x180007912
mov edi, dword [rsp + 0x58]
lea esi, [r12 - 0x10]
mov dword [rsp + 0x48], 1
jmp case.0x18000788f.15
mov dword [rbp - 0x38], 0x2d006d
jmp case.0x18000788f.15
mov eax, dword [r9]
lea r8, [rsp + 0x50]
mov dword [rsp + 0x50], eax
lea rdx, [rsp + 0x70]
mov rax, qword [r13]
xor ecx, ecx
mov dword [rsp + 0x20], 0x3e
mov r9, qword [rax + 0x38]
mov qword [rsp + 0x70], rax
call fcn.180085210
mov qword [rsp + 0x78], rax
jmp case.0x18000788f.15
mov dword [rbp - 0x3c], 0x650074
jmp case.0x18000788f.15
mov dword [rbp - 0x42], 0x790073
mov word [rbp - 0x3e], r8w
jmp case.0x18000788f.15
mov word [rbp - 0x48], r10w
jmp case.0x18000788f.15
mov rcx, qword [r13]
mov rax, qword [rcx + 0x38]
mov qword [rcx + 0x48], rax
mov rdx, qword [r13]
mov rax, qword [rdx + 8]
mov ecx, dword [rax + 0x28]
imul ecx, dword [rsp + 0x40]
mov dword [rdx + 0x50], ecx
jmp case.0x18000788f.15
mov rax, qword [r13]
test byte [rax + 0x74], 2
je 0x180007a6b
mov ecx, 0xeb
cmp ecx, 0xeb
je 0x180007a4b
cmp ecx, 0x2b25
jne 0x180007a59
mov rax, qword [r13]
and dword [rax + 0x74], 0xfffffffd
jmp 0x180007a59
mov rax, qword [r13]
cmp dword [rax + 0x50], 0
je 0x180007a59
or dword [rax + 0x74], 4
add ecx, 0x2a3a
cmp ecx, 0x5474
jbe 0x180007a31
mov rax, qword [r13]
test byte [rax + 0x74], 1
je case.0x18000788f.15
mov rax, qword [r13]
lea r9, [rsp + 0x58]
xor r8d, r8d
mov qword [rsp + 0x58], rax
mov edx, 0x114
lea rcx, [rsp + 0x40]
call fcn.18003ad50
mov r14d, eax
test eax, eax
jne 0x180007cad
jmp case.0x18000788f.15
mov rax, qword [r13]
mov ecx, dword [rax + 0x30]
mov dword [rsp + 0x40], ecx
mov edx, dword [rax + 0x28]
cmp ecx, edx
lea rcx, [0x180000000]
jbe case.default.0x18000788f
mov dword [rsp + 0x40], edx
jmp case.default.0x18000788f
mov dword [rbp - 0x46], 0x2d006f
jmp case.0x18000788f.15
mov dword [rbp - 0x32], 0x610065
jmp case.0x18000788f.15
mov word [rbp - 0x34], r11w
jmp case.0x18000788f.15
mov rax, qword [rsp + 0x78]
movzx eax, word [rax + 0x1e]
mov word [rsp + 0x48], ax
jmp case.0x18000788f.15
mov rcx, qword [r13]
test byte [rcx + 0x74], 2
jne 0x180007b90
cmp qword [rcx + 0x18], 0
je 0x180007b90
mov ebx, 0x98
nop word [rax + rax]
cmp ebx, 0x98
je 0x180007b3f
cmp ebx, 0x4dc8
jne 0x180007b80
test r14d, r14d
je 0x180007b80
mov eax, 0x7f2bb721
jmp 0x180007cad
mov rcx, qword [r13]
lea r9, [rbp - 0x80]
mov eax, dword [rsp + 0x40]
lea r8, [rbp - 0x78]
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x20], 3
mov rax, qword [rcx + 0x18]
mov rdx, qword [rcx + 0x38]
mov qword [rbp - 0x78], rax
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 8]
mov qword [rbp - 0x80], rcx
lea rcx, [rsp + 0x58]
call fcn.18000f620
mov r14d, eax
add ebx, 0x4d30
cmp ebx, 0x9a60
jbe 0x180007b20
jmp case.0x18000788f.15
mov rax, qword [rcx + 8]
xor edx, edx
mov rcx, qword [rcx + 0x38]
mov r8d, dword [rax + 0x28]
mov eax, dword [rsp + 0x40]
imul r8, rax
call sub.VCRUNTIME140.dll_memset
lea rcx, [0x180000000]
dec edi
dec r15d
mov dword [rsp + 0x58], edi
cmp edi, esi
jbe 0x180007bd2
mov rbx, qword [rbp - 0x70]
mov r9, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
jmp 0x18000785d
lea r15d, [r12 + 0x11]
cmp r12d, r15d
jae case.0x180007c26.3
mov r14d, dword [rsp + 0x50]
lea esi, [r12 - 0x78]
mov rdi, qword [rsp + 0x68]
mov edx, 0x3d
movzx r12d, byte [rsp + 0x48]
lea r8d, [rdx + 0x3b]
lea r9d, [rdx + 0x27]
lea r10d, [rdx + 0x28]
lea r11d, [rdx + 0x35]
nop word [rax + rax]
cmp esi, 0x1d
ja case.0x180007c26.4
mov ecx, dword [rcx + rsi*4 + 0x7e8c]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov r14d, edx
jmp case.0x180007c26.4
mov word [rbp - 0x1a], dx
jmp case.0x180007c26.4
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x30], rax
xor r8d, r8d
mov qword [rsp + 0x28], rax
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], 0x1c
call fcn.1800cf1a0
xor r9d, r9d
lea rax, [rbp - 0x48]
xor edx, edx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x100
lea r8d, [r9 + 4]
lea rcx, [rdx - 1]
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov rdi, rax
mov r8d, 0x78
lea r9d, [r8 - 0x14]
lea r10d, [r8 - 0x13]
lea r11d, [r8 - 6]
mov edx, 0x3d
inc esi
lea rcx, [0x180000000]
lea eax, [rsi + 0x78]
cmp eax, r15d
jb 0x180007c10
mov eax, dword [rsp + 0x48]
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.1800d1090
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xor eax, eax
mov byte [r13 + 0x118], 0
mov ecx, eax
test rdi, rdi
movzx eax, r12b
cmovne ecx, eax
movzx r12d, cl
jmp case.0x180007c26.4
mov dword [rbp - 0x20], 0x690066
mov word [rbp - 0x1c], r8w
jmp case.0x180007c26.4
test r12b, r12b
je 0x180007d4e
mov ebx, 0xed
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xed
je 0x180007d29
cmp eax, 1
jne 0x180007d44
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x180007d44
xor eax, eax
lea r9, [rbp - 0x68]
mov r8d, r14d
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x10]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFileEx]
inc ebx
cmp ebx, 0xef
jb 0x180007d10
mov r9d, 0x10f
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180049e40
jmp 0x180007c7d
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
movups xmmword [rbp - 0x58], xmm0
jmp case.0x180007c26.4
xor eax, eax
mov dword [rsp + 0x48], eax
jmp case.0x180007c26.4
xor edx, edx
lea r8, [r13 + 0x48]
xor ecx, ecx
lea r9d, [rdx + 0x54]
call fcn.180084320
jmp 0x180007c7d
cmp byte [r13 + 0x118], 0
je case.0x180007c26.3
jmp case.0x180007c26.4
mov dword [rbp - 0x28], 0x70002d
mov dword [rbp - 0x24], 0x650072
jmp case.0x180007c26.4
xor eax, eax
mov r12b, 1
mov word [rbp - 0x18], ax
jmp case.0x180007c26.4
mov word [rbp - 0x2e], r9w
jmp case.0x180007c26.4
mov rcx, qword [r13]
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x180007c8f
mov eax, dword [rsp + 0x40]
add rax, rdx
mov qword [rcx + 0x18], rax
jmp 0x180007c8f
mov rcx, qword [r13]
mov eax, dword [rsp + 0x40]
sub dword [rcx + 0x28], eax
jmp case.0x180007c26.4
mov dword [rbp - 0x2c], 0x720065
jmp case.0x180007c26.4