Function at 0x448c00
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Hash data with md5
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x562011
mov eax, dword fs:[0]
push eax
sub esp, 0x9f8
mov eax, dword [0x5b0514]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ecx, dword [ebp + 8]
lea edx, [edi + 0x634]
call fcn.0040af80
test eax, eax
je 0x44951f
mov edx, dword [edi + 0x638]
mov ecx, dword [edi + 0x634]
sub edx, ecx
call fcn.00478140
mov esi, eax
test esi, esi
je 0x44951f
mov byte [ebp - 0x9a4], 0x58
xor ecx, ecx
mov byte [ebp - 0x9a3], 0x53
mov byte [ebp - 0x9a2], 0x4f
mov byte [ebp - 0x9a1], 0x74
mov byte [ebp - 0x9a0], 0x6f
mov byte [ebp - 0x99f], 0x7a
mov byte [ebp - 0x99e], 0
mov al, byte [ebp - 0x9a4]
nop dword [eax]
mov al, byte [ebp + ecx - 0x9a4]
movsx eax, al
sub eax, 6
mov byte [ebp + ecx - 0x9a4], al
inc ecx
cmp ecx, 6
jb 0x448ca0
lea edx, [ebp - 0x9a4]
mov ecx, esi
call fcn.00477ed0
mov dword [edi + 0xac0], eax
mov dword [ebp - 0x9c4], 0x31
mov eax, dword [ebp - 0x9c4]
xor eax, 0x52
mov byte [ebp - 0x9c0], al
mov eax, dword [ebp - 0x9c4]
inc al
xor eax, 0x4d
mov byte [ebp - 0x9bf], al
mov eax, dword [ebp - 0x9c4]
add al, 2
xor eax, 0x41
mov byte [ebp - 0x9be], al
mov eax, dword [ebp - 0x9c4]
add al, 3
xor eax, 0x70
mov byte [ebp - 0x9bd], al
mov eax, dword [ebp - 0x9c4]
add al, 4
xor eax, 0x70
mov byte [ebp - 0x9bc], al
mov eax, dword [ebp - 0x9c4]
add al, 5
xor eax, 0x45
mov byte [ebp - 0x9bb], al
mov eax, dword [ebp - 0x9c4]
add al, 6
xor eax, 0x6e
mov byte [ebp - 0x9ba], al
mov eax, dword [ebp - 0x9c4]
add al, 7
mov byte [ebp - 0x9b8], 0
xor eax, 0x64
xor edx, edx
mov byte [ebp - 0x9b9], al
mov al, byte [ebp - 0x9c0]
nop dword [eax]
mov al, byte [ebp + edx - 0x9c0]
mov ecx, dword [ebp - 0x9c4]
add cl, dl
movsx eax, al
xor ecx, eax
mov byte [ebp + edx - 0x9c0], cl
inc edx
cmp edx, 8
jb 0x448d70
lea edx, [ebp - 0x9c0]
mov byte [ebp - 0x9b8], 0
mov ecx, esi
call fcn.00477ed0
mov dword [edi + 0xacc], eax
xor ecx, ecx
mov byte [ebp - 0x9d4], 0x55
mov byte [ebp - 0x9d3], 0x50
mov byte [ebp - 0x9d2], 0x55
mov byte [ebp - 0x9d1], 0x78
mov byte [ebp - 0x9d0], 0x71
mov byte [ebp - 0x9cf], 0x46
mov byte [ebp - 0x9ce], 0x75
mov byte [ebp - 0x9cd], 0x68
mov byte [ebp - 0x9cc], 0x64
mov byte [ebp - 0x9cb], 0x77
mov byte [ebp - 0x9ca], 0x68
mov byte [ebp - 0x9c9], 0x57
mov byte [ebp - 0x9c8], 0x64
mov byte [ebp - 0x9c7], 0x76
mov byte [ebp - 0x9c6], 0x6e
mov byte [ebp - 0x9c5], 0
mov al, byte [ebp - 0x9d4]
mov al, byte [ebp + ecx - 0x9d4]
movsx eax, al
sub eax, 3
mov byte [ebp + ecx - 0x9d4], al
inc ecx
cmp ecx, 0xf
jb 0x448e23
lea edx, [ebp - 0x9d4]
mov ecx, esi
call fcn.00477ed0
mov dword [edi + 0xac8], eax
mov dword [ebp - 0x9b4], 0x1c
mov eax, dword [ebp - 0x9b4]
xor eax, 0x52
mov byte [ebp - 0x9b0], al
mov eax, dword [ebp - 0x9b4]
inc al
xor eax, 0x4d
mov byte [ebp - 0x9af], al
mov eax, dword [ebp - 0x9b4]
add al, 2
xor eax, 0x47
mov byte [ebp - 0x9ae], al
mov eax, dword [ebp - 0x9b4]
add al, 3
xor eax, 0x65
mov byte [ebp - 0x9ad], al
mov eax, dword [ebp - 0x9b4]
add al, 4
xor eax, 0x74
mov byte [ebp - 0x9ac], al
mov eax, dword [ebp - 0x9b4]
add al, 5
xor eax, 0x57
mov byte [ebp - 0x9ab], al
mov eax, dword [ebp - 0x9b4]
add al, 6
xor eax, 0x65
mov byte [ebp - 0x9aa], al
mov eax, dword [ebp - 0x9b4]
add al, 7
xor eax, 0x62
mov byte [ebp - 0x9a9], al
mov eax, dword [ebp - 0x9b4]
add al, 8
xor eax, 0x58
mov byte [ebp - 0x9a8], al
mov eax, dword [ebp - 0x9b4]
add al, 9
xor eax, 0x6d
mov byte [ebp - 0x9a7], al
mov eax, dword [ebp - 0x9b4]
add al, 0xa
mov byte [ebp - 0x9a5], 0
xor eax, 0x6c
xor edx, edx
mov byte [ebp - 0x9a6], al
mov al, byte [ebp - 0x9b0]
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + edx - 0x9b0]
mov ecx, dword [ebp - 0x9b4]
add cl, dl
movsx eax, al
xor ecx, eax
mov byte [ebp + edx - 0x9b0], cl
inc edx
cmp edx, 0xb
jb 0x448f30
lea edx, [ebp - 0x9b0]
mov byte [ebp - 0x9a5], 0
mov ecx, esi
call fcn.00477ed0
mov dword [edi + 0xac4], eax
xor ecx, ecx
mov byte [ebp - 0x9e8], 0x5b
mov byte [ebp - 0x9e7], 0x56
mov byte [ebp - 0x9e6], 0x5c
mov byte [ebp - 0x9e5], 0x6e
mov byte [ebp - 0x9e4], 0x7d
mov byte [ebp - 0x9e3], 0x4d
mov byte [ebp - 0x9e2], 0x7e
mov byte [ebp - 0x9e1], 0x76
mov byte [ebp - 0x9e0], 0x79
mov byte [ebp - 0x9df], 0x4c
mov byte [ebp - 0x9de], 0x6a
mov byte [ebp - 0x9dd], 0x75
mov byte [ebp - 0x9dc], 0x75
mov byte [ebp - 0x9db], 0x4b
mov byte [ebp - 0x9da], 0x6a
mov byte [ebp - 0x9d9], 0x6c
mov byte [ebp - 0x9d8], 0x74
mov byte [ebp - 0x9d7], 0
mov al, byte [ebp - 0x9e8]
mov al, byte [ebp + ecx - 0x9e8]
movsx eax, al
sub eax, 9
mov byte [ebp + ecx - 0x9e8], al
inc ecx
cmp ecx, 0x11
jb 0x448ff1
lea edx, [ebp - 0x9e8]
mov ecx, esi
call fcn.00477ed0
cmp dword [edi + 0xac0], 0
mov dword [edi + 0xad0], eax
je 0x44951f
cmp dword [edi + 0xacc], 0
je 0x44951f
cmp dword [edi + 0xac8], 0
je 0x44951f
cmp dword [edi + 0xac4], 0
je 0x44951f
push 1
push 4
push str.General
call fcn.0043b040
mov eax, dword [edi + 0xad0]
test eax, eax
je 0x449071
push 0x448b00
call eax
lea eax, [edi + 0x44]
push eax
mov eax, dword [edi + 0xac0]
lea ecx, [edi + 4]
push ecx
call eax
mov esi, dword [edi + 0x4e4]
xor ecx, ecx
add esi, 0x2000
mov edx, 2
mov eax, esi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00481109
add esp, 4
lea ecx, [esi + esi]
mov ebx, eax
push ecx
push 0
push ebx
call fcn.00521a60
lea esi, [edi + 0x4d4]
add esp, 0xc
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x4490c9
mov eax, dword [esi]
push ebx
push eax
mov eax, dword [edi + 0xac4]
call eax
test eax, eax
je 0x449118
push ebx
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
test eax, eax
jle 0x449118
cmp dword [esi + 0x14], 8
mov eax, esi
mov dword [esi + 0x10], 0
jb 0x4490f3
mov eax, dword [esi]
mov edx, ebx
xor ecx, ecx
mov word [eax], cx
lea ecx, [edx + 2]
nop dword [eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x449100
sub edx, ecx
mov ecx, esi
sar edx, 1
push edx
push ebx
call fcn.00410900
push 0x208
lea eax, [ebp - 0x21c]
push 0
push eax
call fcn.00521a60
add esp, 0xc
lea eax, [ebp - 0x21c]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.DLL_GetModuleFileNameW]
xor eax, eax
mov dword [ebp - 0x9a4], 0
mov dword [ebp - 0x84c], 0
mov dword [ebp - 0x848], 7
mov word [ebp - 0x85c], ax
push 0xb8
push eax
mov dword [ebp - 4], eax
lea eax, [ebp - 0x99c]
push eax
call fcn.00521a60
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x99c]
call fcn.0041a4e0
mov byte [ebp - 4], 1
cmp dword [ebp - 0x940], 0
je 0x4492f4
sub esp, 0xc
lea ecx, [ebp - 0x99c]
call fcn.0041ba20
lea eax, [ebp - 0x874]
push eax
lea ecx, [ebp - 0x99c]
call fcn.0041b940
mov eax, dword [ebp - 0x86c]
add eax, dword [ebp - 0x874]
mov dword [ebp - 0x9a4], eax
mov eax, dword [ebp - 0x99c]
mov byte [ebp - 0x87c], 0
mov dword [ebp - 0x8d0], 0
mov dword [ebp - 0x8d4], 0
mov dword [ebp - 0x8e4], 0x67452301
mov dword [ebp - 0x8e0], 0xefcdab89
mov dword [ebp - 0x8dc], 0x98badcfe
mov dword [ebp - 0x8d8], 0x10325476
mov eax, dword [eax + 4]
mov eax, dword [ebp + eax - 0x990]
test al, 6
jne 0x44928b
test al, 1
jne 0x449280
nop
sub esp, 8
lea eax, [ebp - 0x824]
lea ecx, [ebp - 0x99c]
push eax
call fcn.00409d60
cmp dword [ebp - 0x990], 0
jl 0x44926d
mov eax, dword [ebp - 0x994]
jg 0x44925a
test eax, eax
je 0x44926d
push eax
lea eax, [ebp - 0x824]
push eax
lea ecx, [ebp - 0x8e4]
call fcn.004092b0
mov eax, dword [ebp - 0x99c]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0x990], 1
je 0x449230
lea ecx, [ebp - 0x99c]
call fcn.00409cf0
lea eax, [ebp - 0xa00]
push eax
lea ecx, [ebp - 0x8e4]
call fcn.00409bc0
push eax
lea ecx, [ebp - 0x85c]
call fcn.0040be40
mov edx, dword [ebp - 0x9ec]
cmp edx, 8
jb 0x4492e9
mov ecx, dword [ebp - 0xa00]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4492df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44953f
push edx
push ecx
call fcn.00497d51
add esp, 8
lea ecx, [ebp - 0x99c]
call fcn.00409cf0
xor eax, eax
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 7
mov word [ebp - 0x840], ax
push 0x208
push eax
lea eax, [ebp - 0x424]
mov byte [ebp - 4], 2
push eax
mov dword [ebp - 0x844], 1
call fcn.00521a60
add esp, 0xc
mov dword [ebp - 0x828], 0x208
lea eax, [ebp - 0x828]
push eax
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x844]
push eax
push str.Version
push str.SOFTWAREMicrosoftInternet_Explorer
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
test eax, eax
jne 0x4493d2
cmp dword [ebp - 0x844], 1
jne 0x4493d2
cmp dword [ebp - 0x82c], 8
lea ecx, [ebp - 0x840]
mov eax, dword [ebp - 0x830]
cmovae ecx, dword [ebp - 0x840]
lea esi, [ecx + eax*2]
lea eax, [ebp - 0x424]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
shl eax, 2
lea ecx, [ebp - 0x840]
cmp dword [ebp - 0x82c], 8
cmovae ecx, dword [ebp - 0x840]
sar eax, 1
sub esi, ecx
push eax
lea eax, [ebp - 0x424]
sar esi, 1
push eax
push 0
push esi
lea ecx, [ebp - 0x840]
call fcn.0041bc50
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathStripPathW]
cmp dword [ebp - 0x848], 8
lea ebx, [ebp - 0x85c]
lea eax, [ebp - 0x840]
cmovae ebx, dword [ebp - 0x85c]
lea esi, [edi + 0x5b0]
cmp dword [ebp - 0x82c], 8
cmovae eax, dword [ebp - 0x840]
cmp dword [esi + 0x14], 8
mov dword [ebp - 0x828], eax
jb 0x44941b
mov esi, dword [esi]
mov edx, 0x1869f
call fcn.00417670
push eax
push ebx
push dword [ebp - 0x9a4]
lea eax, [ebp - 0x21c]
push eax
lea eax, [edi + 0x44]
push eax
lea eax, [edi + 0x84]
push eax
lea eax, [edi + 4]
push eax
push ecx
push 1
push str.Status
call fcn.0043b1e0
add esp, 4
push eax
push dword [ebp - 0x828]
push esi
push dword [edi + 0x5fc]
push str.sdsoft_dsystem_sie_sisdeveloper_dwebid_schannelid_ssoftid_sfilename_sfilesize_dfilemd5_srnd_d
push str.http:__downloader.aldtop.com_client_debug
push edi
call fcn.004458a0
mov edx, dword [ebp - 0x82c]
add esp, 0x38
cmp edx, 8
jb 0x4494b4
mov ecx, dword [ebp - 0x840]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4494aa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x449544
push edx
push ecx
call fcn.00497d51
add esp, 8
xor eax, eax
mov dword [ebp - 0x830], 0
lea ecx, [ebp - 0x99c]
mov dword [ebp - 0x82c], 7
mov word [ebp - 0x840], ax
call fcn.00419c10
mov edx, dword [ebp - 0x848]
cmp edx, 8
jb 0x449518
mov ecx, dword [ebp - 0x85c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44950e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x449549
push edx
push ecx
call fcn.00497d51
add esp, 8
mov eax, 1
jmp 0x449521
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00497d40
mov esp, ebp
pop ebp
ret 4
call fcn.00524a29
call fcn.00524a29
call fcn.00524a29
int3