Function at 0x15031030
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x15101248
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x10], esi
call sym.Core.dll_public:_void___thiscall_FArchive::constructor_void_
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x14]
mov dword [esi + 0x40], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x44], eax
mov eax, dword [ebp + 0x10]
mov dword [esi], 0x151193c0
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 0
mov dword [esi + 0x1c], 1
mov dword [esi + 0x14], 1
mov byte [esi + 0x450], 0xac
cmp ecx, 0x6f
jne 0x15031145
xor edi, edi
movzx eax, word [edi + 0x15113eb0]
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], eax
mov eax, dword [esi]
push 2
push ecx
mov ecx, esi
call dword [eax + 4]
add edi, 2
cmp edi, 0x16
jb 0x150310a1
xor edi, edi
movzx eax, word [edi + 0x15113da0]
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], eax
mov eax, dword [esi]
push 2
push ecx
mov ecx, esi
call dword [eax + 4]
add edi, 2
cmp edi, 6
jb 0x150310c2
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x15031139
push 0
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], 0
push ecx
push eax
lea eax, [esi + 0x50]
push eax
push dword [esi + 0x40]
call dword [sym.imp.kernel32.dll_WriteFile]
test eax, eax
jne 0x15031139
push eax
push 0x15118d4c
mov dword [esi + 0x2c], 1
call sym.Core.dll_wchar_t_const____cdecl_appFromAnsi_char_const___wchar_t__
push 0
push 0
push 0x151138c0
push eax
push 0x1511fb74
call sym.Core.dll_wchar_t_const____cdecl_Localize_wchar_t_const___wchar_t_const___wchar_t_const___wchar_t_const___int_
push eax
push dword [esi + 0x44]
call sym.Core.dll_public:_void___cdecl_FOutputDevice::Logf_wchar_t_const__
add esp, 0x24
mov byte [esi + 0x450], 0xac
jmp 0x15031308
cmp ecx, 0x79
jne 0x1503125d
xor edi, edi
movzx eax, word [edi + 0x15113eb0]
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], eax
mov eax, dword [esi]
push 2
push ecx
mov ecx, esi
call dword [eax + 4]
add edi, 2
cmp edi, 0x16
jb 0x15031150
xor edi, edi
movzx eax, word [edi + 0x15113da0]
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], eax
mov eax, dword [esi]
push 2
push ecx
mov ecx, esi
call dword [eax + 4]
add edi, 2
cmp edi, 6
jb 0x15031171
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x150311e8
push 0
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], 0
push ecx
push eax
lea eax, [esi + 0x50]
push eax
push dword [esi + 0x40]
call dword [sym.imp.kernel32.dll_WriteFile]
test eax, eax
jne 0x150311e8
push eax
push 0x15118d4c
mov dword [esi + 0x2c], 1
call sym.Core.dll_wchar_t_const____cdecl_appFromAnsi_char_const___wchar_t__
push 0
push 0
push 0x151138c0
push eax
push 0x1511fb74
call sym.Core.dll_wchar_t_const____cdecl_Localize_wchar_t_const___wchar_t_const___wchar_t_const___wchar_t_const___int_
push eax
push dword [esi + 0x44]
call sym.Core.dll_public:_void___cdecl_FOutputDevice::Logf_wchar_t_const__
add esp, 0x24
mov edi, dword [ebp + 0x18]
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x150311f0
sub ecx, edx
sar ecx, 1
push ebx
xor ebx, ebx
lea edx, [ecx - 1]
test edx, edx
js 0x15031234
nop dword [eax]
movzx eax, word [edi + edx*2]
cmp eax, 0x5c
je 0x15031234
cmp eax, 0x2f
je 0x15031234
mov ecx, eax
cmp eax, 0x41
jb 0x1503122d
cmp eax, 0x5a
ja 0x1503122d
add ecx, 0x20
add ebx, ecx
sub edx, 1
jns 0x15031210
mov byte [esi + 0x450], bl
mov dword [esi + 0x4c], 0
mov dword [ebp - 4], 0xffffffff
mov eax, esi
pop ebx
pop edi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x14
cmp ecx, 0x137
jne 0x1503130f
xor edi, edi
nop dword [eax + eax]
movzx eax, word [edi + 0x15113eb0]
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], eax
mov eax, dword [esi]
push 2
push ecx
mov ecx, esi
call dword [eax + 4]
add edi, 2
cmp edi, 0x16
jb 0x15031270
xor edi, edi
movzx eax, word [edi + 0x15113d44]
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], eax
mov eax, dword [esi]
push 2
push ecx
mov ecx, esi
call dword [eax + 4]
add edi, 2
cmp edi, 6
jb 0x15031291
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x15031308
push 0
lea ecx, [ebp + 0x14]
mov dword [ebp + 0x14], 0
push ecx
push eax
lea eax, [esi + 0x50]
push eax
push dword [esi + 0x40]
call dword [sym.imp.kernel32.dll_WriteFile]
test eax, eax
jne 0x15031308
push eax
push 0x15118d4c
mov dword [esi + 0x2c], 1
call sym.Core.dll_wchar_t_const____cdecl_appFromAnsi_char_const___wchar_t__
push 0
push 0
push 0x151138c0
push eax
push 0x1511fb74
call sym.Core.dll_wchar_t_const____cdecl_Localize_wchar_t_const___wchar_t_const___wchar_t_const___wchar_t_const___int_
push eax
push dword [esi + 0x44]
call sym.Core.dll_public:_void___cdecl_FOutputDevice::Logf_wchar_t_const__
add esp, 0x24
mov dword [esi + 0x4c], 0
mov dword [ebp - 4], 0xffffffff
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x14