Function at 0x140010160
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rdi, rcx
mov rax, qword [0x140052040]
xor rax, rsp
mov qword [rsp + 0x60], rax
lea rdx, [0x140049ef6]
call fcn.140024fd0
test rax, rax
je 0x14001022b
mov rsi, rax
mov rcx, rax
call fcn.14002085c
lea rdx, [rsp + 0x30]
mov ecx, eax
call fcn.140020cc4
test eax, eax
je 0x140010282
mov eax, dword [0x140055e98]
mov ecx, dword [0x140052e00]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400103c5
lea rdx, str.GetManifestContents:_error_stating_manifest_file:__S
mov r8, rdi
call fcn.1400139f0
xor edi, edi
mov rcx, rsi
call fcn.1400265ec
test eax, eax
je 0x140010261
mov eax, dword [0x140055e98]
mov ecx, dword [0x140052e00]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140010447
lea rdx, str.File_close_did_not_execute_successfully
call fcn.1400139f0
jmp 0x140010261
mov eax, dword [0x140055e98]
mov ecx, dword [0x140052e00]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140010406
lea rdx, str.GetManifestContents:_error_opening_manifest_file:__S
mov r8, rdi
call fcn.1400139f0
xor edi, edi
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.14002cd00
mov rax, rdi
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movsxd r12, dword [rsp + 0x44]
lea rcx, [r12 + 1]
call fcn.140027868
test rax, rax
je 0x1400101ea
mov rbx, rax
test r12d, r12d
je 0x1400102e0
mov r13d, 0x7fffffff
mov r14, rbx
cmp r12, r13
mov r15d, 0x7fffffff
cmovb r15, r12
mov edx, 1
mov rcx, r14
mov r8, r15
mov r9, rsi
call fcn.140026f34
cmp rax, r15
jne 0x140010332
add r14, r15
sub r12, r15
jne 0x1400102ab
mov ebp, dword [rsp + 0x44]
inc ebp
jmp 0x1400102e8
mov ebp, 1
mov r14, rbx
mov byte [r14], 0
movsxd rcx, ebp
add rcx, rcx
call fcn.140027868
test rax, rax
je 0x140010366
mov rdi, rax
mov dword [rsp + 0x28], ebp
mov qword [rsp + 0x20], rax
mov ecx, 0xfde9
mov edx, 8
mov r8, rbx
mov r9d, 0xffffffff
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
je 0x14001036b
mov rcx, rbx
call fcn.1400271b4
jmp 0x1400103b7
mov eax, dword [0x140055e98]
mov ecx, dword [0x140052e00]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140010488
lea rdx, str.GetManifestContents:_error_reading_manifest_file:__S
mov r8, rdi
call fcn.1400139f0
mov rcx, rbx
jmp 0x1400103b0
mov eax, dword [0x140055e98]
mov ecx, dword [0x140052e00]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400104c9
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.GetManifestContents:_error_converting_utf8_to_utf16le:__lu
mov r8d, eax
call fcn.1400139f0
mov rcx, rbx
call fcn.1400271b4
mov rcx, rdi
call fcn.1400271b4
xor edi, edi
test rsi, rsi
jne 0x1400101ec
jmp 0x140010261
lea rcx, [0x140055e98]
call fcn.140015744
cmp dword [0x140055e98], 0xffffffff
jne 0x1400101db
mov qword [0x140055c88], 0
lea rcx, [0x140008510]
call fcn.140015828
lea rcx, [0x140055e98]
call fcn.1400157bc
jmp 0x1400101db
lea rcx, [0x140055e98]
call fcn.140015744
cmp dword [0x140055e98], 0xffffffff
jne 0x140010250
mov qword [0x140055c88], 0
lea rcx, [0x140008510]
call fcn.140015828
lea rcx, [0x140055e98]
call fcn.1400157bc
jmp 0x140010250
lea rcx, [0x140055e98]
call fcn.140015744
cmp dword [0x140055e98], 0xffffffff
jne 0x14001021d
mov qword [0x140055c88], 0
lea rcx, [0x140008510]
call fcn.140015828
lea rcx, [0x140055e98]
call fcn.1400157bc
jmp 0x14001021d
lea rcx, [0x140055e98]
call fcn.140015744
cmp dword [0x140055e98], 0xffffffff
jne 0x140010357
mov qword [0x140055c88], 0
lea rcx, [0x140008510]
call fcn.140015828
lea rcx, [0x140055e98]
call fcn.1400157bc
jmp 0x140010357
lea rcx, [0x140055e98]
call fcn.140015744
cmp dword [0x140055e98], 0xffffffff
jne 0x140010390
mov qword [0x140055c88], 0
lea rcx, [0x140008510]
call fcn.140015828
lea rcx, [0x140055e98]
call fcn.1400157bc
jmp 0x140010390