Function at 0x4270a2
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
sub esp, 0x70
lea ebp, [esp - 4]
mov eax, dword [0x592894]
xor eax, ebp
mov dword [ebp + 0x70], eax
push 0x158
mov eax, 0x51f981
call fcn.0047b854
mov eax, dword [ebp + 0x7c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x80]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp + 0x84]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x88]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x8c]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 0x90]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 0x94]
xor esi, esi
push str.HKCUSoftwareClasses
lea ecx, [ebp + 0x38]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 4], esi
call fcn.0040979d
mov edi, str.AppID_
push edi
lea eax, [ebp + 0x38]
push eax
xor ebx, ebx
lea eax, [ebp - 0x38]
inc ebx
push eax
mov byte [ebp - 4], bl
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x64]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp + 0x54]
push eax
call fcn.00412aeb
add esp, 0xc
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 4
call fcn.0040365c
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, eax
call fcn.00426aef
push eax
lea eax, [ebp]
push eax
mov byte [ebp - 4], 5
call fcn.0043787a
pop ecx
pop ecx
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 7
call fcn.004036a7
lea eax, [ebp]
push eax
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
lea eax, [ebp - 0xa0]
push eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, eax
call fcn.00410418
push eax
lea eax, [ebp + 0x1c]
push eax
mov byte [ebp - 4], 8
call fcn.0043787a
pop ecx
pop ecx
push esi
push ebx
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xa
call fcn.004036a7
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
lea ecx, [ebp + 0x1c]
push ecx
push eax
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 0xb
call fcn.00412aeb
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0xc
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push str.AppID
lea ecx, [ebp - 0x5c]
call fcn.0040979d
push dword [ebp - 0x64]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0x54]
push eax
mov byte [ebp - 4], 0xd
call fcn.00426773
add esp, 0xc
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
mov edi, 0x52fe24
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x3c]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0xf
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push dword [ebp - 0x60]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x3c]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00412aeb
add esp, 0xc
push str.CLSID
push eax
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 0x11
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x12
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push dword [ebp - 0x14]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x40]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.00412aeb
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x14
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push dword [ebp - 0x60]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x40]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push str.CLSID
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x16
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x17
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push dword [ebp - 0x14]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x40]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push str.CurVer
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x19
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x1a
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push dword [ebp - 0x3c]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
mov edi, str.CLSID_
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x14]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.00412aeb
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x1c
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xa
call fcn.0040365c
lea eax, [ebp + 0x54]
push eax
call fcn.0042663c
pop ecx
push dword [ebp - 0x60]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
push str.AppID
lea ecx, [ebp - 0x5c]
call fcn.0040979d
push dword [ebp - 0x64]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0x54]
push eax
mov byte [ebp - 4], 0x1d
call fcn.00426773
add esp, 0xc
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x14]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push str.ProgID
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x1f
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x20
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
lea eax, [ebp + 0x54]
push eax
call fcn.0042663c
pop ecx
push dword [ebp - 0x3c]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x14]
mov byte [ebp - 4], 0x21
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push str.VersionIndependentProgID
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x22
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x23
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
lea eax, [ebp + 0x54]
push eax
call fcn.0042663c
pop ecx
push dword [ebp - 0x40]
lea eax, [ebp + 0x54]
push eax
call fcn.00426922
pop ecx
pop ecx
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x14]
mov byte [ebp - 4], 0x24
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push str.InprocServer32
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x25
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x26
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
lea eax, [ebp + 0x54]
push eax
call fcn.0042663c
pop ecx
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, eax
call fcn.00412b36
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x27
call fcn.0043787a
pop ecx
pop ecx
push eax
lea eax, [ebp + 0x54]
push eax
mov byte [ebp - 4], 0x28
call fcn.00426922
pop ecx
pop ecx
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xa
call fcn.004036a7
push str.apartment
lea ecx, [ebp - 0x38]
call fcn.0040979d
push str.ThreadingModel
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x29
call fcn.0040979d
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0x54]
push eax
mov byte [ebp - 4], 0x2a
call fcn.00426773
add esp, 0xc
push esi
push ebx
lea ecx, [ebp - 0x5c]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xa
call fcn.0040365c
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
mov byte [ebp - 4], 0x2b
push dword [ebp - 0x14]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push str.Control
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x2c
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x2d
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
lea eax, [ebp + 0x54]
push eax
call fcn.0042663c
pop ecx
push edi
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.004104cc
add esp, 0xc
push dword [ebp - 0x14]
mov byte [ebp - 4], 0x2e
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00412aeb
add esp, 0xc
push str.Version
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x2f
call fcn.004104cc
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x30
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
call fcn.0040365c
lea eax, [ebp + 0x54]
push eax
call fcn.0042663c
pop ecx
push 0x530124
lea ecx, [ebp - 0x38]
call fcn.0040979d
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp + 0x54]
push eax
mov byte [ebp - 4], 0x31
call fcn.00426922
pop ecx
pop ecx
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xa
call fcn.0040365c
xor edi, edi
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx + 0x10]
sub eax, dword [ecx + 0xc]
push 0x1c
cdq
pop ecx
idiv ecx
cmp edi, eax
jae 0x427912
push str.MIMEDatabaseContent_Type_
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004104cc
add esp, 0xc
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x1c]
push edi
mov byte [ebp - 4], 0x32
call fcn.0040fcd9
push eax
push dword [ebp - 0x18]
lea eax, [ebp - 0x80]
push eax
call fcn.00412aeb
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x33
call fcn.00404aa4
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xa
call fcn.0040365c
lea eax, [ebp + 0x54]
push eax
call fcn.0042663c
pop ecx
push 0x5300fc
lea ecx, [ebp - 0x38]
call fcn.0040979d
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x34
call fcn.0041f277
pop ecx
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp + 0x54]
push eax
mov byte [ebp - 4], 0x35
call fcn.00426773
add esp, 0xc
push esi
push ebx
lea ecx, [ebp - 0x80]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xa
call fcn.0040365c
inc edi
jmp 0x427846
push esi
push ebx
lea ecx, [ebp + 0x1c]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp + 0x54]
call fcn.0040365c
push esi
push ebx
lea ecx, [ebp + 0x38]
call fcn.0040365c
xor eax, eax
jmp 0x427a63
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x70]
xor ecx, ebp
call fcn.0047b812
add ebp, 0x74
leave
ret