Function at 0x416930
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
or dword [esp + 0x14], 0xffffffff
xor eax, eax
push ebx
push esi
mov esi, ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], eax
mov ebx, edx
mov dword [esp + 0x10], ebx
mov dword [esp + 8], eax
push edi
test esi, esi
jne 0x416972
push 0x204
push str.C:UsersGauravDownloads_formatusb_master_1__formatusb_master_src_net.c
push str.url___NULL
call fcn.00486ba7
add esp, 0xc
push esi
call fcn.004816f0
pop ecx
add eax, 5
push eax
call fcn.004812e1
mov edi, dword [ebp + 8]
mov dword [esp + 0x1c], eax
pop ecx
test eax, eax
jne 0x41699e
push str.Could_not_allocate_signature_URL
call fcn.0042ed57
pop ecx
jmp 0x416b15
push esi
push eax
call fcn.00486c30
push str..sig
push dword [esp + 0x24]
call fcn.00486c40
push 0
lea eax, [esp + 0x24]
xor edx, edx
push edi
push eax
mov ecx, esi
call fcn.00416094
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x416b15
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x1c]
push 0
push 0
push eax
xor edx, edx
call fcn.00416094
mov ecx, 0x100
add esp, 0xc
cmp eax, ecx
jne 0x416ad2
push ecx
push dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov edx, esi
call fcn.0041b789
pop ecx
pop ecx
test eax, eax
je 0x416ad2
push str.Download_signature_is_valid_
call fcn.0042ed57
push 0x80
sub esp, 0xc
mov dword [0x52246c], 0xce
mov edx, 0xc0000000
mov ecx, ebx
call fcn.00415184
mov ebx, eax
add esp, 0x14
mov dword [esp + 0x20], ebx
cmp ebx, 0xffffffff
jne 0x416a67
call fcn.004158ba
mov ecx, dword [esp + 0x14]
push eax
call fcn.004151c9
push eax
push str.Unable_to_create_file__s:__s
call fcn.0042ed57
add esp, 0xc
jmp 0x416b15
push 0
lea eax, [esp + 0x10]
push eax
push esi
push dword [esp + 0x1c]
push ebx
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x416aa2
call fcn.004158ba
mov ecx, dword [esp + 0x14]
push eax
call fcn.004151c9
push eax
push str.Error_writing_file__s:__s
call fcn.0042ed57
add esp, 0xc
and dword [esp + 0xc], 0
jmp 0x416b15
cmp dword [esp + 0xc], esi
je 0x416ac6
mov ecx, dword [esp + 0x14]
push esi
push dword [esp + 0x10]
call fcn.004151c9
push eax
push str.Error_writing_file__s:_Only__d__d_bytes_written
call fcn.0042ed57
add esp, 0x10
jmp 0x416a9b
mov dword [0x52246c], 0xc8
jmp 0x416b15
push str.FATAL:_Download_signature_is_invalid_
call fcn.0042ed57
pop ecx
push 0
push 2
push 0x410
push 0x3f2
push edi
mov dword [0x52246c], 0x193
mov dword [0x4dc5d0], 0xe003120d
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 4
pop ecx
call fcn.0043313c
test edi, edi
je 0x416b2b
push 0
push dword [esp + 0x10]
push 0x8003
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebp + 0xc], 0
je 0x416bfb
cmp dword [0x52246c], 0xc8
je 0x416bfb
push 0xcaa
push 0
push 0
push 1
call fcn.00414c2d
add esp, 0x10
push dword [0x51d360]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, dword [0x4dc5d0]
test ecx, ecx
jns 0x416b75
call fcn.004300ee
jmp 0x416b7a
call fcn.004158ba
cmp dword [0x4dca1c], 0
mov ecx, 0x180010
movzx ebx, word [0x4d8f94]
mov dword [esp + 0x14], eax
push 0x10
pop eax
cmovne eax, ecx
push 0xbe4
mov dword [esp + 0x28], eax
call fcn.00414768
mov edi, dword [0x522464]
mov esi, eax
pop ecx
mov ecx, dword [esp + 0x14]
call fcn.00403761
mov ecx, esi
mov dword [esp + 0x14], eax
call fcn.00403761
push ebx
push dword [esp + 0x28]
mov ebx, dword [esp + 0x1c]
mov esi, eax
push esi
push ebx
push edi
call dword [sym.imp.USER32.dll_MessageBoxExW]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test ebx, ebx
je 0x416be9
push ebx
call fcn.004812c6
pop ecx
test esi, esi
je 0x416bf4
push esi
call fcn.004812c6
pop ecx
push edi
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [esp + 0x20]
cmp eax, 0xffffffff
je 0x416c0f
test eax, eax
je 0x416c0f
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [esp + 0x18]
call fcn.004812c6
pop ecx
push dword [esp + 0x10]
call fcn.004812c6
pop ecx
push dword [esp + 0x1c]
call fcn.004812c6
mov eax, dword [esp + 0x10]
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret