Function at 0x401175
Capabilities:
Read file on windows
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb0
mov eax, dword [0x405018]
add eax, 8
mov dword [0x405018], eax
push 0x3ff
push 0x40b688
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
jne 0x4011b6
mov eax, dword [0x405014]
sub eax, 4
mov dword [0x405018], eax
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [0x405018]
shl eax, 3
mov dword [0x405018], eax
mov eax, dword [0x405014]
imul eax, dword [0x405018]
mov ecx, dword [0x405018]
imul ecx, ecx, 5
sub eax, ecx
mov dword [0x405014], eax
push 0x40b688
call section..text
pop ecx
mov dword [ebp - 4], eax
mov eax, dword [0x405018]
imul eax, dword [0x405018]
sub eax, 3
mov dword [0x405014], eax
push 0
push 0x80
push 3
push 0
push 1
push 0x80000000
push 0x40b688
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0xac], eax
mov eax, dword [0x405014]
sub eax, 4
mov dword [0x405018], eax
cmp dword [ebp - 0xac], 0xffffffff
je 0x4013c0
mov eax, dword [0x405018]
add eax, 8
mov dword [0x405018], eax
push 2
push 0
push 0xfffffffffffffff0
push dword [ebp - 0xac]
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0
lea eax, [ebp - 8]
push eax
push 4
push 0x40ba90
push dword [ebp - 0xac]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [0x405014]
imul eax, eax, 0x63
mov dword [0x405014], eax
push 0
lea eax, [ebp - 8]
push eax
push 4
lea eax, [ebp - 0x98]
push eax
push dword [ebp - 0xac]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [0x405014]
mov ecx, dword [0x405018]
lea eax, [ecx + eax - 9]
mov dword [0x405014], eax
push 0
lea eax, [ebp - 8]
push eax
push 4
lea eax, [ebp - 0x94]
push eax
push dword [ebp - 0xac]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [0x405018]
xor edx, edx
push 0xc
pop ecx
div ecx
mov dword [0x405018], eax
push 0
lea eax, [ebp - 8]
push eax
push 4
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xac]
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [0x405014]
mov ecx, dword [0x405018]
lea eax, [ecx + eax - 9]
mov dword [0x405014], eax
push dword [ebp - 0xc]
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push dword [0x40ba90]
push str._d__d__d__d
lea eax, [ebp - 0x8c]
push eax
call fcn.00403834
add esp, 0x18
cmp dword [ebp - 0xc], 0x221c
jne 0x40137d
mov eax, dword [ebp - 0x94]
mov dword [0x40500c], eax
mov eax, dword [0x405014]
imul eax, dword [0x405018]
mov ecx, dword [0x405018]
imul ecx, ecx, 5
sub eax, ecx
mov dword [0x405014], eax
mov eax, dword [ebp - 0x98]
mov dword [0x405008], eax
mov eax, dword [0x405018]
shl eax, 3
mov dword [0x405018], eax
jmp 0x401399
mov eax, dword [0x405014]
mov ecx, dword [0x405018]
lea eax, [ecx + eax - 9]
mov dword [0x405014], eax
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [0x405018]
shl eax, 1
mov dword [0x405014], eax
push dword [ebp - 0xac]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x405018]
shl eax, 3
mov dword [0x405018], eax
jmp 0x4013e2
mov eax, dword [0x405014]
sub eax, 4
mov dword [0x405018], eax
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [0x405014]
mov ecx, dword [0x405018]
lea eax, [ecx + eax - 9]
mov dword [0x405014], eax
leave
ret