Function at 0x4154e9
Capabilities:
Accept command line arguments
Write file on windows

Disassembly:
push 0x130
mov eax, 0x46e4a0
call fcn.0042d92c
mov esi, dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push 0x47bf6c
push eax
call fcn.00421374
pop ecx
pop ecx
test eax, eax
je 0x415591
push 9
pop ecx
lea eax, [ebp - 0x38]
mov esi, str.._partner_xml.xml
lea edi, [ebp - 0x38]
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.00423929
pop ecx
lea ecx, [ebp - 0x50]
call fcn.004158e9
xor ebx, ebx
cmp dword [ebp - 0x40], ebx
je 0x415581
push 0x47bfb4
lea eax, [ebp - 0x38]
mov dword [ebp - 0x58], ebx
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.00423932
add esp, 0xc
cmp dword [ebp - 0x58], ebx
je 0x415581
push dword [ebp - 0x58]
cmp dword [ebp - 0x3c], 0x10
lea eax, [ebp - 0x50]
push 1
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.004223bd
push dword [ebp - 0x58]
call fcn.0042283c
push dword [ebp - 0x58]
call fcn.004229e5
add esp, 0x18
push ebx
push 1
lea ecx, [ebp - 0x50]
call fcn.004040be
jmp 0x415736
push 2
pop edi
push edi
xor ebx, ebx
push ebx
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jns 0x4155e4
push 1
push ecx
lea ecx, [ebp - 0x13c]
call fcn.00411b3f
lea eax, [ebp - 0x13c]
mov dword [ebp - 4], ebx
test eax, eax
je 0x4155cd
mov edx, str.Cant_initialize_COM.
lea ecx, [ebp - 0x12c]
call fcn.0040a46c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call fcn.00411856
push 0xfffffffffffffffb
pop eax
jmp 0x415738
mov dl, 1
mov ecx, 0x47bfe8
call fcn.00405112
push ebx
lea eax, [ebp - 0x88]
mov dword [ebp - 0x88], 1
push eax
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x84], ebx
push eax
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x5c], ebx
call dword [sym.imp.gdiplus.dll_GdiplusStartup]
test eax, eax
je 0x415664
push 1
push ecx
lea ecx, [ebp - 0x13c]
call fcn.00411b3f
lea eax, [ebp - 0x13c]
mov dword [ebp - 4], 1
test eax, eax
je 0x41564e
mov edx, 0x47bfec
lea ecx, [ebp - 0x12c]
call fcn.0040a46c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x13c]
call fcn.00411856
push 0xfffffffffffffffc
jmp 0x4155de
mov dword [ebp - 0x58], ebx
mov dword [ebp - 4], edi
push 0x1c8
mov byte [ebp - 4], 3
call fcn.00420cea
pop ecx
mov dword [ebp - 0x8c], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x415693
push esi
mov ecx, eax
call fcn.0040b0b5
mov esi, eax
jmp 0x4156a2
mov esi, ebx
jmp 0x4156a2
test esi, esi
je 0x415713
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x78]
rep stosd dword es:[edi], eax
mov edi, dword [sym.imp.USER32.dll_GetMessageW]
jmp 0x415706
cmp dword [ebp - 0x74], 0x100
jne 0x4156cb
cmp dword [ebp - 0x70], 0x1b
mov byte [ebp - 0x51], 1
je 0x4156ce
mov byte [ebp - 0x51], bl
push dword [ebp - 0x78]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4156ec
lea eax, [ebp - 0x78]
push eax
push dword [ebp - 0x78]
call dword [sym.imp.USER32.dll_IsDialogMessageW]
test eax, eax
jne 0x415700
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
cmp byte [ebp - 0x51], 0
jne 0x415713
push ebx
push ebx
push ebx
lea eax, [ebp - 0x78]
push eax
call edi
test eax, eax
jne 0x4156b8
or dword [ebp - 4], 0xffffffff
test esi, esi
je 0x415723
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
push dword [ebp - 0x5c]
call dword [sym.imp.gdiplus.dll_GdiplusShutdown]
call fcn.004118df
call fcn.004050ce
xor eax, eax
call fcn.0042d87e
ret 0x10