Function at 0x455f80
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa14
mov eax, dword [0x6aae14]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0x1c]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 0x24]
mov dword [ebp - 0xa14], eax
test esi, esi
je 0x45642f
cmp byte [esi], 0
je 0x45642f
push esi
call fcn.004dad50
add esp, 4
test eax, eax
je 0x455fe1
test edi, edi
je 0x455fe1
push edi
lea ecx, [ebp - 0xa0c]
push str.UTF8:_s
push ecx
call fcn.005dfb23
add esp, 0xc
jmp 0x455fef
push esi
lea edx, [ebp - 0xa0c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [ebp + 0x14], 0
mov dword [0x6e9080], eax
jne 0x45606f
mov edx, dword [ebp - 0xa14]
test edx, edx
je 0x45606f
cmp byte [edx], 0
je 0x45606f
mov eax, dword [0x733100]
mov ecx, 1
add dword [eax + 0x414], ecx
mov eax, dword [0x733100]
add dword [eax + 0x418], ecx
mov eax, dword [0x71de6c]
test eax, eax
je 0x45604e
push 0
push eax
push str.Incrementing_VirusBody_Count
push 0x6aec98
call fcn.004311c0
mov edx, dword [ebp - 0xa14]
add esp, 0x10
mov eax, dword [0x733100]
mov ecx, dword [eax + 0x43c]
mov eax, dword [ebp + 8]
push edi
push ecx
push edx
lea edx, [ebp - 0xa0c]
push edx
push eax
call fcn.00455830
add esp, 0x14
push esi
call fcn.004dad50
add esp, 4
test ebx, ebx
je 0x456129
test eax, eax
je 0x4560c4
test edi, edi
je 0x4560c4
push 0x20
push esi
call fcn.005e0940
add esp, 8
push edi
test eax, eax
je 0x4560ae
lea ecx, [ebp - 0x60c]
push str.UTF8:__s_
push ecx
call fcn.005dfb23
add esp, 0xc
jmp 0x4560f7
lea edx, [ebp - 0x60c]
push str.UTF8:_s
push edx
call fcn.005dfb23
add esp, 0xc
jmp 0x4560f7
push 0x20
push esi
call fcn.005e0940
add esp, 8
push esi
test eax, eax
je 0x4560ea
lea eax, [ebp - 0x60c]
push 0x61c29c
push eax
call fcn.005dfb23
add esp, 0xc
jmp 0x4560f7
lea ecx, [ebp - 0x60c]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [ebp + 0x20]
test eax, eax
jne 0x456108
mov eax, ebx
test eax, eax
je 0x4561a0
push eax
lea edx, [ebp - 0x60c]
push edx
lea eax, [ebp - 0xa0c]
push str._s__APid:__d_
push eax
call fcn.005dfb23
add esp, 0x10
jmp 0x4561b4
test eax, eax
je 0x45616d
test edi, edi
je 0x45616d
push 0x20
push esi
call fcn.005e0940
add esp, 8
push edi
test eax, eax
je 0x456157
lea eax, [ebp - 0x60c]
push str.UTF8:__s_
push eax
call fcn.005dfb23
add esp, 0xc
jmp 0x4561a0
lea ecx, [ebp - 0x60c]
push str.UTF8:_s
push ecx
call fcn.005dfb23
add esp, 0xc
jmp 0x4561a0
push 0x20
push esi
call fcn.005e0940
add esp, 8
push esi
test eax, eax
je 0x456193
lea edx, [ebp - 0x60c]
push 0x61c29c
push edx
call fcn.005dfb23
add esp, 0xc
jmp 0x4561a0
lea eax, [ebp - 0x60c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x60c]
push ecx
lea edx, [ebp - 0xa0c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [0x71d818], 1
jne 0x45642f
cmp dword [0x6e925c], 0
je 0x45642f
mov ebx, dword [ebp + 0x18]
cmp ebx, 1
je 0x4561ec
push 0x6e925c
call fcn.004da810
add esp, 4
cmp eax, 1
jne 0x45642f
mov eax, dword [0x733100]
push 0xa0
add eax, 0x212
push eax
lea ecx, [ebp - 0xa0c]
push ecx
call fcn.00455e20
mov eax, dword [ebp - 0xa14]
add esp, 0xc
test eax, eax
je 0x45622a
cmp byte [eax], 0
je 0x45622a
mov edx, dword [0x733100]
push eax
add edx, 0x311
push edx
jmp 0x45623a
mov eax, dword [0x733100]
push str.Unknown__DB_
add eax, 0x311
push eax
call fcn.005dfb23
mov eax, dword [0x71de6c]
add esp, 8
test eax, eax
je 0x456260
push 0
push eax
push str.Setting_Attention_Message_Event
push 0x6aec98
call fcn.004311c0
add esp, 0x10
push 0
push 0
mov dword [ebp - 0xa10], 0
call fcn.00504590
mov esi, eax
test esi, esi
jbe 0x45636c
push 0x103
lea ecx, [ebp - 0x20b]
push 0
push ecx
mov byte [ebp - 0x20c], 0
call fcn.005dfd60
push esi
push 0x683774
lea edx, [ebp - 0x20c]
push str._s._d
push edx
call fcn.005dfb23
add esp, 0x1c
cmp byte [ebp - 0x20c], 0
je 0x456440
cmp dword [0x71de6c], 0
je 0x4562f7
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x108]
push str.AttMsg_1_:__s
push ecx
call fcn.005dfb23
push 0
push 1
lea edx, [ebp - 0x108]
push edx
push 0x6aec98
call fcn.004311c0
add esp, 0x1c
lea eax, [ebp - 0x20c]
push eax
call fcn.004eae00
add esp, 4
mov dword [ebp - 0xa10], eax
test eax, eax
je 0x456319
cmp eax, 0xffffffff
jne 0x456446
push 0x103
lea ecx, [ebp - 0x107]
push 0
push ecx
mov byte [ebp - 0x108], 0
call fcn.005dfd60
lea edx, [ebp - 0x108]
push 0x104
push edx
call fcn.004d8c20
lea eax, [ebp - 0x108]
push eax
lea ecx, [ebp - 0x60c]
push str.Error_a_:_Unable_To_Open_The_Attention_Message_Event__Reason:__s
push ecx
call fcn.005dfb23
push 0
push 1
lea edx, [ebp - 0x60c]
push edx
jmp 0x456411
cmp dword [0x71de6c], 0
je 0x4563a3
push 0x683774
lea eax, [ebp - 0x108]
push str.AttMsg_2_:__s
push eax
call fcn.005dfb23
push 0
push 1
lea ecx, [ebp - 0x108]
push ecx
push 0x6aec98
call fcn.004311c0
add esp, 0x1c
push 0x683774
call fcn.004eae00
add esp, 4
mov dword [ebp - 0xa10], eax
test eax, eax
je 0x4563c3
cmp eax, 0xffffffff
jne 0x456446
push 0x103
lea eax, [ebp - 0x107]
push 0
push eax
mov byte [ebp - 0x108], 0
call fcn.005dfd60
lea ecx, [ebp - 0x108]
push 0x104
push ecx
call fcn.004d8c20
lea edx, [ebp - 0x108]
push edx
lea eax, [ebp - 0x60c]
push str.Error_b_:_Unable_To_Open_The_Attention_Message_Event__Reason:__s
push eax
call fcn.005dfb23
push 0
push 1
lea ecx, [ebp - 0x60c]
push ecx
push 0x6aec98
call fcn.004311c0
add esp, 0x30
test ebx, ebx
jne 0x45642f
push 0x6e925c
call fcn.004da880
add esp, 4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005dfbbe
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xa10]
test eax, eax
je 0x4564c3
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov esi, eax
mov eax, dword [0x71de6c]
test eax, eax
je 0x456472
push 0
push eax
push str.Event_Set..._Waiting_for_confirm...
push 0x6aec98
call fcn.004311c0
add esp, 0x10
mov edx, dword [ebp - 0xa10]
push edx
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [0x733100]
cmp byte [eax + 0x212], 0
je 0x4564ad
lea ecx, [ecx]
call edi
sub eax, esi
cmp eax, 0x14
jae 0x4564ad
call fcn.004e03f0
mov ecx, dword [0x733100]
cmp byte [ecx + 0x212], 0
jne 0x456490
lea edx, [ebp - 0xa10]
push edx
call fcn.004dca10
mov dword [ebp - 0xa10], 0
mov eax, dword [0x71de6c]
test eax, eax
je 0x45641e
push 0
push eax
push str.Popup_Displayed...
push 0x6aec98
call fcn.004311c0
add esp, 0x10
jmp 0x45641e