Function at 0x42c5ba
Capabilities:
Get common file path
Get graphical window text
Query or enumerate registry value
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x458
mov eax, dword [0x56afe8]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov ebx, ecx
mov dword [ebp - 0x450], eax
push str.__xml_version_1.0__encoding_utf_8____r_n_question__r_n_title____CDATA__s_____title__r_n_contact____CDATA__s_____contact__r_n_desc____CDATA__s_____desc__r_n_time__s__time__r_n_OS__s__OS__r_n_OSbit__s__OSbit__r_n_IE__s__IE__r_n_from__s__from__r_n_version__s__version__r_n_MID__s__MID__r_n_UID__d__UID__r_n__question_
lea ecx, [ebp - 0x448]
call fcn.00402af5
call fcn.00403a64
push eax
lea ecx, [ebp - 0x44c]
call fcn.00402a6b
push str.SOFTWAREMicrosoftWindows_NTCurrentVersion
lea ecx, [ebp - 0x418]
call fcn.00402af5
push 0x206
lea eax, [ebp - 0x20a]
push 0
push eax
call sub.msvcrt.dll_memset
mov edi, dword [ebp - 0x418]
add esp, 0xc
mov esi, dword [sym.imp.SHLWAPI.dll_SHGetValueW]
xor eax, eax
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x420]
mov dword [ebp - 0x424], 1
push eax
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x420], 0x208
push eax
lea eax, [ebp - 0x424]
push eax
push 0x52f8b0
push edi
push reloc.OLEAUT32.dll_SysReAllocString
call esi
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x444]
call fcn.00402af5
xor eax, eax
mov dword [ebp - 0x424], 1
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x420], 0x208
push eax
lea eax, [ebp - 0x424]
push eax
push str.CSDVersion
push edi
push reloc.OLEAUT32.dll_SysReAllocString
call esi
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
lea eax, [ebp - 0x20c]
jne 0x42c6da
mov eax, 0x52f8e0
push eax
lea ecx, [ebp - 0x41c]
call fcn.00402af5
mov eax, dword [ebp - 0x41c]
cmp dword [eax - 0xc], 1
jle 0x42c720
push 1
lea eax, [ebp - 0x418]
push eax
lea ecx, [ebp - 0x41c]
call fcn.0040448b
push eax
lea ecx, [ebp - 0x41c]
call fcn.00402bd6
mov ecx, dword [ebp - 0x418]
lea ecx, [ecx - 0x10]
call fcn.004042e9
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x418]
push 0x52f8e4
push eax
call fcn.0041346d
add esp, 0xc
lea ecx, [ebp - 0x41c]
push eax
call fcn.00402bd6
mov ecx, dword [ebp - 0x418]
lea ecx, [ecx - 0x10]
call fcn.004042e9
xor eax, eax
mov dword [ebp - 0x424], 1
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x420], 0x208
push eax
lea eax, [ebp - 0x424]
push eax
push str.Version
push str.SOFTWAREMicrosoftInternet_Explorer
push reloc.OLEAUT32.dll_SysReAllocString
call esi
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x438]
call fcn.00402af5
xor eax, eax
mov dword [ebp - 0x424], 1
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x20c]
mov dword [ebp - 0x420], 0x208
push eax
lea eax, [ebp - 0x424]
push eax
push 0x52f8ec
push str.SOFTWAREMicrosoftInternet_Explorer
push reloc.OLEAUT32.dll_SysReAllocString
call esi
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x42c]
call fcn.00402af5
push eax
push str._Build:
lea eax, [ebp - 0x438]
push eax
lea eax, [ebp - 0x430]
push eax
call fcn.00413428
add esp, 0xc
push eax
lea eax, [ebp - 0x418]
push eax
call fcn.004133f1
add esp, 0xc
lea ecx, [ebp - 0x438]
push eax
call fcn.00402bd6
mov ecx, dword [ebp - 0x418]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x430]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x42c]
lea ecx, [ecx - 0x10]
call fcn.004042e9
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
push 0x408
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x104
lea ecx, [ebp - 0x20c]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x430]
call fcn.00402af5
mov esi, 0x527fb4
lea ecx, [ebp - 0x428]
push esi
call fcn.00402af5
push esi
lea ecx, [ebp - 0x42c]
call fcn.00402af5
push 0x52f908
lea ecx, [ebp - 0x440]
call fcn.00402af5
call fcn.00403e8d
test eax, eax
mov eax, 0x52f914
jne 0x42c8ea
mov eax, 0x52f91c
push eax
lea ecx, [ebp - 0x43c]
call fcn.00402af5
lea eax, [ebp - 0x428]
push eax
push 0
push 0
push 0x147
push dword [ebx + 0x4c]
call dword [sym.imp.USER32.dll_SendMessageW]
push eax
lea ecx, [ebx + 0x4c]
call fcn.0042d81d
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
push 0x554
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x104
lea ecx, [ebp - 0x20c]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov esi, 0x52f924
push esi
call sub.msvcrt.dll_wcslen
pop ecx
push eax
push esi
lea ecx, [ebp - 0x428]
call fcn.00402d75
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x418]
call fcn.00402af5
lea ecx, [ebp - 0x428]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.00402d75
mov ecx, dword [ebp - 0x418]
lea ecx, [ecx - 0x10]
call fcn.004042e9
push 0x208
lea eax, [ebp - 0x414]
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x414]
push 0x104
push eax
push dword [0x577c88]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
call fcn.00403a64
push eax
lea ecx, [ebp - 0x434]
call fcn.00402a6b
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x418]
call fcn.00402af5
lea eax, [ebp - 0x434]
push eax
lea eax, [ebp - 0x418]
push eax
call fcn.0047e922
pop ecx
pop ecx
mov ecx, dword [ebp - 0x418]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ebx, dword [ebx + 0x30]
call fcn.004c0e93
mov esi, eax
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x444]
push eax
lea eax, [ebp - 0x418]
push eax
call fcn.004133f1
push ebx
push dword [esi]
mov esi, dword [ebp - 0x438]
push dword [ebp - 0x434]
push dword [0x5771dc]
push esi
push dword [ebp - 0x43c]
push dword [eax]
lea eax, [ebp - 0x44c]
push dword [ebp - 0x440]
push dword [ebp - 0x42c]
push dword [ebp - 0x428]
push dword [ebp - 0x430]
push dword [ebp - 0x448]
push eax
call fcn.00415254
mov ecx, dword [ebp - 0x418]
add esp, 0x40
lea ecx, [ecx - 0x10]
call fcn.004042e9
push 0x208
xor ebx, ebx
lea eax, [ebp - 0x414]
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x414]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push str.question.xml
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push ebx
push 0x80
push 2
push ebx
push 3
push 0x40000000
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x418], eax
cmp eax, 0xffffffff
jne 0x42cb8f
mov ecx, dword [ebp - 0x450]
push 0x527fb4
call fcn.00402af5
mov ecx, dword [ebp - 0x434]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x43c]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x440]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x42c]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x428]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x430]
lea ecx, [ecx - 0x10]
call fcn.004042e9
lea ecx, [esi - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x41c]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x444]
lea ecx, [ecx - 0x10]
call fcn.004042e9
lea ecx, [edi - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x44c]
add ecx, 0xfffffff0
jmp 0x42ccad
mov esi, dword [ebp - 0x44c]
mov eax, dword [esi - 0xc]
inc eax
imul eax, eax, 3
push eax
mov dword [ebp - 0x454], eax
call sub.msvcrt.dll_void____cdecl_operator_new___unsigned_int_
mov ebx, eax
lea eax, [ebp - 0x454]
push eax
push ebx
push dword [esi - 0xc]
push esi
call fcn.004c1de7
add esp, 0x14
test al, al
jne 0x42cbdc
push ebx
call sub.msvcrt.dll_void___cdecl_operator_delete___void__
pop ecx
push dword [ebp - 0x418]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x527fb4
jmp 0x42cc19
and dword [ebp - 0x458], 0
lea eax, [ebp - 0x458]
push 0
push eax
push dword [ebp - 0x454]
push ebx
push dword [ebp - 0x418]
call dword [sym.imp.KERNEL32.dll_WriteFile]
push dword [ebp - 0x418]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push ebx
call sub.msvcrt.dll_void___cdecl_operator_delete___void__
pop ecx
lea eax, [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x450]
call fcn.00402af5
mov ecx, dword [ebp - 0x434]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x43c]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x440]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x42c]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x428]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x430]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x438]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x41c]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x444]
lea ecx, [ecx - 0x10]
call fcn.004042e9
lea ecx, [edi - 0x10]
call fcn.004042e9
lea ecx, [esi - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 0x448]
lea ecx, [ecx - 0x10]
call fcn.004042e9
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x450]
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.00522d04
leave
ret 4