Function at 0x40b6cb
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1200
call fcn.0040ce40
push 0x40fe5c
push dword [ebp + 8]
call sub.MSVCRT.dll_fopen
pop ecx
mov dword [ebp + 8], eax
test eax, eax
pop ecx
je 0x40b999
push ebx
push esi
push edi
push 0x1000
lea eax, [ebp - 0x1200]
push 0
push eax
call sub.MSVCRT.dll_memset
lea eax, [ebp - 0x1200]
push str._OpenSearchDescription_xmlns_http:__a9.com___spec_opensearch_1.1___nxmlns:moz_http:__www.mozilla.org_2006_browser_search___
push eax
call sub.MSVCRT.dll_strcpy
lea eax, [ebp - 0x1200]
push str._n_ShortName_
push eax
call sub.MSVCRT.dll_strcat
push dword [ebp + 0xc]
lea eax, [ebp - 0x1200]
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str.__ShortName_
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str._n_InputEncoding_UTF_8__InputEncoding_
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str._n_Image_width_16__height_16__data:image_x_icon_base64_
push eax
call sub.MSVCRT.dll_strcat
push dword [ebp + 0x10]
lea eax, [ebp - 0x1200]
push eax
call sub.MSVCRT.dll_strcat
add esp, 0x44
lea eax, [ebp - 0x1200]
push str.__Image_
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str._n_Url_type_text_html__method_GET__template_
push eax
call sub.MSVCRT.dll_strcat
push dword [ebp + 0x14]
lea eax, [ebp - 0x200]
push eax
call sub.MSVCRT.dll_strcpy
mov esi, 0x40ff44
lea eax, [ebp - 0x200]
push esi
push eax
call sub.MSVCRT.dll_strstr
and byte [eax], 0
lea eax, [ebp - 0x200]
push eax
lea eax, [ebp - 0x1200]
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push 0x40ff40
push eax
call sub.MSVCRT.dll_strcat
push esi
push dword [ebp + 0x14]
call sub.MSVCRT.dll_strstr
mov esi, eax
mov ebx, 0x40ff3c
inc esi
push ebx
push esi
call sub.MSVCRT.dll_strstr
add esp, 0x40
mov edi, eax
push 0x40ff38
test edi, edi
push esi
je 0x40b8bf
call sub.MSVCRT.dll_strstr
mov dword [ebp + 0xc], eax
sub eax, esi
mov dword [ebp + 0x14], eax
push eax
lea eax, [ebp - 0x80]
push esi
push eax
call sub.MSVCRT.dll_strncpy
mov eax, dword [ebp + 0x14]
mov esi, edi
and byte [ebp + eax - 0x80], 0
mov eax, dword [ebp + 0xc]
sub esi, eax
inc eax
lea ecx, [esi - 1]
push ecx
push eax
lea eax, [ebp - 0x100]
push eax
call sub.MSVCRT.dll_strncpy
and byte [ebp + esi - 0x101], 0
lea eax, [ebp - 0x1200]
push str._n_Param_name_
push eax
lea esi, [edi + 1]
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x1200]
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str.__value_
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0x1200]
push eax
call sub.MSVCRT.dll_strcat
add esp, 0x40
lea eax, [ebp - 0x1200]
push str.____n
push eax
call sub.MSVCRT.dll_strcat
push ebx
push esi
call sub.MSVCRT.dll_strstr
add esp, 0x10
jmp 0x40b803
call sub.MSVCRT.dll_strstr
mov ebx, eax
pop ecx
test ebx, ebx
pop ecx
je 0x40b947
mov edi, ebx
lea eax, [ebp - 0x80]
sub edi, esi
push edi
push esi
push eax
call sub.MSVCRT.dll_strncpy
and byte [ebp + edi - 0x80], 0
inc ebx
lea eax, [ebp - 0x100]
push ebx
push eax
call sub.MSVCRT.dll_strcpy
lea eax, [ebp - 0x1200]
push str._n_Param_name_
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x1200]
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str.__value_
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0x1200]
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str.____n
push eax
call sub.MSVCRT.dll_strcat
add esp, 0x3c
lea eax, [ebp - 0x1200]
push str.__Url_
push eax
call sub.MSVCRT.dll_strcat
lea eax, [ebp - 0x1200]
push str._n__OpenSearchDescription_
push eax
call sub.MSVCRT.dll_strcat
add esp, 0x10
lea eax, [ebp - 0x1200]
push dword [ebp + 8]
push eax
call sub.MSVCRT.dll_strlen
pop ecx
push eax
lea eax, [ebp - 0x1200]
push 1
push eax
call sub.MSVCRT.dll_fwrite
push dword [ebp + 8]
call sub.MSVCRT.dll_fclose
add esp, 0x14
pop edi
pop esi
pop ebx
leave
ret