Function at 0x41040f
Capabilities:
Read file via mapping

Disassembly:
mov eax, 0x4160ff
call fcn.00414060
sub esp, 0xc8
mov eax, dword [0x422a68]
push ebx
push esi
mov esi, dword [ebp + 8]
xor ebx, ebx
cmp dword [esi + 0xe0], ebx
mov dword [ebp - 0x10], eax
push edi
je 0x410459
push 0x336
push 0x41b7a8
push 0x41b7d0
call fcn.004112c3
xor edi, edi
inc edi
push edi
call fcn.0040af3d
add esp, 0x10
jmp 0x41045c
xor edi, edi
inc edi
cmp dword [esi + 0x1c], 0x10
jb 0x410467
mov eax, dword [esi + 8]
jmp 0x41046a
lea eax, [esi + 8]
push eax
push str.Loading__s_n
push 3
call fcn.00411322
push dword [esi + 0xdc]
mov eax, dword [esi + 0xd8]
push eax
push str.__file_size___I64u_n
push 4
call fcn.00411322
add esp, 0x1c
cmp dword [esi + 0x1c], 0x10
jb 0x41049e
mov eax, dword [esi + 8]
jmp 0x4104a1
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0xb8]
call fcn.004014ff
lea eax, [ebp - 0xb8]
push eax
mov dword [ebp - 4], ebx
call fcn.0040b231
pop ecx
test al, al
push ebx
setne byte [ebp + 0xb]
or dword [ebp - 4], 0xffffffff
push edi
lea ecx, [ebp - 0xb8]
call fcn.004010eb
cmp byte [ebp + 0xb], bl
je 0x4104f6
push 0x341
push 0x41b810
push 0x41b838
call fcn.004112c3
push edi
call fcn.0040af3d
add esp, 0x10
mov eax, dword [esi + 0xdc]
cmp eax, ebx
mov ecx, dword [esi + 0xd8]
mov dword [ebp - 0x9c], ecx
jb 0x410535
ja 0x410512
cmp ecx, ecx
jbe 0x410535
cmp dword [esi + 0x1c], 0x10
jb 0x41051d
mov esi, dword [esi + 8]
jmp 0x410520
add esi, 8
push eax
push ecx
push esi
push str.File__s_is_too_large___I64u_bytes_:_unable_to_map_it_into_memory_n
call fcn.0041100f
add esp, 0x10
jmp 0x410754
push 0x41b89c
lea ecx, [ebp - 0xb8]
call fcn.004014ff
cmp dword [0x422e18], 2
lea ecx, [ebp - 0x90]
sbb al, al
inc al
mov dword [ebp - 4], edi
push eax
push edi
lea eax, [ebp - 0xb8]
push eax
call fcn.00407c05
push ebx
push edi
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 3
call fcn.004010eb
cmp dword [esi + 0x1c], 0x10
jb 0x410583
mov eax, dword [esi + 8]
jmp 0x410586
lea eax, [esi + 8]
push ebx
push 0x8000080
push 3
push ebx
push 7
push bind
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
cmp edi, 0xffffffff
jne 0x4105d2
cmp dword [esi + 0x1c], 0x10
jb 0x4105af
mov esi, dword [esi + 8]
jmp 0x4105b2
add esi, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push 0x41b8a8
call fcn.0041100f
add esp, 0xc
lea ecx, [ebp - 0x90]
jmp 0x4106d9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x90]
call fcn.00408ab1
push 2
push str.__cfmFlags___08x__n
push 5
call fcn.00411322
push 4
push str.__mapAccess___08x__n
push 5
call fcn.00411322
add esp, 0x18
push str.Map_time
lea ecx, [ebp - 0xd4]
call fcn.004014ff
cmp dword [0x422e18], 2
lea ecx, [ebp - 0x50]
sbb al, al
inc al
mov dword [ebp - 4], 4
push eax
push 1
lea eax, [ebp - 0xd4]
push eax
call fcn.00407c05
push ebx
push 1
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 6
call fcn.004010eb
push ebx
push ebx
push ebx
push 2
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
cmp eax, ebx
jne 0x410683
cmp dword [esi + 0x1c], 0x10
jb 0x410662
mov esi, dword [esi + 8]
jmp 0x410665
add esi, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push str.Could_not_create_file_mapping___s_:_error__d_n
call fcn.0041100f
add esp, 0xc
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x4106d6
mov dword [ebp + 8], eax
push ebx
push ebx
push ebx
push 4
push eax
mov byte [ebp - 4], 7
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
cmp eax, ebx
mov dword [ebp - 0x94], eax
jne 0x4106e4
cmp dword [esi + 0x1c], 0x10
jb 0x4106ab
mov esi, dword [esi + 8]
jmp 0x4106ae
add esi, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push str.Could_not_map_view_of_file___s_:_error__d_n
call fcn.0041100f
add esp, 0xc
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp + 8]
mov byte [ebp - 4], 6
call fcn.0040ad4d
lea ecx, [ebp - 0x50]
or dword [ebp - 4], 0xffffffff
call fcn.00408ab1
jmp 0x410754
lea ecx, [ebp + 8]
mov byte [ebp - 4], 6
call fcn.0040ad4d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x50]
call fcn.00408ab1
mov dword [esi + 0x24], edi
cmp byte [0x422db0], bl
je 0x41070b
xor eax, eax
jmp 0x410722
cmp dword [esi + 0x1c], 0x10
jb 0x410716
mov eax, dword [esi + 8]
jmp 0x410719
lea eax, [esi + 8]
push eax
push edi
call fcn.00412048
pop ecx
pop ecx
mov ecx, dword [ebp - 0x9c]
mov dword [esi + 0x28], eax
mov eax, dword [ebp - 0x94]
push eax
push ecx
push str.__mapped__u_bytes_at_0x_08x_n
push 4
mov dword [esi + 0xe0], eax
mov dword [esi + 0xe4], ecx
call fcn.00411322
push esi
call fcn.0040fe5a
add esp, 0x14
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop ebx
call fcn.00414165
leave
ret