Function at 0x1090d6e0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1092b0c9
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 dword [sym.imp.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], 0x10933b5c
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 0x1090d7eb
xor edi, edi
movzx eax, word [edi + 0x10932ec0]
mov ecx, esi
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
push 2
push eax
call dword [sym.imp.Core.dll_public:_class_FArchive____thiscall_FArchive::ByteOrderSerialize_void___int_]
add edi, 2
cmp edi, 0x16
jb 0x1090d752
xor edi, edi
movzx eax, word [edi + 0x10933388]
mov ecx, esi
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
push 2
push eax
call dword [sym.imp.Core.dll_public:_class_FArchive____thiscall_FArchive::ByteOrderSerialize_void___int_]
add edi, 2
cmp edi, 6
jb 0x1090d774
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x1090d7df
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 0x1090d7df
push eax
push 0x109359f0
push 0x10935d0c
mov dword [esi + 0x2c], 1
call dword [sym.imp.Core.dll_wchar_t_const____cdecl_LocalizeError_char_const___wchar_t_const___wchar_t_const__]
push eax
push dword [esi + 0x44]
call dword [sym.imp.Core.dll_public:_void___cdecl_FOutputDevice::Logf_wchar_t_const__]
add esp, 0x14
mov byte [esi + 0x450], 0xac
jmp 0x1090d99d
cmp ecx, 0x79
jne 0x1090d8fb
xor edi, edi
jmp 0x1090d800
movzx eax, word [edi + 0x10932ec0]
mov ecx, esi
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
push 2
push eax
call dword [sym.imp.Core.dll_public:_class_FArchive____thiscall_FArchive::ByteOrderSerialize_void___int_]
add edi, 2
cmp edi, 0x16
jb 0x1090d800
xor edi, edi
movzx eax, word [edi + 0x10933388]
mov ecx, esi
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
push 2
push eax
call dword [sym.imp.Core.dll_public:_class_FArchive____thiscall_FArchive::ByteOrderSerialize_void___int_]
add edi, 2
cmp edi, 6
jb 0x1090d822
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x1090d88d
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 0x1090d88d
push eax
push 0x109359f0
push 0x10935d0c
mov dword [esi + 0x2c], 1
call dword [sym.imp.Core.dll_wchar_t_const____cdecl_LocalizeError_char_const___wchar_t_const___wchar_t_const__]
push eax
push dword [esi + 0x44]
call dword [sym.imp.Core.dll_public:_void___cdecl_FOutputDevice::Logf_wchar_t_const__]
add esp, 0x14
mov edi, dword [ebp + 0x18]
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1090d895
sub ecx, edx
sar ecx, 1
push ebx
xor ebx, ebx
lea edx, [ecx - 1]
test edx, edx
js 0x1090d8d2
mov edi, edi
movzx eax, word [edi + edx*2]
cmp eax, 0x5c
je 0x1090d8d2
cmp eax, 0x2f
je 0x1090d8d2
mov ecx, eax
cmp eax, 0x41
jb 0x1090d8cd
cmp eax, 0x5a
ja 0x1090d8cd
add ecx, 0x20
add ebx, ecx
dec edx
jns 0x1090d8b0
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 0x1090d9a4
xor edi, edi
lea esp, [esp]
movzx eax, word [edi + 0x10932ec0]
mov ecx, esi
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
push 2
push eax
call dword [sym.imp.Core.dll_public:_class_FArchive____thiscall_FArchive::ByteOrderSerialize_void___int_]
add edi, 2
cmp edi, 0x16
jb 0x1090d910
xor edi, edi
movzx eax, word [edi + 0x10932eb4]
mov ecx, esi
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
push 2
push eax
call dword [sym.imp.Core.dll_public:_class_FArchive____thiscall_FArchive::ByteOrderSerialize_void___int_]
add edi, 2
cmp edi, 6
jb 0x1090d932
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x1090d99d
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 0x1090d99d
push eax
push 0x109359f0
push 0x10935d0c
mov dword [esi + 0x2c], 1
call dword [sym.imp.Core.dll_wchar_t_const____cdecl_LocalizeError_char_const___wchar_t_const___wchar_t_const__]
push eax
push dword [esi + 0x44]
call dword [sym.imp.Core.dll_public:_void___cdecl_FOutputDevice::Logf_wchar_t_const__]
add esp, 0x14
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