Function at 0x1090d750
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], 0x10934720
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 0x1090d85b
xor edi, edi
movzx eax, word [edi + 0x109335d0]
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 0x1090d7c2
xor edi, edi
movzx eax, word [edi + 0x10932d10]
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 0x1090d7e4
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x1090d84f
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 0x1090d84f
push eax
push 0x109361bc
push 0x1093651c
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 0x1090da0d
cmp ecx, 0x79
jne 0x1090d96b
xor edi, edi
jmp 0x1090d870
movzx eax, word [edi + 0x109335d0]
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 0x1090d870
xor edi, edi
movzx eax, word [edi + 0x10932d10]
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 0x1090d892
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x1090d8fd
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 0x1090d8fd
push eax
push 0x109361bc
push 0x1093651c
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 0x1090d905
sub ecx, edx
sar ecx, 1
push ebx
xor ebx, ebx
lea edx, [ecx - 1]
test edx, edx
js 0x1090d942
mov edi, edi
movzx eax, word [edi + edx*2]
cmp eax, 0x5c
je 0x1090d942
cmp eax, 0x2f
je 0x1090d942
mov ecx, eax
cmp eax, 0x41
jb 0x1090d93d
cmp eax, 0x5a
ja 0x1090d93d
add ecx, 0x20
add ebx, ecx
dec edx
jns 0x1090d920
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 0x1090da14
xor edi, edi
lea esp, [esp]
movzx eax, word [edi + 0x109335d0]
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 0x1090d980
xor edi, edi
movzx eax, word [edi + 0x109335c4]
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 0x1090d9a2
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x1090da0d
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 0x1090da0d
push eax
push 0x109361bc
push 0x1093651c
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