Function at 0x40bf4e
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x433764
mov eax, dword fs:[0]
push eax
sub esp, 0x190
mov eax, dword [0x4412dc]
xor eax, esp
mov dword [esp + 0x188], eax
push ebx
push esi
push edi
mov eax, dword [0x4412dc]
xor eax, esp
push eax
lea eax, [esp + 0x1a0]
mov dword fs:[0], eax
mov edi, ecx
lea ecx, [edi + 0x4c]
push 0x439a04
xor edx, edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x38], ecx
call fcn.0041352a
pop ecx
lea ecx, [esp + 0x1c]
call fcn.0040e18d
lea ecx, [edi + 0x28]
xor ebx, ebx
mov dword [esp + 0x1a8], ebx
mov dword [esp + 0x38], ecx
call fcn.00410214
lea esi, [esp + 0x1c]
call fcn.00410004
mov eax, dword [0x442d10]
lea esi, [esp + 0x70]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x44], vtable.CrashReportDlg.0
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
call fcn.0040c5c3
mov eax, dword [0x442d10]
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], eax
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x1a8], 1
mov eax, dword [edi + 0x14]
mov ecx, dword [ecx]
mov edx, dword [edi + 0x10]
push eax
push ecx
lea ebx, [edi + 0x30]
push edx
lea esi, [esp + 0x50]
call fcn.00410376
cmp byte [edi + 0x46], 0
jne 0x40c10c
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov dword [esp + 0x1c], eax
push 0
xor eax, eax
lea edi, [esp + 0x50]
call fcn.0040f7eb
test eax, eax
jne 0x40c088
push 0xe
call dword [sym.imp.KERNEL32.dll_SetLastError]
or eax, 0xffffffff
jmp 0x40c0b1
lea eax, [esp + 0x44]
lea esi, [esp + 0x4c]
call fcn.0040f7a2
push 0
push 0x40e490
push dword [esp + 0x24]
push 0x3e8
push dword [0x4435ec]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
mov ecx, dword [esp + 0x18]
cmp eax, 2
sete al
mov byte [ecx + 0x45], al
test al, al
je 0x40c10a
mov eax, ecx
cmp byte [eax + 0x44], 0
je 0x40c0d2
mov byte [eax + 0x46], 1
mov edi, eax
jmp 0x40c10c
or dword [esp + 0x1a8], 0xffffffff
lea eax, [esp + 0x44]
push eax
call fcn.0040c51a
xor al, al
mov ecx, dword [esp + 0x1a0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x188]
xor ecx, esp
call fcn.00419542
mov esp, ebp
pop ebp
ret
mov edi, ecx
cmp byte [esp + 0xe8], 0
jne 0x40c121
mov edi, ebx
call fcn.0040e45e
mov edi, dword [esp + 0x18]
lea eax, [esp + 0x3c]
push eax
call fcn.0041adbd
pop ecx
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0xf4]
push eax
call fcn.0041ab35
lea eax, [esp + 0xf8]
push eax
push str._Y__m__d__H:_M:_S
lea eax, [esp + 0x124]
push 0x40
push eax
call fcn.0041ba59
mov eax, dword [0x442d10]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x3c], eax
mov byte [esp + 0x1c0], 3
push dword [edi + 0xc]
lea eax, [esp + 0x40]
push dword [edi + 8]
push dword [edi + 4]
push str._s_s_s
push eax
call fcn.0040feaf
and dword [esp + 0x48], 0
and dword [esp + 0x5c], 0
add esp, 0x2c
lea eax, [esp + 0x1c]
push eax
push str.CrashCount
push dword [esp + 0x2c]
call fcn.00413814
add esp, 0xc
lea eax, [esp + 0x30]
push eax
push str.TotalUptime
push dword [esp + 0x2c]
call fcn.00413814
mov eax, dword [0x442d10]
add esp, 0xc
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov byte [esp + 0x1a8], 5
push dword [esp + 0x30]
mov esi, 0x439a74
lea eax, [esp + 0x2c]
push esi
push eax
call fcn.0040feaf
add esp, 0xc
push dword [esp + 0x1c]
lea eax, [esp + 0x30]
push esi
push eax
call fcn.0040feaf
add esp, 0xc
push str.__xml_version_1.0__encoding_utf_8___
lea eax, [esp + 0x18]
push eax
call fcn.00408b90
push str._BugReport__BsSndRptVersion_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
push 0x439b0c
lea edi, [esp + 0x20]
call fcn.0040ffb9
mov byte [esp + 0x1a8], 6
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c247
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
lea esi, [esp + 0x1c]
mov byte [esp + 0x1a8], 5
call fcn.00410004
push 0x439b10
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 4]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c27f
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str.__Vendor__AppName_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov ecx, dword [esi + 8]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c2a2
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str.__AppName__Version_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c2c5
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str.__Version__Description_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
push str.___CDATA_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c2f7
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str._____Description___AppInfo__ReportOccurence__User__Name____CDATA_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov eax, dword [0x442d10]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x64]
lea ecx, [esp + 0x18]
mov byte [esp + 0x1a8], 7
call fcn.00410214
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx - 8]
test eax, eax
jg 0x40c339
mov ecx, dword [esi + 0x1c]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c343
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str._____Name__Email____CDATA_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
lea eax, [esp + 0x68]
lea ecx, [esp + 0x18]
call fcn.00410214
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx - 8]
test eax, eax
jg 0x40c374
mov ecx, dword [esi + 0x20]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c37e
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str._____Email__IPAddress____CDATA_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov eax, dword [esp + 0x38]
mov ecx, dword [eax]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c3a4
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str._____IPAddress___User__DateTime_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
lea eax, [esp + 0x114]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
push str.__DateTime__Description____CDATA_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x18]
call fcn.00410214
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx - 8]
test eax, eax
jg 0x40c3f6
mov ecx, dword [esi + 0x24]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c400
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str._____Description__MFA_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov esi, dword [esi + 0x2c]
mov eax, dword [esi - 8]
test eax, eax
je 0x40c423
push esi
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str.__MFA__TotalAppUptime_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c447
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str.__TotalAppUptime__TotalCrashCount_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx - 8]
test eax, eax
je 0x40c46b
push ecx
lea ecx, [esp + 0x18]
call fcn.0040fb17
push str.__TotalCrashCount___ReportOccurence_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
push str.__BugReport_
lea eax, [esp + 0x18]
push eax
call fcn.0040fb78
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
and dword [esp + 0x20], 0
push str.w__ccsUNICODE
push eax
lea eax, [esp + 0x28]
push eax
call fcn.0041aecc
add esp, 0xc
cmp dword [esp + 0x20], 0
jne 0x40c4f6
xor bl, bl
lea esi, [esp + 0x18]
call fcn.00410004
lea esi, [esp + 0x2c]
call fcn.00410004
lea esi, [esp + 0x28]
call fcn.00410004
lea esi, [esp + 0x24]
call fcn.00410004
lea esi, [esp + 0x14]
call fcn.00410004
or dword [esp + 0x1a8], 0xffffffff
lea eax, [esp + 0x44]
push eax
call fcn.0040c51a
mov al, bl
jmp 0x40c0e6
push dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax - 8]
push 2
push ecx
push eax
call fcn.0041bc61
push dword [esp + 0x30]
call fcn.0041af80
add esp, 0x14
mov bl, 1
jmp 0x40c4b0