Function at 0x41a090
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x264
mov eax, dword [0x4ff94c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
cmp dword [esi + 0x94], 0x50bc08
push edi
jne 0x41a0d3
test byte [esi + 0x9e], 1
jne 0x41a0d3
mov eax, dword [esi + 0x20]
push 0x30
push str.Pronto_Xi
push str.WARNING:_This_is_not_a_fixed_width_font__nCharacter_alignment_problems_may_occur.
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [esi + 0x94]
push 0x5c
xor ebx, ebx
push ebx
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
push ebx
push ebx
push 0x188
push 0x3f4
mov ecx, esi
call sub.mfc100u.dll_CWnd::SendDlgItemMessageW
mov edx, dword [esi + 0x94]
movzx eax, ax
add edx, 0x1c
push edx
push eax
push 0x189
push 0x3f4
mov ecx, esi
call sub.mfc100u.dll_CWnd::SendDlgItemMessageW
mov ecx, dword [esi + 0x94]
push 0x12c
mov dword [ecx], ebx
mov edx, dword [esi + 0x94]
lea eax, [ebp - 0x25c]
push eax
push 0x443
mov ecx, esi
mov dword [edx + 4], ebx
call sub.mfc100u.dll_CWnd::GetDlgItemTextW_1
mov edi, dword [sym.imp.MSVCR100.dll__wtoi]
test ax, ax
je 0x41a16c
lea ecx, [ebp - 0x25c]
push ecx
call edi
movzx eax, ax
add esp, 4
cmp ax, bx
jbe 0x41a16c
mov edx, eax
mov eax, dword [esi + 0x94]
mov dword [eax + 4], edx
push 0x12c
lea ecx, [ebp - 0x25c]
push ecx
push 0x444
mov ecx, esi
call sub.mfc100u.dll_CWnd::GetDlgItemTextW_1
test ax, ax
je 0x41a1a5
lea edx, [ebp - 0x25c]
push edx
call edi
movzx eax, ax
add esp, 4
cmp ax, bx
jbe 0x41a1a5
mov ecx, dword [esi + 0x94]
mov dword [ecx], eax
push ebx
push ebx
push 0x188
push 0x3f6
mov ecx, esi
call sub.mfc100u.dll_CWnd::SendDlgItemMessageW
movzx edx, ax
push ebx
push edx
push 0x199
push 0x3f6
mov ecx, esi
call sub.mfc100u.dll_CWnd::SendDlgItemMessageW
mov ecx, dword [esi + 0x94]
mov dword [ecx + 0x10], eax
mov edx, dword [esi + 0x94]
mov al, byte [esi + 0x9e]
mov byte [edx + 0x1b], al
mov ecx, dword [esi + 0x94]
mov byte [ecx + 0x17], 1
mov edx, dword [esi + 0x94]
mov byte [edx + 0x18], bl
mov eax, dword [esi + 0x94]
mov byte [eax + 0x19], bl
mov ecx, dword [esi + 0x94]
mov byte [ecx + 0x1a], bl
cmp dword [ebp + 8], ebx
je 0x41a31d
lea edx, [ebp - 0x264]
push edx
lea eax, [ebp - 0x260]
push eax
push ebx
push 0x2001f
push ebx
push 0x4dab4c
push ebx
push str.SoftwarePRONTOSettings
push closesocket
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
je 0x41a26c
mov ecx, dword [esi + 0x20]
push 0x30
push str.Pronto_Xi
push str.Cant_create_registry_sub_key
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004b7f56
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi + 0x94]
mov edx, dword [eax + 4]
movzx ecx, byte [eax + 0x1b]
push edx
movzx edx, byte [eax + 0x17]
push ecx
mov ecx, dword [eax + 0x10]
push edx
mov edx, dword [eax]
push ecx
push edx
add eax, 0x1c
push eax
lea eax, [ebp - 0x25c]
push str._s__ld__ld__ld__ld__ld
push eax
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0x20
cmp dword [esi + 0x94], 0x50bc08
lea eax, [ebp - 0x25c]
lea edx, [eax + 2]
jne 0x41a2e0
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x41a2b5
sub eax, edx
sar eax, 1
lea ecx, [eax + eax + 2]
push ecx
lea edx, [ebp - 0x25c]
push edx
push 1
push ebx
push str.font_fixed
jmp 0x41a303
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x41a2e0
sub eax, edx
sar eax, 1
lea ecx, [eax + eax + 2]
push ecx
lea edx, [ebp - 0x25c]
push edx
push 1
push ebx
push str.font_norm
mov eax, dword [ebp - 0x260]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov ecx, dword [ebp - 0x260]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004b7f56
mov esp, ebp
pop ebp
ret 4