Function at 0x41c520
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x31c
mov eax, dword [0x448924]
push ebx
push esi
mov esi, ecx
push edi
mov dword [esp + 0x324], eax
mov dword [esi + 0x2c], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x24]
shr edx, 6
test ecx, ecx
mov dword [esp + 0xc], edx
lea edx, [eax + 1]
mov dword [esi + 0x28], edx
jne 0x41c58c
push eax
lea eax, [esi + 0x138]
push eax
lea ecx, [esp + 0x118]
push str._s_d.log
push ecx
call fcn.0040693d
add esp, 0x10
jmp 0x41c68e
lea edx, [esp + 0x10]
xor eax, eax
mov ecx, 0x20
lea edi, [esp + 0x10]
push edx
rep stosd dword es:[edi], eax
call fcn.0042527f
mov bl, byte [esp + 0x1b]
mov al, byte [esp + 0x14]
mov dl, byte [esp + 0x15]
mov cl, byte [esp + 0x1a]
mov byte [esp + 0x15], bl
mov bl, byte [esp + 0x17]
mov byte [esp + 0x17], al
mov al, byte [esp + 0x18]
add esp, 4
test cl, cl
mov byte [esp + 0x17], al
mov byte [esp + 0x10], cl
mov byte [esp + 0x16], bl
mov byte [esp + 0x14], dl
lea eax, [esp + 0x10]
je 0x41c5f0
mov edi, edi
cmp byte [eax], 0x2f
jne 0x41c5e8
mov byte [eax], 0x2d
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c5e0
cmp dword [esi + 0x24], 3
jne 0x41c668
xor eax, eax
mov ecx, 0x20
lea edi, [esp + 0x90]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x90]
push eax
call fcn.00425218
mov cl, byte [esp + 0x94]
add esp, 4
test cl, cl
lea eax, [esp + 0x90]
je 0x41c638
cmp byte [eax], 0x3a
jne 0x41c630
mov byte [eax], 0x2e
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41c628
mov ecx, dword [esp + 0xc]
push ecx
lea edx, [esi + 0x138]
push edx
lea eax, [esp + 0x98]
push eax
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x120]
push str.__s__s__s_d.log
push edx
call fcn.0040693d
add esp, 0x18
jmp 0x41c68e
mov eax, dword [esp + 0xc]
push eax
lea ecx, [esi + 0x138]
push ecx
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x11c]
push str.__s__s_d.log
push eax
call fcn.0040693d
add esp, 0x14
lea ecx, [esp + 0x110]
push ecx
lea edx, [esi + 0x34]
push edx
lea eax, [esp + 0x220]
push str._s_s
push eax
call fcn.0040693d
mov eax, dword [esi + 0x20]
add esp, 0x10
test eax, eax
je 0x41c746
lea ecx, [esp + 0x110]
push ecx
push 0x439204
push eax
call fcn.004251ba
mov edx, dword [esi + 0x20]
push edx
call fcn.0041212d
lea eax, [esp + 0x228]
push 0x439200
push eax
call fcn.004251a7
add esp, 0x18
test eax, eax
mov dword [esi + 0x20], eax
jne 0x41c715
mov ecx, dword [esi + 0x1c]
push 0x14
push 0x4391f8
push 0x4391d8
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
jne 0x41c715
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [esi + 0x20]
lea edx, [esp + 0x110]
push edx
push 0x4391b4
push eax
call fcn.004251ba
add esp, 0xc
mov eax, 1
mov ecx, dword [esp + 0x324]
call fcn.0040660b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x218]
push 0x439200
push ecx
call fcn.004251a7
add esp, 8
test eax, eax
mov dword [esi + 0x20], eax
jne 0x41c78c
mov edx, dword [esi + 0x1c]
push eax
push 0x4391a8
push 0x43918c
push edx
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
mov ecx, dword [esp + 0x324]
call fcn.0040660b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x20026c]
test eax, eax
je 0x41c72e
call dword [sym.imp.KERNEL32.dll_AllocConsole]
test eax, eax
jne 0x41c7ca
push eax
mov eax, dword [esi + 0x1c]
push 0x4391f8
push 0x439178
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
mov ecx, dword [esp + 0x324]
call fcn.0040660b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xfffffffffffffff5
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
cmp eax, 0xffffffff
mov dword [esi + 0x18], eax
jne 0x41c72e
mov ecx, dword [esi + 0x1c]
push 0
push 0x4391f8
push 0x439164
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [esp + 0x324]
xor eax, eax
call fcn.0040660b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret