Function at 0x4e11d0
Capabilities:
Contain obfuscated stackstrings
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x260
mov eax, dword [0x531304]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
mov dword [ebp - 4], 0
call fcn.004f4bd0
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x4e1bb6
mov dword [ebp - 0x34], 0x51daf8
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x260], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x224], 0
mov eax, dword [ebp + 8]
push eax
call fcn.00415e20
add esp, 4
add eax, 5
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x10c]
push ecx
call fcn.00415d52
add esp, 4
mov dword [ebp - 0x228], eax
mov edx, dword [ebp - 0x10c]
push edx
push 0
mov eax, dword [ebp - 0x228]
push eax
call fcn.00415fc0
add esp, 0xc
push 0x51db00
mov ecx, dword [ebp - 0x228]
push ecx
call fcn.00415eb0
add esp, 8
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x228]
push eax
call fcn.00415ec0
add esp, 8
push 0x51db04
mov ecx, dword [ebp - 0x228]
push ecx
call fcn.00415ec0
add esp, 8
mov edx, dword [ebp - 0x228]
push edx
call fcn.00415e20
add esp, 4
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
add eax, 2
cdq
mov ecx, 3
idiv ecx
lea edx, [eax*4 + 1]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [ebp - 0x260], eax
mov eax, dword [ebp - 0x10c]
push eax
mov ecx, dword [ebp - 0x228]
push ecx
mov eax, dword [ebp - 0x10c]
add eax, 2
cdq
mov ecx, 3
idiv ecx
lea edx, [eax*4 + 1]
push edx
mov eax, dword [ebp - 0x260]
push eax
call fcn.004f6180
add esp, 0x10
mov ecx, dword [ebp - 0x260]
push ecx
call fcn.004f5130
add esp, 4
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 4]
push edx
call fcn.00415fa8
add esp, 4
mov esi, eax
mov eax, dword [ebp - 0x34]
push eax
call fcn.00415fa8
add esp, 4
add esi, eax
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.00415fa8
add esp, 4
add esi, eax
lea edx, [esi + esi + 2]
mov dword [ebp - 0x10c], edx
mov eax, dword [ebp - 0x10c]
push eax
call fcn.00415d52
add esp, 4
mov dword [ebp - 0x23c], eax
mov ecx, dword [ebp - 0x10c]
push ecx
push 0
mov edx, dword [ebp - 0x23c]
push edx
call fcn.00415fc0
add esp, 0xc
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 0x23c]
push ecx
call fcn.0041916c
add esp, 8
mov edx, dword [ebp - 0x34]
push edx
mov eax, dword [ebp - 0x23c]
push eax
call fcn.00419142
add esp, 8
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x23c]
push edx
call fcn.00419142
add esp, 8
mov eax, dword [ebp - 0x23c]
push eax
call fcn.00415fa8
add esp, 4
lea ecx, [eax + eax + 0xa]
push ecx
mov edx, dword [ebp - 0x23c]
push edx
push str.pwbuf___ws__len___d_n
call fcn.004160d1
add esp, 0xc
mov dword [ebp - 0x108], 0
push 0x88
push 0
lea eax, [ebp - 0x104]
push eax
call fcn.00415fc0
add esp, 0xc
mov byte [ebp - 0x74], 0
xor ecx, ecx
mov dword [ebp - 0x73], ecx
mov dword [ebp - 0x6f], ecx
mov dword [ebp - 0x6b], ecx
mov word [ebp - 0x67], cx
mov byte [ebp - 0x65], cl
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x238], eax
mov edx, dword [ebp - 0x23c]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
mov cx, word [eax]
mov word [ebp - 0x250], cx
mov edx, dword [ebp - 8]
add edx, 4
mov dword [ebp - 8], edx
movsx eax, word [ebp - 0x250]
test eax, eax
jne 0x4e144b
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0x23c]
sar ecx, 1
sar ecx, 1
sub ecx, 1
mov dword [ebp - 0x240], ecx
mov edx, dword [ebp - 0x23c]
mov al, byte [edx]
mov byte [ebp - 0x73], al
mov eax, dword [ebp - 0x238]
xor edx, edx
mov ecx, 0x64
div ecx
mov byte [ebp - 0x72], al
mov dl, byte [ebp - 0x240]
mov byte [ebp - 0x74], dl
mov byte [ebp - 0x6e], 0x80
mov eax, dword [ebp - 0x238]
xor edx, edx
mov ecx, 0x3e8
div ecx
add eax, 6
mov byte [ebp - 0x71], al
mov dl, byte [ebp - 0x238]
mov byte [ebp - 0x6f], dl
mov eax, dword [ebp - 0x238]
xor edx, edx
mov ecx, 0x2710
div ecx
mov byte [ebp - 0x70], al
movzx edx, byte [ebp - 0x73]
movzx eax, byte [ebp - 0x70]
lea ecx, [edx + eax + 2]
mov byte [ebp - 0x6d], cl
mov eax, dword [ebp - 0x240]
cdq
sub eax, edx
sar eax, 1
shl eax, 1
mov edx, dword [ebp - 0x23c]
movzx eax, word [edx + eax*2]
add eax, dword [ebp - 0x238]
mov ecx, dword [ebp - 0x240]
imul ecx, ecx, 0x2710
add eax, ecx
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x238]
xor edx, edx
mov ecx, 0xc20
div ecx
mov edx, dword [ebp - 0x240]
imul edx, edx, 0x64
lea eax, [eax + edx + 1]
mov dword [ebp - 0x68], eax
push 0x8c
push 0
lea ecx, [ebp - 0x108]
push ecx
call fcn.00415fc0
add esp, 0xc
push 0xc
lea edx, [ebp - 0x74]
push edx
push 0x10
lea eax, [ebp - 0x108]
push eax
call fcn.004df580
add esp, 0x10
mov byte [ebp - 0x234], 0
xor ecx, ecx
mov dword [ebp - 0x233], ecx
mov word [ebp - 0x22f], cx
mov byte [ebp - 0x22d], cl
mov edx, dword [ebp - 0x23c]
push edx
call fcn.00415fa8
add esp, 4
lea eax, [eax + eax + 2]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
and ecx, 0x80000007
jns 0x4e15a7
dec ecx
or ecx, 0xfffffff8
inc ecx
test ecx, ecx
je 0x4e15c6
mov eax, dword [ebp - 0x2c]
cdq
and edx, 7
add eax, edx
sar eax, 3
lea edx, [eax*8 + 8]
mov dword [ebp - 0x10c], edx
jmp 0x4e15cf
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x10c]
push ecx
call fcn.00415d52
add esp, 4
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x10c]
push edx
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.00415fc0
add esp, 0xc
mov edx, dword [ebp - 0x2c]
push edx
mov eax, dword [ebp - 0x23c]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.00415910
add esp, 0xc
mov edx, dword [ebp - 0x10c]
push edx
call fcn.00415d52
add esp, 4
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x10c]
push eax
push 0
mov ecx, dword [ebp - 0x258]
push ecx
call fcn.00415fc0
add esp, 0xc
push 8
push 0
lea edx, [ebp - 0x234]
push edx
call fcn.00415fc0
add esp, 0xc
push 1
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x108]
push ecx
mov edx, dword [ebp - 0x10c]
push edx
mov eax, dword [ebp - 0x258]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.004df9f0
add esp, 0x18
mov byte [ebp - 0x54], 0x23
mov byte [ebp - 0x53], 0xa1
mov byte [ebp - 0x52], 0x87
mov byte [ebp - 0x51], 0
mov byte [ebp - 0x50], 0x4f
mov byte [ebp - 0x4f], 0x9b
mov byte [ebp - 0x4e], 0x45
mov byte [ebp - 0x4d], 0xf1
mov byte [ebp - 0x4c], 0x43
mov byte [ebp - 0x4b], 0x64
mov byte [ebp - 0x4a], 0x39
mov byte [ebp - 0x49], 0x20
mov byte [ebp - 0x48], 0xf3
mov byte [ebp - 0x47], 0x14
mov byte [ebp - 0x46], 0x42
mov byte [ebp - 0x45], 0xd4
mov byte [ebp - 0x64], 0x19
mov byte [ebp - 0x63], 0x1c
mov byte [ebp - 0x62], 0x86
mov byte [ebp - 0x61], 0x7b
mov byte [ebp - 0x60], 0xaf
mov byte [ebp - 0x5f], 0xa8
mov byte [ebp - 0x5e], 0xb5
mov byte [ebp - 0x5d], 0xbb
mov byte [ebp - 0x5c], 0x5c
mov byte [ebp - 0x5b], 0
mov byte [ebp - 0x5a], 0x1b
mov byte [ebp - 0x59], 0x91
mov byte [ebp - 0x58], 0xab
mov byte [ebp - 0x57], 0x63
mov byte [ebp - 0x56], 0x45
mov byte [ebp - 0x55], 0x4c
mov byte [ebp - 0x44], 0
xor edx, edx
mov dword [ebp - 0x43], edx
mov dword [ebp - 0x3f], edx
mov dword [ebp - 0x3b], edx
mov word [ebp - 0x37], dx
mov byte [ebp - 0x35], dl
cmp dword [ebp + 0xc], 1
jne 0x4e1729
push 0x10
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x44]
push ecx
call fcn.00415910
add esp, 0xc
jmp 0x4e1741
cmp dword [ebp + 0xc], 2
jne 0x4e1741
push 0x10
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0x44]
push eax
call fcn.00415910
add esp, 0xc
push 0x8c
push 0
lea ecx, [ebp - 0x108]
push ecx
call fcn.00415fc0
add esp, 0xc
push 0xc
lea edx, [ebp - 0x44]
push edx
push 0x10
lea eax, [ebp - 0x108]
push eax
call fcn.004df580
add esp, 0x10
mov byte [ebp - 0x220], 0x43
mov byte [ebp - 0x21f], 0x64
mov byte [ebp - 0x21e], 0x39
mov byte [ebp - 0x21d], 0x20
mov byte [ebp - 0x21c], 0xf3
mov byte [ebp - 0x21b], 0x14
mov byte [ebp - 0x21a], 0x42
mov byte [ebp - 0x219], 0xd4
mov ecx, dword [ebp - 0x10c]
add ecx, 0x10
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x10c]
push edx
call fcn.00415d52
add esp, 4
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x10c]
push eax
call fcn.00415d52
add esp, 4
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x10c]
push ecx
push 0
mov edx, dword [ebp - 0x78]
push edx
call fcn.00415fc0
add esp, 0xc
mov eax, dword [ebp - 0x10c]
push eax
push 0
mov ecx, dword [ebp - 0x254]
push ecx
call fcn.00415fc0
add esp, 0xc
push 0x10
lea edx, [ebp - 0x74]
push edx
mov eax, dword [ebp - 0x254]
push eax
call fcn.00415910
add esp, 0xc
mov ecx, dword [ebp - 0x10c]
sub ecx, 0x10
push ecx
mov edx, dword [ebp - 0x258]
push edx
mov eax, dword [ebp - 0x254]
add eax, 0x10
push eax
call fcn.00415910
add esp, 0xc
push 1
lea ecx, [ebp - 0x220]
push ecx
lea edx, [ebp - 0x108]
push edx
mov eax, dword [ebp - 0x10c]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x254]
push edx
call fcn.004e0640
add esp, 0x18
mov eax, dword [ebp - 0x10c]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
call fcn.004f4ce0
add esp, 8
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x28]
push edx
push str.rc5buf___s_n
call fcn.004160d1
add esp, 8
mov eax, dword [ebp - 0x28]
push eax
call fcn.004f5130
add esp, 4
mov dword [ebp - 0x25c], eax
mov byte [ebp - 0x1c], 0
xor ecx, ecx
mov dword [ebp - 0x1b], ecx
mov dword [ebp - 0x17], ecx
mov byte [ebp - 0x24c], 0
xor edx, edx
mov dword [ebp - 0x24b], edx
mov dword [ebp - 0x247], edx
mov eax, dword [ebp - 0x25c]
push eax
call fcn.00415fa8
add esp, 4
shl eax, 1
push eax
mov ecx, dword [ebp - 0x25c]
push ecx
call fcn.004e3980
add esp, 8
push eax
push 0x51db30
lea edx, [ebp - 0x1c]
push edx
call fcn.0041603a
add esp, 0xc
mov al, byte [ebp - 0x16]
mov byte [ebp - 0x24c], al
mov cl, byte [ebp - 0x15]
mov byte [ebp - 0x24b], cl
mov dl, byte [ebp - 0x18]
mov byte [ebp - 0x24a], dl
mov al, byte [ebp - 0x17]
mov byte [ebp - 0x249], al
mov cl, byte [ebp - 0x1a]
mov byte [ebp - 0x248], cl
mov dl, byte [ebp - 0x19]
mov byte [ebp - 0x247], dl
mov al, byte [ebp - 0x1c]
mov byte [ebp - 0x246], al
mov cl, byte [ebp - 0x1b]
mov byte [ebp - 0x245], cl
lea edx, [ebp - 0x24c]
push edx
push str.bigcrc___s_n
call fcn.004160d1
add esp, 8
mov dword [ebp - 0x22c], 0x51db48
mov dword [ebp - 0x24], 0x51db50
mov byte [ebp - 0x218], 0
push 0x103
push 0
lea eax, [ebp - 0x217]
push eax
call fcn.00415fc0
add esp, 0xc
cmp dword [ebp + 0xc], 1
jne 0x4e19b0
mov ecx, dword [ebp - 0x22c]
push ecx
call fcn.00415e20
add esp, 4
push eax
mov edx, dword [ebp - 0x22c]
push edx
lea eax, [ebp - 0x218]
push eax
call fcn.00415910
add esp, 0xc
jmp 0x4e19d6
cmp dword [ebp + 0xc], 2
jne 0x4e19d6
mov ecx, dword [ebp - 0x24]
push ecx
call fcn.00415e20
add esp, 4
push eax
mov edx, dword [ebp - 0x24]
push edx
lea eax, [ebp - 0x218]
push eax
call fcn.00415910
add esp, 0xc
lea ecx, [ebp - 0x218]
push ecx
call fcn.00415e20
add esp, 4
mov esi, eax
lea edx, [ebp - 0x24c]
push edx
call fcn.00415e20
add esp, 4
add esi, eax
mov eax, dword [ebp - 0x28]
push eax
call fcn.00415e20
add esp, 4
lea ecx, [esi + eax + 1]
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x10c]
push edx
call fcn.00415d52
add esp, 4
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x10c]
push eax
push 0
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00415fc0
add esp, 0xc
lea edx, [ebp - 0x218]
push edx
call fcn.00415e20
add esp, 4
push eax
lea eax, [ebp - 0x218]
push eax
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00415910
add esp, 0xc
lea edx, [ebp - 0x24c]
push edx
call fcn.00415e20
add esp, 4
push eax
lea eax, [ebp - 0x24c]
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00415e20
add esp, 4
add eax, dword [ebp - 0x30]
push eax
call fcn.00415910
add esp, 0xc
mov edx, dword [ebp - 0x28]
push edx
call fcn.00415e20
add esp, 4
push eax
mov eax, dword [ebp - 0x28]
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00415e20
add esp, 4
mov esi, eax
add esi, dword [ebp - 0x30]
lea edx, [ebp - 0x24c]
push edx
call fcn.00415e20
add esp, 4
add esi, eax
push esi
call fcn.00415910
add esp, 0xc
mov eax, dword [ebp - 0x30]
push eax
call fcn.0041a25c
add esp, 4
cmp dword [ebp + 0xc], 1
jne 0x4e1b05
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00415e20
add esp, 4
push eax
mov edx, dword [ebp - 0x30]
push edx
push 1
push str.StartupUrls_01
push 0x51db68
push 0x80000001
call dword [sym.imp.SHLWAPI.dll_SHSetValueA]
jmp 0x4e1b33
cmp dword [ebp + 0xc], 2
jne 0x4e1b33
mov eax, dword [ebp - 0x30]
push eax
call fcn.00415e20
add esp, 4
push eax
mov ecx, dword [ebp - 0x30]
push ecx
push 1
push str.StartupUrls_02
push str.SoftwareTencentQQBrowserCommon
push 0x80000001
call dword [sym.imp.SHLWAPI.dll_SHSetValueA]
mov edx, dword [ebp - 0x30]
push edx
call fcn.00415c75
add esp, 4
mov eax, dword [ebp - 0x25c]
push eax
call fcn.00415c75
add esp, 4
mov ecx, dword [ebp - 0x28]
push ecx
call fcn.00415c75
add esp, 4
mov edx, dword [ebp - 0x20]
push edx
call fcn.00415c75
add esp, 4
mov eax, dword [ebp - 0x258]
push eax
call fcn.00415c75
add esp, 4
mov ecx, dword [ebp - 0x23c]
push ecx
call fcn.00415c75
add esp, 4
mov edx, dword [ebp - 0xc]
push edx
call fcn.00415c75
add esp, 4
mov eax, dword [ebp - 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov ecx, dword [ebp - 0x228]
push ecx
call fcn.00415c75
add esp, 4
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_LocalFree]
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004158f4
mov esp, ebp
pop ebp
ret