Function at 0x100018940
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
push rbx
push rbp
push rsi
push rdi
push r12
sub rsp, 0x50
and dword [rax + 0x10], 0
mov esi, edx
mov rdi, rcx
test edx, edx
je 0x10002c5a6
mov r9b, 1
mov r8d, edx
mov dword [rsp + 0x20], 0x65
mov dl, r9b
call fcn.100003120
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x10002426d
mov rcx, rax
call fcn.100020394
test eax, eax
je 0x10002c6a6
and dword [rsp + 0x90], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x90]
lea rdx, [rsp + 0x88]
mov r8d, 4
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10002c6e8
cmp dword [rsp + 0x90], 4
jne 0x10002c6e8
mov ecx, dword [rsp + 0x88]
call fcn.100002be0
mov r12d, dword [rsp + 0x88]
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, r12d
mov rdx, rax
mov rcx, rbx
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10002c68e
cmp dword [rsp + 0x40], r12d
jne 0x10002c68e
mov r8b, 1
mov edx, esi
mov rcx, rbx
call fcn.100003d5c
mov ecx, 0x98
call fcn.100002580
test rax, rax
je 0x10002c6af
mov rcx, rax
call fcn.10000286c
mov rsi, rax
jmp 0x100018a45
mov r8d, dword [rsp + 0x88]
mov rdx, rbp
mov rcx, rsi
call fcn.100019ffc
mov rcx, rbp
mov bl, al
call sub.msvcrt.dll_free
test bl, bl
je 0x10002c6b6
mov rax, rsi
jmp 0x100018a6f
add rsp, 0x50
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rdx, str.Stash::LoadXMLFile__:_Unable_to_open__s
mov r8, rdi
mov ecx, 0x20001
call fcn.100002470
jmp 0x100024283
xor eax, eax
jmp 0x100018a6f
and qword [rax - 0x48], 0
mov dword [rax - 0x50], 0x80
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov dword [rax - 0x58], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x10002426d
mov rcx, rax
call fcn.100020394
test eax, eax
jne 0x10002c605
lea rdx, str.Stash::LoadXMLFile__:_Unable_to_read_Rich_Game_Media_header_from__s
mov r8, rdi
mov ecx, 0x80
call fcn.100002470
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x100024283
and dword [rsp + 0x90], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x90]
lea rdx, [rsp + 0x88]
mov r8d, 4
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10002c69a
cmp dword [rsp + 0x90], 4
jne 0x10002c69a
mov ecx, dword [rsp + 0x88]
call fcn.100002be0
mov esi, dword [rsp + 0x88]
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x98]
mov r8d, esi
mov rdx, rax
mov rcx, rbx
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x10002c68e
cmp dword [rsp + 0x98], esi
jne 0x10002c68e
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x100018a25
lea rdx, str.Stash::LoadXMLFile__:_Unable_to_read_data_from__s
jmp 0x100024274
lea rdx, str.Stash::LoadXMLFile__:_Unable_to_read_XML_data_size_value_from__s
jmp 0x10002c5ea
lea rdx, str.Stash::LoadXMLFile__:_Unable_to_read_Rich_Game_Media_header_from__s
jmp 0x10002c6ef
xor esi, esi
jmp 0x100018a45
lea rdx, str.Stash::LoadXMLFile__:_Error_parsing_xml_file__s
mov r8, rdi
mov ecx, 0x20001
call fcn.100002470
test rsi, rsi
je 0x100024283
mov rcx, rsi
call fcn.100003fe4
mov rcx, rsi
call sub.msvcrt.dll_free
jmp 0x100024283
lea rdx, str.Stash::LoadXMLFile__:_Unable_to_read_XML_data_size_value_from__s
mov r8, rdi
mov ecx, 0x80
call fcn.100002470
mov r8b, 1
mov edx, esi
mov rcx, rbx
call fcn.100003d5c
nop
jmp 0x100024283