Function at 0x40874d
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x445448
push 0x4384bc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ecx
mov eax, 0x4150
call fcn.00436b30
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
xor esi, esi
mov dword [ebp - 4], esi
cmp dword [0x44d59c], 0xffffffff
je 0x408a9b
and byte [ebp - 0x312c], 0
mov ebx, 0x3ff
mov ecx, ebx
xor eax, eax
lea edi, [ebp - 0x312b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
and byte [ebp - 0x2128], 0
mov ecx, ebx
xor eax, eax
lea edi, [ebp - 0x2127]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
and byte [ebp - 0x1128], 0
mov ecx, ebx
xor eax, eax
lea edi, [ebp - 0x1127]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x3160], esi
and byte [ebp - 0x11c], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x11b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
cmp dword [ebp + 0xc], esi
je 0x408a9b
lea eax, [ebp + 0x10]
mov dword [ebp - 0x120], eax
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0xc]
push 0x1000
lea eax, [ebp - 0x312c]
push eax
call fcn.00437989
mov dword [ebp - 0x120], esi
lea eax, [ebp - 0x312c]
push eax
lea eax, [ebp - 0x2128]
push eax
call fcn.00407d70
lea eax, [ebp - 0x2128]
push eax
call fcn.00437370
add esp, 0x1c
mov dword [ebp - 0x3160], eax
push str.mass.dat
push 0x4629e4
push str._s_s
lea eax, [ebp - 0x11c]
push eax
call fcn.00437b3a
lea eax, [ebp - 0x315c]
push eax
lea eax, [ebp - 0x11c]
push eax
call fcn.00438189
add esp, 0x18
cmp dword [ebp + 8], 3
jne 0x408894
mov eax, dword [ebp - 0x3148]
cmp eax, dword [0x44d59c]
jb 0x408894
push 1
pop eax
jmp 0x408896
xor eax, eax
mov dword [ebp - 0x3138], eax
mov eax, dword [0x44d59c]
add eax, 0x100000
cmp dword [ebp - 0x3148], eax
sbb esi, esi
inc esi
mov dword [ebp - 0x3134], esi
push 0x44d620
call fcn.00437370
mov edi, eax
mov dword [esp], str._AhnLab_UpdateLog_
call fcn.00437370
pop ecx
lea eax, [edi + eax + 0x20]
mov dword [ebp - 0x212c], eax
add eax, 5
cmp dword [ebp - 0x3148], eax
sbb eax, eax
neg eax
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x3138], 0
jne 0x4089c8
test esi, esi
jne 0x4089c8
test eax, eax
jne 0x4089c8
and byte [ebp - 0x4164], al
mov ecx, ebx
lea edi, [ebp - 0x4163]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x4168], 3
and dword [ebp - 0x3164], esi
and dword [ebp - 0x3164], esi
mov eax, dword [ebp - 0x4168]
cmp dword [ebp - 0x3164], eax
jge 0x40898e
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x4164]
push eax
call fcn.00408491
pop ecx
pop ecx
test eax, eax
je 0x4089b5
lea eax, [ebp - 0x4164]
push eax
call fcn.00437370
pop ecx
cmp eax, 0x20
jne 0x40898e
lea eax, [ebp - 0x4164]
push eax
push 0x462ae8
call fcn.00437d80
pop ecx
pop ecx
test eax, eax
je 0x40898e
lea eax, [ebp - 0x4164]
push eax
call fcn.004081d3
pop ecx
mov eax, dword [ebp - 0x4168]
cmp dword [ebp - 0x3164], eax
jne 0x4089dd
push 0x462ae8
call fcn.00437370
pop ecx
test eax, eax
jne 0x4089dd
push str._MassUP__Fail:_Wrong_Header.
jmp 0x408a95
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
inc dword [ebp - 0x3164]
jmp 0x408931
lea eax, [ebp - 0x11c]
push eax
call fcn.004082a3
pop ecx
test eax, eax
je 0x408a9b
push 3
push 0x44d75c
lea eax, [ebp - 0x11c]
push eax
call fcn.00407cf9
add esp, 0xc
mov esi, eax
mov dword [ebp - 0x3130], esi
test esi, esi
je 0x408a9b
call fcn.00437d5d
cdq
push 0xf
pop ecx
idiv ecx
inc edx
mov byte [ebp - 0x124], dl
push dword [ebp - 0x124]
push dword [0x463ae8]
push dword [ebp - 0x3160]
lea eax, [ebp - 0x2128]
push eax
push dword [ebp - 0x3160]
lea eax, [ebp - 0x1128]
push eax
call fcn.00407888
add esp, 0x18
test eax, eax
jne 0x408a80
push esi
push 1
pop edi
push edi
push 4
lea eax, [ebp - 0x3160]
push eax
call fcn.00437e81
push esi
push edi
push edi
lea eax, [ebp - 0x124]
push eax
call fcn.00437e81
push esi
push edi
push dword [ebp - 0x3160]
lea eax, [ebp - 0x1128]
push eax
call fcn.00437e81
add esp, 0x30
push esi
call fcn.00437e04
pop ecx
jmp 0x408a9b
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret