Function at 0x401660
Capabilities:
Read file via mapping

Disassembly:
sub esp, 0x1c8
mov eax, dword [0x4334ac]
xor eax, esp
mov dword [esp + 0x1c4], eax
push ebx
push esi
mov esi, dword [esp + 0x1d8]
push edi
mov edi, ecx
cmp dword [edi + 4], 0
mov ebx, edx
je 0x40169b
push str._rYeR
push ebx
call fcn.00404da0
add esp, 8
jmp 0x401925
push ebp
test esi, esi
jne 0x4016a7
xor ebp, ebp
jmp 0x401752
push 6
push str.Local_
push esi
lea ebp, [esp + 0x1c]
call fcn.004168f4
add esp, 0xc
test eax, eax
je 0x4016e9
push str.Local_
mov eax, ebp
push 0xe2
push eax
call fcn.0041692b
push 0xc2
push esi
mov ecx, ebp
push 0xe2
push ecx
call fcn.00416789
add esp, 0x1c
jmp 0x401701
push 0xc8
push esi
lea edx, [esp + 0x18]
push 0xe2
push edx
call fcn.004166b6
add esp, 0x10
xor eax, eax
mov word [esp + 0x1a0], ax
cmp byte [esp + 0x1e4], al
je 0x401733
call fcn.00404870
add eax, 0x4be
je 0x401733
push eax
lea ecx, [esp + 0x14]
push 0xe2
push ecx
call fcn.00416877
add esp, 0xc
call fcn.00404870
add eax, 0x49c
je 0x401752
push eax
lea edx, [esp + 0x14]
push 0xe2
push edx
call fcn.00416877
add esp, 0xc
xor esi, esi
test ebp, ebp
je 0x401807
push ebp
push 1
push 6
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov esi, eax
test esi, esi
je 0x401807
mov dword [edi + 0xc], 2
mov ecx, dword [esp + 0x1e8]
push ecx
push 0
push 0
push 6
push esi
mov dword [edi + 4], esi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov dword [edi + 8], eax
test eax, eax
jne 0x401922
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov eax, dword [edi + 8]
test eax, eax
je 0x4017b8
push eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov dword [edi + 8], 0
mov eax, dword [edi + 4]
test eax, eax
je 0x4017cd
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [edi + 4], 0
mov ecx, ebx
call fcn.00404cf0
mov edi, esi
mov esi, eax
call fcn.00405910
mov ecx, ebx
call fcn.00404cf0
test ebp, ebp
jne 0x4018d6
push 0x42a568
push 0x42b32c
mov edx, eax
call fcn.00408980
add esp, 8
xor al, al
jmp 0x401924
cmp byte [esp + 0x1dc], 0
je 0x40188b
mov eax, dword [esp + 0x1e8]
push ebp
push eax
push 0
push 0x8000004
push 0
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov esi, eax
test esi, esi
jne 0x40186d
test ebp, ebp
jne 0x40184d
push 0x42a4f8
call fcn.004058e0
mov ecx, eax
call fcn.00405a40
xor al, al
jmp 0x401924
push ebp
push 0x42a514
call fcn.004058e0
mov ecx, eax
call fcn.00405a40
mov ecx, eax
call fcn.00405a40
xor al, al
jmp 0x401924
mov dword [edi + 0xc], 1
test ebp, ebp
je 0x40188b
push 6
push esi
call fcn.00406140
push 6
push esi
call fcn.00406190
add esp, 0x10
test esi, esi
jne 0x401778
cmp byte [esp + 0x1dc], 0
jne 0x401778
call fcn.004058e0
test ebp, ebp
jne 0x4018b4
push 0x42a530
jmp 0x4017f1
mov esi, eax
push 0x42a54c
push 0x42b32c
mov edx, esi
call fcn.00408980
add esp, 8
push ebp
mov ecx, esi
call fcn.00405a40
xor al, al
jmp 0x401924
mov esi, eax
push str.Filemap
push 0x42b32c
mov edx, esi
call fcn.00408980
push ebp
push 0x42b32c
mov edx, esi
call fcn.00408980
push 0x42a5b0
push 0x42b32c
mov edx, esi
call fcn.00408980
mov edx, dword [esp + 0x200]
push edx
push 0x42b9fc
mov edx, esi
call fcn.00408980
add esp, 0x20
xor al, al
jmp 0x401924
mov al, 1
pop ebp
mov ecx, dword [esp + 0x1d0]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00415c3e
add esp, 0x1c8
ret 0x10