Function at 0x415df5
Capabilities:
Timestomp file

Disassembly:
mov eax, 0x4a0b1c
call fcn.00497cb0
mov eax, 0x12c0
call fcn.00497f60
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [sym.imp.MSVCR71.dll_strncpy]
xor ebx, ebx
add eax, 4
push 0x7ff
push eax
lea eax, [ebp - 0x918]
push eax
mov byte [ebp - 0xd], bl
mov byte [ebp - 0xe], bl
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
call esi
lea eax, [ebp - 0x918]
add esp, 0xc
push eax
mov byte [ebp - 0x119], bl
call fcn.004822e0
cmp byte [ebp - 0x918], bl
pop ecx
jne 0x415e6b
mov ecx, 0x469
jmp 0x4161c5
push ebx
push ebx
lea eax, [ebp - 0x918]
push 0x20
push eax
call fcn.00483d45
add esp, 0x10
cmp eax, ebx
mov dword [ebp - 0x14], eax
je 0x416086
lea eax, [ebp - 0x918]
push eax
call sub.MSVCR71.dll_strlen
cmp eax, 0x10
pop ecx
jb 0x416086
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x918]
sub eax, ecx
cmp eax, 0xe
jl 0x416086
mov byte [ebp + 0xb], 1
xor ebx, ebx
movsx eax, byte [ebp + ebx - 0x918]
push eax
call dword [sym.imp.MSVCR71.dll_isdigit]
test eax, eax
pop ecx
jne 0x415ed0
mov byte [ebp + 0xb], al
inc ebx
cmp ebx, 0xe
jl 0x415eb9
cmp byte [ebp + 0xb], 0
je 0x416086
push 4
lea eax, [ebp - 0x918]
push eax
lea eax, [ebp - 0x20]
push eax
call esi
mov ebx, dword [sym.imp.MSVCR71.dll_atoi]
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov byte [ebp - 0x1c], 0
call ebx
pop ecx
mov dword [ebp - 0x30], eax
push 2
lea eax, [ebp - 0x914]
push eax
lea eax, [ebp - 0x20]
push eax
call esi
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov byte [ebp - 0x1e], 0
call ebx
pop ecx
mov dword [ebp - 0x2c], eax
push 2
lea eax, [ebp - 0x912]
push eax
lea eax, [ebp - 0x20]
push eax
call esi
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov byte [ebp - 0x1e], 0
call ebx
pop ecx
mov dword [ebp - 0x28], eax
push 2
lea eax, [ebp - 0x910]
push eax
lea eax, [ebp - 0x20]
push eax
call esi
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov byte [ebp - 0x1e], 0
call ebx
pop ecx
mov dword [ebp - 0x44], eax
push 2
lea eax, [ebp - 0x90e]
push eax
lea eax, [ebp - 0x20]
push eax
call esi
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov byte [ebp - 0x1e], 0
call ebx
pop ecx
mov dword [ebp - 0x38], eax
push 2
lea eax, [ebp - 0x90c]
push eax
lea eax, [ebp - 0x20]
push eax
call esi
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
mov byte [ebp - 0x1e], 0
call ebx
cmp dword [ebp - 0x30], 0x7bc
pop ecx
mov dword [ebp - 0x34], eax
jl 0x415fe5
cmp dword [ebp - 0x30], 0x81b
jg 0x415fe5
cmp dword [ebp - 0x2c], 1
jl 0x415fe5
cmp dword [ebp - 0x2c], 0xc
jg 0x415fe5
cmp dword [ebp - 0x28], 1
jl 0x415fe5
cmp dword [ebp - 0x28], 0x1f
jg 0x415fe5
cmp dword [ebp - 0x38], 0
jl 0x415fe5
cmp dword [ebp - 0x38], 0x3b
jg 0x415fe5
test eax, eax
jl 0x415fe5
cmp eax, 0x3b
jle 0x415fe9
mov byte [ebp + 0xb], 0
cmp byte [ebp + 0xb], 0
je 0x416086
mov cl, byte [ebp - 0x90a]
cmp cl, 0x20
je 0x41604b
cmp cl, 0x2d
je 0x416008
cmp cl, 0x2b
jne 0x416047
xor eax, eax
test cl, cl
je 0x416024
cmp eax, 8
jge 0x416024
mov byte [ebp + eax - 0x20], cl
mov cl, byte [ebp + eax - 0x909]
inc eax
cmp cl, 0x20
jne 0x41600a
mov byte [ebp + eax - 0x20], 0
lea eax, [ebp - 0x20]
push eax
call ebx
cmp eax, 0xfffffc18
pop ecx
mov dword [ebp - 0x24], eax
jl 0x416047
cmp eax, 0x3e8
jg 0x416047
mov byte [ebp - 0xe], 1
jmp 0x41604b
mov byte [ebp + 0xb], 0
cmp byte [ebp + 0xb], 0
je 0x416086
lea eax, [ebp - 0x918]
push eax
mov byte [ebp - 0xd], 1
call sub.MSVCR71.dll_strlen
inc eax
pop ecx
push eax
mov eax, dword [ebp - 0x14]
inc eax
push eax
lea eax, [ebp - 0x918]
push eax
call dword [sym.imp.MSVCR71.dll_memmove]
add esp, 0xc
lea eax, [ebp - 0x918]
push eax
call fcn.004822e0
pop ecx
cmp byte [edi + 0x8d2e], 0
jne 0x41609f
cmp byte [ebp - 0xd], 0
je 0x41609f
mov ecx, 0x4b1
jmp 0x4161c5
lea eax, [ebp - 0x918]
push eax
lea ecx, [ebp - 0x98]
call fcn.00483361
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x114]
xor ebx, ebx
push eax
mov dword [ebp - 4], ebx
push dword [edi + 0x84b8]
call fcn.00404e9e
lea esi, [edi + 0x8d50]
mov byte [ebp - 4], 1
call fcn.004047cd
lea eax, [ebp - 0x114]
push eax
mov byte [ebp - 4], bl
call fcn.00414041
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x98]
call fcn.004835c3
cmp byte [ebp - 0xd], bl
mov eax, dword [edi + 0x815c]
mov dword [ebp - 0xa7c], eax
mov dword [ebp - 0x12c8], 0x14
je 0x416121
mov dword [ebp - 0x12c8], 7
lea eax, [edi + 0x8e31]
push eax
lea eax, [ebp - 0x12c3]
push eax
call sub.MSVCR71.dll_strcpy
cmp dword [edi + 0x8d6c], 0x10
pop ecx
pop ecx
jb 0x416147
mov eax, dword [edi + 0x8d58]
jmp 0x41614d
lea eax, [edi + 0x8d58]
push eax
lea eax, [ebp - 0x127c]
push eax
call sub.MSVCR71.dll_strcpy
lea eax, [edi + 0x8449]
push eax
lea eax, [ebp - 0x1291]
push eax
call sub.MSVCR71.dll_strcpy
mov eax, dword [edi + 0x8164]
mov dword [ebp - 0x1280], eax
mov al, byte [0x4bb21b]
mov byte [ebp - 0x12c4], al
mov eax, dword [0x4bb2cc]
add esp, 0x10
cmp eax, ebx
je 0x41619d
lea ecx, [ebp - 0x12c8]
push ecx
push eax
call fcn.0042b730
cmp byte [ebp - 0x12c4], 0
jne 0x4161b5
cmp dword [edi + 0x84c0], ebx
jne 0x4161b5
mov ecx, 0x46a
jmp 0x4161c5
mov eax, esi
call fcn.00412f5a
test al, al
je 0x4161d1
mov ecx, 0x4a2
push 0xffffffffffffffff
call fcn.004075db
jmp 0x416543
push esi
call fcn.00404e6e
mov byte [ebp + 0xb], al
pop ecx
mov eax, esi
call fcn.00404e88
cmp byte [ebp + 0xb], 0
jne 0x416204
test al, al
jne 0x416204
lea eax, [edi + 0x8d78]
cmp dword [eax + 0x18], 0x10
jb 0x41628b
mov eax, dword [eax + 4]
jmp 0x41628e
mov dword [ebp - 0x14], ebx
call fcn.0046802b
test al, al
je 0x416217
mov dword [ebp - 0x14], 0x2000000
cmp byte [ebp - 0xd], 0
mov esi, dword [edi + 0x84c0]
je 0x416421
cmp esi, ebx
je 0x41623d
cmp byte [ebp - 0x12c4], 0
jne 0x41623d
mov bl, 1
call fcn.00456f34
xor ebx, ebx
cmp dword [edi + 0x8d6c], 0x10
jb 0x41624e
mov eax, dword [edi + 0x8d58]
jmp 0x416254
lea eax, [edi + 0x8d58]
push ebx
push dword [ebp - 0x14]
push 3
push ebx
push 1
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
mov dword [ebp - 0x14], eax
jne 0x416298
mov esi, dword [edi + 0x84c0]
cmp esi, ebx
je 0x4161ec
xor bl, bl
call fcn.00456f34
jmp 0x4161ec
add eax, 4
mov ecx, 0x46b
jmp 0x416524
mov ax, word [ebp - 0x30]
mov word [ebp - 0x5c], ax
mov ax, word [ebp - 0x2c]
mov word [ebp - 0x5a], ax
mov ax, word [ebp - 0x28]
mov word [ebp - 0x56], ax
mov ax, word [ebp - 0x44]
mov word [ebp - 0x54], ax
mov ax, word [ebp - 0x38]
mov word [ebp - 0x52], ax
mov ax, word [ebp - 0x34]
mov word [ebp - 0x50], ax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x5c]
push eax
mov byte [ebp + 0xb], 0
mov word [ebp - 0x4e], bx
mov word [ebp - 0x58], bx
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
je 0x4163c6
cmp byte [ebp - 0xe], 0
je 0x41632c
mov eax, dword [ebp - 0x24]
push ebx
cdq
push 0x23c34600
push edx
push eax
call fcn.00497d80
push 1
push ebx
push ebx
push dword [ebp - 0x3c]
mov esi, eax
mov eax, edx
mov dword [ebp - 0x24], eax
call fcn.00497d80
mov ecx, dword [ebp - 0x40]
sub eax, esi
mov esi, dword [ebp - 0x24]
sbb edx, esi
xor esi, esi
add eax, ecx
adc edx, esi
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
xor ebx, ebx
cmp byte [edi + 0x8d2f], 0
jne 0x416398
lea eax, [ebp - 0x4c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
add eax, 0x18711a00
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x4c]
adc ecx, 2
push eax
mov dword [ebp - 0x48], ecx
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
jge 0x416398
mov esi, dword [edi + 0x84c0]
cmp esi, ebx
je 0x416376
xor bl, bl
call fcn.00456f34
push 0xffffffffffffffff
mov ecx, 0x4a9
call fcn.004075db
push eax
mov ecx, edi
call fcn.0040e512
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x41654b
lea eax, [ebp - 0x40]
push eax
push eax
push eax
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_SetFileTime]
test eax, eax
je 0x4163c6
push 0xffffffffffffffff
push 0x15e
push 0x489
lea esi, [ebp - 0x918]
call fcn.004076a1
mov byte [ebp + 0xb], 1
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [edi + 0x84c0]
cmp esi, ebx
je 0x4163e0
xor bl, bl
call fcn.00456f34
cmp byte [ebp + 0xb], 0
jne 0x41653d
push 0xffffffffffffffff
push 0x15e
push 0x48a
lea esi, [ebp - 0xa78]
call fcn.004076a1
lea eax, [edi + 0x8d78]
cmp dword [eax + 0x18], 0x10
jb 0x416412
mov eax, dword [eax + 4]
jmp 0x416415
add eax, 4
push eax
lea eax, [ebp - 0xa78]
jmp 0x41652c
cmp esi, ebx
mov byte [ebp + 0xb], 0
je 0x41643b
cmp byte [ebp - 0x12c4], 0
jne 0x41643b
mov bl, 1
call fcn.00456f34
xor ebx, ebx
cmp dword [edi + 0x8d6c], 0x10
jb 0x41644c
mov eax, dword [edi + 0x8d58]
jmp 0x416452
lea eax, [edi + 0x8d58]
push ebx
push dword [ebp - 0x14]
push 3
push ebx
push 3
push accept
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
mov esi, dword [sym.imp.MSVCR71.dll_sprintf]
mov dword [ebp - 0x24], eax
je 0x4164f4
lea ecx, [ebp - 0x74]
push ecx
push ebx
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
je 0x4164eb
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
je 0x4164eb
movzx eax, word [ebp - 0x60]
push eax
movzx eax, word [ebp - 0x62]
push eax
movzx eax, word [ebp - 0x64]
push eax
movzx eax, word [ebp - 0x66]
push eax
movzx eax, word [ebp - 0x6a]
push eax
movzx eax, word [ebp - 0x6c]
push eax
lea eax, [ebp - 0xcc]
push 0x4a4fdc
push eax
call esi
add esp, 0x20
lea eax, [ebp - 0xcc]
push eax
push 0xffffffffffffffff
mov ecx, 0x46c
call fcn.004075db
push eax
lea eax, [ebp - 0x918]
push eax
call esi
add esp, 0xc
mov byte [ebp + 0xb], 1
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [edi + 0x84c0]
cmp esi, ebx
je 0x416505
xor bl, bl
call fcn.00456f34
cmp byte [ebp + 0xb], 0
jne 0x41653d
lea eax, [edi + 0x8d78]
cmp dword [eax + 0x18], 0x10
jb 0x41651c
mov eax, dword [eax + 4]
jmp 0x41651f
add eax, 4
mov ecx, 0x46d
push eax
push 0xffffffffffffffff
call fcn.004075db
push eax
lea eax, [ebp - 0x918]
push eax
call dword [sym.imp.MSVCR71.dll_sprintf]
add esp, 0xc
lea eax, [ebp - 0x918]
mov ecx, edi
push eax
call fcn.0040e512
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 4