Function at 0x412ea5
Capabilities:
Contain obfuscated stackstrings
Persist via run registry key

Disassembly:
push ebp
sub esp, 0x74
lea ebp, [esp - 4]
mov eax, dword [0x4566c8]
xor eax, ebp
mov dword [ebp + 0x74], eax
push 0x70
mov eax, 0x43e128
call fcn.004212a4
call fcn.00407829
push str.step_remove_firewall
push 0x447208
call fcn.0040a84b
call fcn.0040a912
push eax
push str.RemoveFirewallCallouts____return__d
call fcn.0040a84b
add esp, 0x10
push str.DrWebLwf
lea ecx, [ebp - 0x44]
call fcn.00405457
lea eax, [ebp - 0x44]
push eax
call fcn.004086e3
pop ecx
xor edi, edi
xor ebx, ebx
push edi
inc ebx
push ebx
lea ecx, [ebp - 0x44]
call fcn.00403f19
cmp dword [0x455de0], 8
mov eax, dword [0x455dcc]
jae 0x412f23
mov eax, 0x455dcc
push 0x447274
push eax
call fcn.0040b252
cmp dword [0x455de0], 8
mov eax, dword [0x455dcc]
pop ecx
pop ecx
jae 0x412f43
mov eax, 0x455dcc
push str.drweblwf.sys
push eax
call fcn.0040b0ff
pop ecx
pop ecx
push str.SYSTEMCurrentControlSetServicesDrWebLwf
lea ecx, [ebp - 0x44]
call fcn.00405457
lea eax, [ebp - 0x44]
push eax
mov esi, reloc.OLEAUT32.dll_SysReAllocString
push esi
mov dword [ebp - 4], edi
call fcn.0040f3a1
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
push edi
push ebx
lea ecx, [ebp - 0x44]
call fcn.00403f19
push str.SYSTEMCurrentControlSetEnumRootLEGACY_DRWEBLWF
lea ecx, [ebp - 0x44]
call fcn.00405457
lea eax, [ebp - 0x44]
push eax
push esi
mov dword [ebp - 4], ebx
call fcn.0040f3a1
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
push edi
push ebx
lea ecx, [ebp - 0x44]
call fcn.00403f19
lea eax, [ebp + 0x3c]
push 0x455040
push eax
call fcn.0040aa05
pop ecx
pop ecx
push edi
lea ecx, [ebp + 0x20]
mov dword [ebp - 4], 2
mov dword [ebp + 0x38], 7
call fcn.00402e07
push str.drw_remover.exe
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 3
call fcn.00405457
lea eax, [ebp + 0x20]
push eax
lea eax, [ebp - 0x44]
push eax
push ebx
mov byte [ebp - 4], 4
call fcn.004067aa
add esp, 0xc
push edi
push ebx
lea ecx, [ebp - 0x44]
mov dword [ebp], eax
mov byte [ebp - 4], 3
call fcn.00403f19
lea eax, [ebp + 0x3c]
push eax
push dword [ebp]
call fcn.004066d4
cmp dword [ebp + 0x54], 8
mov eax, dword [ebp + 0x40]
pop ecx
pop ecx
jae 0x413021
lea eax, [ebp + 0x40]
push eax
push str.DrWEBInstaller::UninstallComponent_id___s_
call fcn.0040a84b
push ebx
push dword [ebp]
call fcn.00406685
lea eax, [ebp - 0x28]
push 0x455050
push eax
call fcn.0040aa05
add esp, 0x18
cmp dword [eax + 0x18], 8
mov byte [ebp - 4], 5
jb 0x413055
mov eax, dword [eax + 4]
jmp 0x413058
add eax, 4
cmp dword [0x455da8], 8
mov ecx, dword [0x455d94]
jae 0x41306c
mov ecx, 0x455d94
push eax
push ecx
call fcn.0040b252
pop ecx
pop ecx
push edi
push ebx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00403f19
push 0x4473e8
lea ecx, [ebp - 0x44]
call fcn.00405457
lea eax, [ebp - 0x7c]
push 0x455070
push eax
mov byte [ebp - 4], 6
call fcn.0040aa05
lea ecx, [ebp - 0x44]
push ecx
push eax
lea eax, [ebp + 0x58]
push esi
push eax
mov byte [ebp - 4], 7
call fcn.00409234
add esp, 0x18
push edi
push ebx
lea ecx, [ebp - 0x7c]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xa
call fcn.00403f19
cmp dword [ebp + 0x6c], edi
je 0x413115
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0040afb5
pop ecx
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp + 0x58]
mov byte [ebp - 4], 0xb
call fcn.004046a3
push edi
push ebx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xa
call fcn.00403f19
cmp dword [ebp + 0x70], 8
mov eax, dword [ebp + 0x5c]
jae 0x41310e
lea eax, [ebp + 0x5c]
push eax
call fcn.0040b15d
pop ecx
lea ecx, [ebp + 0x58]
call fcn.00415809
push 0x4473fc
lea ecx, [ebp - 0x60]
call fcn.00405457
lea eax, [ebp + 4]
push 0x4550c8
push eax
mov byte [ebp - 4], 0xc
call fcn.0040aa05
lea ecx, [ebp - 0x60]
push ecx
push eax
lea eax, [ebp - 0x28]
push esi
push eax
mov byte [ebp - 4], 0xd
call fcn.00409234
add esp, 0x18
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp + 0x58]
mov byte [ebp - 4], 0xe
call fcn.004046a3
push edi
push ebx
lea ecx, [ebp - 0x28]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp + 4]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xa
call fcn.00403f19
cmp dword [ebp + 0x6c], edi
je 0x4131c9
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp + 4]
push eax
call fcn.0040afb5
pop ecx
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp + 0x58]
mov byte [ebp - 4], 0xf
call fcn.004046a3
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
cmp dword [ebp + 0x70], 8
mov eax, dword [ebp + 0x5c]
jae 0x4131c2
lea eax, [ebp + 0x5c]
push eax
call fcn.0040b15d
pop ecx
lea ecx, [ebp + 0x58]
call fcn.00415809
push str.ImagePath
lea ecx, [ebp - 0x60]
call fcn.00405457
lea eax, [ebp - 0x28]
push 0x455120
push eax
mov byte [ebp - 4], 0x10
call fcn.0040aa05
lea ecx, [ebp - 0x60]
push ecx
push eax
lea eax, [ebp + 4]
push esi
push eax
mov byte [ebp - 4], 0x11
call fcn.00409234
add esp, 0x18
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp + 0x58]
mov byte [ebp - 4], 0x12
call fcn.004046a3
push edi
push ebx
lea ecx, [ebp + 4]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp - 0x28]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xa
call fcn.00403f19
cmp dword [ebp + 0x6c], edi
je 0x41327d
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp + 4]
push eax
call fcn.0040afb5
pop ecx
pop ecx
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp + 0x58]
mov byte [ebp - 4], 0x13
call fcn.004046a3
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
cmp dword [ebp + 0x70], 8
mov eax, dword [ebp + 0x5c]
jae 0x413276
lea eax, [ebp + 0x5c]
push eax
call fcn.0040b15d
pop ecx
lea eax, [ebp + 4]
push 0x45517c
push eax
call fcn.0040aa05
pop ecx
pop ecx
cmp dword [eax + 0x18], 8
mov byte [ebp - 4], 0x14
jb 0x41329c
mov eax, dword [eax + 4]
jmp 0x41329f
add eax, 4
cmp dword [0x455de0], 8
mov ecx, dword [0x455dcc]
jae 0x4132b3
mov ecx, 0x455dcc
push eax
push ecx
call fcn.0040b0ff
pop ecx
pop ecx
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455194
push eax
call fcn.0040aa05
pop ecx
pop ecx
cmp dword [eax + 0x18], 8
mov byte [ebp - 4], 0x15
jb 0x4132e9
mov eax, dword [eax + 4]
jmp 0x4132ec
add eax, 4
cmp dword [0x455de0], 8
mov ecx, dword [0x455dcc]
jae 0x413300
mov ecx, 0x455dcc
push eax
push ecx
call fcn.0040b0ff
pop ecx
pop ecx
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4551b4
push eax
call fcn.0040aa05
pop ecx
pop ecx
cmp dword [eax + 0x18], 8
mov byte [ebp - 4], 0x16
jb 0x413336
mov eax, dword [eax + 4]
jmp 0x413339
add eax, 4
cmp dword [0x455de0], 8
mov ecx, dword [0x455dcc]
jae 0x41334d
mov ecx, 0x455dcc
push eax
push ecx
call fcn.0040b0ff
pop ecx
pop ecx
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4551cc
push eax
call fcn.0040aa05
pop ecx
pop ecx
cmp dword [eax + 0x18], 8
mov byte [ebp - 4], 0x17
jb 0x413383
mov eax, dword [eax + 4]
jmp 0x413386
add eax, 4
cmp dword [0x455de0], 8
mov ecx, dword [0x455dcc]
jae 0x41339a
mov ecx, 0x455dcc
push eax
push ecx
call fcn.0040b0ff
pop ecx
pop ecx
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4551ec
push eax
call fcn.0040aa05
push eax
mov byte [ebp - 4], 0x18
call fcn.00410905
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x45520c
push eax
call fcn.0040aa05
push eax
mov byte [ebp - 4], 0x19
call fcn.00410905
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455228
push eax
call fcn.0040aa05
push eax
mov byte [ebp - 4], 0x1a
call fcn.00410905
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4551ec
push eax
call fcn.0040aa05
push eax
mov byte [ebp - 4], 0x1b
call fcn.0040b1ef
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x45520c
push eax
call fcn.0040aa05
push eax
mov byte [ebp - 4], 0x1c
call fcn.0040b1ef
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
push 0x455228
lea eax, [ebp + 4]
push eax
call fcn.0040aa05
push eax
mov byte [ebp - 4], 0x1d
call fcn.0040b1ef
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455244
push eax
call fcn.0040aa05
push eax
call fcn.004086e3
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455254
push eax
call fcn.0040aa05
push eax
call fcn.004086e3
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455264
push eax
call fcn.0040aa05
push eax
call fcn.004086e3
add esp, 0xc
push edi
push ebx
lea ecx, [ebp + 4]
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455070
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x1e
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455280
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x1f
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4550c8
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x20
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4552e8
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x21
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455120
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x22
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455350
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x23
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4553c0
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x24
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
lea eax, [ebp + 4]
push 0x455440
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x25
call fcn.0040f3a1
add esp, 0x10
mov byte [ebp - 4], 0xa
push edi
push ebx
lea ecx, [ebp + 4]
call fcn.00403f19
lea eax, [ebp + 4]
push 0x4554c0
push eax
call fcn.0040aa05
push eax
push esi
mov byte [ebp - 4], 0x26
call fcn.0040f3a1
add esp, 0x10
push edi
push ebx
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xa
call fcn.00403f19
push str.FirewallNotify
lea ecx, [ebp - 0x28]
call fcn.00405457
push 0x447448
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x27
call fcn.00405457
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x60]
push eax
push esi
call fcn.004088a8
add esp, 0xc
push edi
push ebx
lea ecx, [ebp - 0x60]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xa
call fcn.00403f19
push str.Firewall
lea ecx, [ebp - 0x60]
call fcn.00405457
push 0x4474b8
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x28
call fcn.00405457
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.004088a8
add esp, 0xc
push edi
push ebx
lea ecx, [ebp - 0x28]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xa
call fcn.00403f19
push str.SOFTWAREMicrosoftWindowsCurrentVersionRun
lea ecx, [ebp - 0x28]
call fcn.00405457
lea eax, [ebp + 4]
push 0x455544
push eax
mov byte [ebp - 4], 0x29
call fcn.0040aa05
push eax
lea eax, [ebp - 0x28]
push eax
push esi
call fcn.004088a8
add esp, 0x14
push edi
push ebx
lea ecx, [ebp + 4]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp - 0x28]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp + 0x58]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp + 0x20]
call fcn.00403f19
push edi
push ebx
lea ecx, [ebp + 0x3c]
call fcn.00403f19
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x74]
xor ecx, ebp
call fcn.0042090d
add ebp, 0x78
leave
ret