Function at 0x4d074c
Capabilities:
Timestomp file

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff94
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x4c], edx
mov esi, eax
xor eax, eax
push ebp
push 0x4d0d8e
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 1], 0
mov dword [esi], 0xffffffff
call fcn.0040b3f4
fstp st(0)
lea eax, [ebp - 0x4c]
call fcn.004c2b60
lea edx, [ebp - 0x54]
xor eax, eax
call fcn.00402b68
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0x40]
call fcn.00409ce8
lea edx, [ebp - 0x58]
mov eax, dword [ebp - 0x40]
call fcn.0040eda4
mov edx, dword [ebp - 0x58]
lea eax, [ebp - 0x40]
mov ecx, 0x4d0da8
call fcn.00404d38
lea eax, [ebp - 0x3c]
mov ecx, dword [0x543f94]
mov edx, dword [ebp - 0x4c]
call fcn.00404d38
push 0
push 0x80
push 3
push 0
push 0
push 0xc0000000
mov eax, dword [ebp - 0x40]
call fcn.00404eec
push eax
call sub.kernel32.dll_CreateFileA_1
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffff
je 0x4d0d56
xor eax, eax
push ebp
push 0x4d0d31
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x4d0d20
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x30]
push eax
push 0
push 0
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_GetFileTime
lea eax, [ebp - 0x30]
call fcn.004d6120
fstp qword [ebp - 0x20]
wait
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad500
movzx edi, ax
cmp edi, 0x3b
jne 0x4d08a0
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad528
add eax, 0xffffffce
sub ax, 0xa
jae 0x4d08a0
mov ecx, dword [ebp - 0x3c]
mov dl, 1
mov eax, dword [0x4403c0]
call fcn.00440470
mov ebx, eax
test ebx, ebx
je 0x4d0894
push 0x5f5e0ff
mov ecx, 0x4d0dbc
mov edx, 0x4d0dd0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, ebx
call fcn.00403c18
jmp 0x4d0d09
test edi, edi
jne 0x4d0aed
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad528
cmp ax, 2
jne 0x4d0aed
lea edx, [ebp - 0x4d]
lea eax, [ebp - 0x28]
call fcn.004d0458
test al, al
jne 0x4d0941
call fcn.00402bc8
mov eax, 0x3c
call fcn.00403274
mov ecx, 0xa
cdq
idiv ecx
mov ebx, edx
add ebx, 0x32
jno 0x4d08ef
call fcn.00403b58
push 0
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad4d8
mov ecx, ebx
mov dx, 0x3b
call fcn.0040af80
fstp qword [ebp - 0x60]
wait
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad42c
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x18]
wait
push dword [ebp - 0x14]
push dword [ebp - 0x18]
lea eax, [ebp - 0x38]
call fcn.004d6190
lea eax, [ebp - 0x38]
push eax
push 0
push 0
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_SetFileTime
jmp 0x4d0d09
cmp byte [ebp - 0x4d], 0
je 0x4d0a5e
call fcn.00402bc8
mov eax, 0x3c
call fcn.00403274
mov ecx, 0x14
cdq
idiv ecx
mov ebx, edx
add ebx, 0x1e
jno 0x4d096e
call fcn.00403b58
push 0
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad4d8
mov ecx, ebx
mov dx, 1
call fcn.0040af80
fstp qword [ebp - 0x60]
wait
call fcn.0040b394
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x18]
wait
push dword [ebp - 0x14]
push dword [ebp - 0x18]
lea eax, [ebp - 0x38]
call fcn.004d6190
lea eax, [ebp - 0x38]
push eax
push 0
push 0
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_SetFileTime
mov byte [ebp - 1], 1
mov dword [esi], 1
call fcn.0040b394
call fcn.00402c9c
push edx
push eax
lea eax, [ebp - 0x48]
call fcn.004095f4
lea eax, [ebp - 0x44]
call fcn.00404a2c
mov eax, dword [ebp - 0x48]
call fcn.00404cec
mov esi, eax
test esi, esi
jle 0x4d0a1c
mov edi, 1
mov eax, dword [ebp - 0x48]
call fcn.00404cec
sub eax, edi
jno 0x4d09ff
call fcn.00403b58
mov edx, dword [ebp - 0x48]
mov dl, byte [edx + eax]
lea eax, [ebp - 0x64]
call fcn.00404c14
mov edx, dword [ebp - 0x64]
lea eax, [ebp - 0x44]
call fcn.00404cf4
inc edi
dec esi
jne 0x4d09ee
lea eax, [ebp - 0x44]
mov ecx, dword [ebp - 0x44]
mov edx, 0x4d0de0
call fcn.00404d38
mov ecx, dword [ebp - 0x3c]
mov dl, 1
mov eax, dword [0x4403c0]
call fcn.00440470
mov ebx, eax
mov eax, dword [ebp - 0x44]
push eax
mov ecx, 0x4d0dbc
mov edx, 0x4d0dd0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 4]
mov eax, ebx
call fcn.00403c18
jmp 0x4d0d09
mov eax, dword [ebp - 0x28]
dec eax
sub eax, 0x1e
jae 0x4d0d09
call fcn.00402bc8
mov eax, 0x3c
call fcn.00403274
mov ecx, 0x14
cdq
idiv ecx
mov ebx, edx
add ebx, 0x1e
jno 0x4d0a8e
call fcn.00403b58
call fcn.0040b394
fild dword [ebp - 0x28]
fsubp st(1)
fadd dword [0x4d0de4]
fstp qword [ebp - 0x18]
wait
push 0
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad4d8
mov ecx, ebx
mov edx, dword [ebp - 0x28]
call fcn.0040af80
fadd qword [ebp - 0x18]
fstp qword [ebp - 0x18]
wait
push dword [ebp - 0x14]
push dword [ebp - 0x18]
lea eax, [ebp - 0x38]
call fcn.004d6190
lea eax, [ebp - 0x38]
push eax
push 0
push 0
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_SetFileTime
mov byte [ebp - 1], 1
mov eax, dword [ebp - 0x28]
mov dword [esi], eax
jmp 0x4d0d09
call fcn.0040b394
call fcn.00402c9c
push edx
push eax
fld qword [ebp - 0x20]
call fcn.00402c9c
sub dword [esp], eax
sbb dword [esp + 4], edx
pop eax
pop edx
add eax, 1
adc edx, 0
jno 0x4d0b17
call fcn.00403b58
mov ebx, eax
cmp edi, ebx
jg 0x4d0b29
mov eax, ebx
dec eax
sub eax, 0x1e
jb 0x4d0bdd
cmp ebx, 0x1e
jle 0x4d0d09
push 0
call fcn.0040b3f4
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.004ad550
movzx eax, ax
mov ecx, 0xa
xor edx, edx
div ecx
add edx, 0x32
jno 0x4d0b5b
call fcn.00403b58
push edx
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad4d8
mov dx, 0x3b
pop ecx
call fcn.0040af80
fstp qword [ebp - 0x60]
wait
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad42c
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x18]
wait
push dword [ebp - 0x14]
push dword [ebp - 0x18]
lea eax, [ebp - 0x38]
call fcn.004d6190
lea eax, [ebp - 0x38]
push eax
push 0
push 0
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_SetFileTime
mov ecx, dword [ebp - 0x3c]
mov dl, 1
mov eax, dword [0x4403c0]
call fcn.00440470
mov ebx, eax
test ebx, ebx
je 0x4d0bd1
push 0x5f5e0ff
mov ecx, 0x4d0dbc
mov edx, 0x4d0dd0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, ebx
call fcn.00403c18
jmp 0x4d0d09
cmp edi, ebx
je 0x4d0c37
push 0
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad528
push eax
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad4d8
mov edx, ebx
pop ecx
call fcn.0040af80
fstp qword [ebp - 0x60]
wait
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004ad42c
fadd qword [ebp - 0x60]
fstp qword [ebp - 0x18]
wait
push dword [ebp - 0x14]
push dword [ebp - 0x18]
lea eax, [ebp - 0x38]
call fcn.004d6190
lea eax, [ebp - 0x38]
push eax
push 0
push 0
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_SetFileTime
mov byte [ebp - 1], 1
mov dword [esi], ebx
call fcn.0040b394
mov dword [ebp - 0x68], ebx
fild dword [ebp - 0x68]
fsubp st(1)
fadd dword [0x4d0de4]
fstp qword [ebp - 0x18]
wait
fld qword [ebp - 0x18]
call fcn.00402c9c
push edx
push eax
lea eax, [ebp - 0x48]
call fcn.004095f4
lea eax, [ebp - 0x44]
call fcn.00404a2c
mov eax, dword [ebp - 0x48]
call fcn.00404cec
mov esi, eax
test esi, esi
jle 0x4d0caf
mov edi, 1
mov eax, dword [ebp - 0x48]
call fcn.00404cec
sub eax, edi
jno 0x4d0c92
call fcn.00403b58
mov edx, dword [ebp - 0x48]
mov dl, byte [edx + eax]
lea eax, [ebp - 0x6c]
call fcn.00404c14
mov edx, dword [ebp - 0x6c]
lea eax, [ebp - 0x44]
call fcn.00404cf4
inc edi
dec esi
jne 0x4d0c81
lea edx, [ebp - 0x48]
mov eax, ebx
call fcn.00409508
cmp ebx, 0xa
jge 0x4d0cce
lea eax, [ebp - 0x48]
mov ecx, dword [ebp - 0x48]
mov edx, 0x4d0df0
call fcn.00404d38
lea eax, [ebp - 0x44]
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x48]
call fcn.00404d38
mov ecx, dword [ebp - 0x3c]
mov dl, 1
mov eax, dword [0x4403c0]
call fcn.00440470
mov ebx, eax
mov eax, dword [ebp - 0x44]
push eax
mov ecx, 0x4d0dbc
mov edx, 0x4d0dd0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 4]
mov eax, ebx
call fcn.00403c18
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4d0d27
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_CloseHandle_1
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4d0d95
lea eax, [ebp - 0x6c]
call fcn.00404a2c
lea eax, [ebp - 0x64]
call fcn.00404a2c
lea eax, [ebp - 0x58]
mov edx, 2
call fcn.00404a50
lea eax, [ebp - 0x4c]
mov edx, 5
call fcn.00404a50
ret