Function at 0x45df44
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push 0x198
mov eax, 0x4d8f76
call fcn.004c74e0
mov ebx, ecx
mov dword [ebp - 0x28], ebx
xor edi, edi
mov dword [ebp - 0x44], edi
mov esi, dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::constructor_void_]
lea ecx, [ebp - 0x14]
call esi
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], edi
call esi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::constructor_void_]
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 0x20]
mov ecx, dword [ecx]
mov esi, dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::destructor_void_]
mov dword [ebp - 0x30], edi
cmp ecx, edi
mov edi, dword [ebp + 8]
mov byte [ebp - 4], 2
jne 0x45dfd3
push dword [edi + 0x20]
lea ecx, [eax + 0x10]
push dword [edi + 0x1c]
call fcn.0044fae3
push str.ProtocolVersion
lea eax, [ebp - 0x38]
push edi
push eax
call fcn.0045bc37
add esp, 0xc
mov ecx, dword [ebx + 8]
push eax
add ecx, 0x20
mov byte [ebp - 4], 3
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call esi
push str.Command
push dword [ebp + 8]
lea eax, [ebp - 0x38]
push eax
call fcn.0045bc37
add esp, 0xc
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 4
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call esi
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov edi, dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::constructor_char_const__]
mov byte [ebp - 0xd], 0
test eax, eax
jne 0x45e08d
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x78]
mov dword [ebp - 0x38], eax
test eax, eax
je 0x45e08d
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x4c], eax
call dword [sym.imp.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::getUtf8_void_]
push eax
push dword [ebp - 0x38]
lea ecx, [ebp - 0x14]
push dword [ebp - 0x4c]
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::decode_char_const___int__class_ScCore::Encoder_const__]
and dword [ebp - 0x50], 0
push 1
push 1
push 0
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.ScCore.dll_public:_static_class_ScCore::XML____cdecl_ScCore::XML::parse_class_ScCore::String_const___int___class_ScCore::Error___bool__bool__bool_]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x20]
add esp, 0x18
cmp dword [eax], 0
jne 0x45e06b
xor eax, eax
jmp 0x45e070
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0x30], eax
test eax, eax
jne 0x45e0e9
mov eax, dword [ebp - 0x24]
add eax, 8
push eax
lea ecx, [ebp - 0x14]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
mov byte [ebp - 0xd], 1
jmp 0x45e0e9
push 0x28
call dword [sym.imp.ScCore.dll_public:_static_void____cdecl_ScCore::Heap::operator_new_unsigned_int_]
pop ecx
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x45e0ce
push 0x4f578c
lea ecx, [ebp - 0x70]
call edi
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x70]
push eax
mov byte [ebp - 4], 6
mov dword [ebp - 0x44], 1
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::XML::constructor_class_ScCore::String_const__]
mov eax, dword [ebp - 0x2c]
mov dword [eax], vtable.ScCore::XML.0
jmp 0x45e0d0
xor eax, eax
test byte [ebp - 0x44], 1
mov dword [ebp - 0x24], eax
mov dword [ebp - 4], 2
je 0x45e0e9
and dword [ebp - 0x44], 0xfffffffe
lea ecx, [ebp - 0x70]
call esi
and dword [ebp - 0x2c], 0
mov dword [ebp - 0x3c], 0x1001
mov eax, dword [ebp - 0x2c]
push dword [eax*8 + 0x548b20]
lea ecx, [ebp - 0x14]
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::cmp_char_const__const]
test eax, eax
je 0x45e116
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x25
jb 0x45e0f4
jmp 0x45e12a
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax*8 + 0x548b24]
mov dword [ebp - 0x3c], eax
cmp eax, 0x1001
jne 0x45e137
cmp byte [ebp - 0xd], 0
jne 0x45e137
mov dword [ebp - 0x30], 0x20
push str.Engine
push dword [ebp + 8]
lea eax, [ebp - 0x34]
push eax
call fcn.0045bc37
add esp, 0xc
cmp byte [ebp - 0xd], 0
mov byte [ebp - 4], 8
je 0x45e194
push str._engine
lea ecx, [ebp - 0x2c]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 9
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::getText_class_ScCore::String_const__]
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xa
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 9
call esi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 8
call esi
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x34]
push eax
call fcn.0045c974
and dword [ebp - 0x2c], 0
cmp dword [ebp - 0x30], 0
mov dword [ebp - 0x1c], eax
jne 0x45e296
test eax, eax
jne 0x45e296
cmp dword [ebp - 0x3c], 0x2000
jge 0x45e235
cmp dword [ebp - 0x3c], 0x1005
jne 0x45e1d3
mov eax, dword [ebp - 0x34]
cmp dword [eax], 0
jg 0x45e235
cmp dword [ebp - 0x3c], 0x1000
jge 0x45e296
call dword [sym.imp.ExtendScript.dll_public:_static_class_ScScript::Engine____cdecl_ScScript::Engine::getCurrent_void_]
test eax, eax
je 0x45e22c
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.ExtendScript.dll_public:_static_class_ScScript::Engine____cdecl_ScScript::Engine::getCurrent_void_]
mov ecx, eax
call dword [sym.imp.ExtendScript.dll_public:_class_ScCore::String_const____thiscall_ScScript::Engine::getName_void_const]
mov ecx, eax
call dword [sym.imp.ScCore.dll_public:_bool___thiscall_ScCore::String::operator_class_ScCore::String_const__const]
test al, al
je 0x45e22c
push 0x22
call dword [sym.imp.ScCore.dll_public:_static_void____cdecl_ScCore::Heap::operator_new_unsigned_int_]
pop ecx
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x45e283
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.ExtendScript.dll_public:_static_class_ScScript::Engine____cdecl_ScScript::Engine::getCurrent_void_]
mov ecx, dword [ebp - 0x38]
push eax
jmp 0x45e27b
mov dword [ebp - 0x30], 0x20
jmp 0x45e296
mov eax, dword [ebx + 8]
inc dword [eax + 0x3c]
mov eax, dword [ebx]
lea ecx, [ebp - 0x34]
push ecx
mov ecx, ebx
call dword [eax + 0x2c]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebx + 8]
dec dword [eax + 0x3c]
cmp dword [ebp - 0x2c], 0
jne 0x45e25e
mov dword [ebp - 0x30], 0x39
jmp 0x45e296
push 0x22
call dword [sym.imp.ScCore.dll_public:_static_void____cdecl_ScCore::Heap::operator_new_unsigned_int_]
pop ecx
mov dword [ebp - 0x5c], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x45e283
lea ecx, [ebp - 0x34]
push ecx
push dword [ebp - 0x2c]
mov ecx, eax
push ebx
call fcn.0045b249
jmp 0x45e285
xor eax, eax
mov ecx, dword [ebx + 8]
push eax
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 8
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::SimpleArray::append_int_]
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::constructor_void_]
xor eax, eax
mov dword [ebp - 0x5c], eax
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x30], eax
jne 0x45f0a8
mov ecx, dword [ebp - 0x3c]
mov eax, 0x1006
cmp ecx, eax
jg 0x45ea7b
je 0x45ea21
mov eax, 0x102
cmp ecx, eax
jg 0x45e460
je 0x45e41a
cmp ecx, 0x21
je 0x45e303
cmp ecx, 0x62
je 0x45e303
cmp ecx, 0x69
je 0x45e303
cmp ecx, 0x6f
je 0x45e303
cmp ecx, 0x71
jle 0x45ebf4
cmp ecx, 0x73
jg 0x45ebf4
cmp byte [ebp - 0xd], 0
je 0x45e36a
push str._shutdown
lea ecx, [ebp - 0x90]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x90]
push eax
mov byte [ebp - 4], 0x41
call dword [sym.imp.ScCore.dll_public:_bool___thiscall_ScCore::XML::getBool_class_ScCore::String_const__const]
mov ecx, dword [ebx + 8]
mov byte [ecx + 0x41], al
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xe
call esi
cmp dword [ebp - 0x3c], 0x62
je 0x45e34c
cmp dword [ebp - 0x3c], 0x21
je 0x45e34c
xor ecx, ecx
jmp 0x45e34f
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x20], cl
lea ecx, [ebp - 0x20]
push ecx
push dword [ebp - 0x24]
mov ecx, dword [eax + 0x10]
call dword [sym.imp.ExtendScript.dll_public:_class_ScCore::XML____thiscall_ScScript::DebugAPI::executeXML_class_ScCore::XML_const___class_ScCore::Error__]
jmp 0x45e40e
push str.Shutdown
push dword [ebp + 8]
call fcn.0045bca5
mov ecx, dword [ebx + 8]
test eax, eax
push str.Profiling
push dword [ebp + 8]
setne al
mov byte [ecx + 0x41], al
call fcn.0045bca5
add esp, 0x10
push eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 8]
call dword [sym.imp.ExtendScript.dll_public:_void___thiscall_ScScript::Engine::setProfilingLevel_int_]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x18]
push str.DebugFlags
push dword [ebp + 8]
mov dword [ebp - 0x28], eax
call fcn.0045bca5
pop ecx
pop ecx
mov ecx, dword [ebp - 0x28]
and ecx, 0xfffffbfc
or eax, ecx
cmp dword [ebp - 0x3c], 0x62
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx + 8]
mov dword [ecx + 0x18], eax
je 0x45e3de
cmp dword [ebp - 0x3c], 0x21
je 0x45e3de
xor eax, eax
jmp 0x45e3e1
xor eax, eax
inc eax
mov ecx, dword [ebp - 0x1c]
push str.IgnoreErrors
push dword [ebp + 8]
mov byte [ecx + 0x20], al
call fcn.0045bca5
test eax, eax
pop ecx
setne al
movzx eax, al
pop ecx
push eax
mov eax, dword [ebp - 0x1c]
push dword [ebp - 0x3c]
mov ecx, dword [eax + 0x10]
call dword [sym.imp.ExtendScript.dll_public:_void___thiscall_ScScript::DebugAPI::command_enum_ScScript::DebugAPI::Cmd__bool_]
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0x21], 0
jmp 0x45f0a8
mov ecx, dword [ebp - 0x28]
mov ecx, dword [ecx + 8]
push dword [ecx + 0x34]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x74]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x14]
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::decode_char_const___int__class_ScCore::Encoder_const__]
mov eax, dword [ebp - 0x14]
add eax, 0xc
push eax
call dword [sym.imp.ScCore.dll_public:_static_int___cdecl_ScCore::UnicodeUtils::watol_unsigned_short_int_const__]
mov ebx, dword [ebp - 0x1c]
pop ecx
mov ecx, dword [ebx + 0x10]
push eax
call dword [sym.imp.ExtendScript.dll_public:_void___thiscall_ScScript::DebugAPI::setContextLevel_int_]
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 8]
call fcn.0045c1f3
jmp 0x45f0a5
mov eax, ecx
sub eax, 0x1002
je 0x45e8bc
dec eax
je 0x45e79d
dec eax
je 0x45e76a
dec eax
jne 0x45ebf4
call dword [sym.imp.ExtendScript.dll_public:_static_class_ScScript::Engine____cdecl_ScScript::Engine::getCurrent_void_]
cmp dword [ebp - 0x1c], 0
je 0x45e612
mov ecx, dword [ebp - 0x1c]
cmp eax, dword [ecx + 8]
jne 0x45e4c6
push str.ENGINE_BUSY
lea ecx, [ebp - 0xb4]
call edi
push 1
push 0
push eax
push 1
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x13
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::push_int__class_ScCore::String_const___class_ScCore::Cloneable_const___bool_]
lea ecx, [ebp - 0xb4]
jmp 0x45ecfb
cmp byte [ebp - 0xd], 0
je 0x45e4fe
push str.eval
lea ecx, [ebp - 0x98]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x98]
push eax
mov byte [ebp - 4], 0x14
call dword [sym.imp.ScCore.dll_public:_bool___thiscall_ScCore::XML::setName_class_ScCore::String_const__]
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xe
call esi
jmp 0x45ebf4
lea ecx, [ebp - 0x1a4]
call fcn.00459e36
push str.Eval
push str.Command
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 0x15
call fcn.00458e31
push str.File
push dword [ebp + 8]
lea eax, [ebp - 0x100]
push eax
call fcn.0045bc37
add esp, 0xc
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0x16
call dword [sym.imp.ScCore.dll_public:_static_class_ScCore::Encoder_const____cdecl_ScCore::Encoder::getUtf8_void_]
mov ecx, dword [ebp - 0x28]
push eax
call dword [sym.imp.ScCore.dll_public:_char_const____thiscall_ScCore::String::encode_class_ScCore::Encoder_const__const]
push eax
push str.ScriptID
lea ecx, [ebp - 0x1a4]
call fcn.00458e31
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0x15
call esi
mov ecx, dword [ebx + 8]
push 0
add ecx, 0xc
call dword [sym.imp.ScCore.dll_public:_char_const____thiscall_ScCore::String::encode_class_ScCore::Encoder_const__const]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x19c]
call fcn.0044fae3
mov eax, dword [ebx + 8]
push dword [eax + 0x18]
lea ecx, [ebp - 0x18c]
push dword [eax + 0x14]
call fcn.0044fae3
mov eax, dword [ebp + 8]
push dword [eax + 0x78]
lea ecx, [ebp - 0x134]
push dword [eax + 0x74]
call fcn.0044fae3
mov eax, dword [ebx]
lea ecx, [ebp - 0x20]
push ecx
lea ecx, [ebp - 0x1a4]
push ecx
mov ecx, dword [ebp - 0x1c]
push dword [ecx + 8]
lea ecx, [ebp - 0xac]
push ecx
mov ecx, ebx
call dword [eax + 0x48]
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x17
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x15
call esi
mov eax, dword [ebp - 0x20]
cmp dword [eax], 0
jne 0x45e5f6
xor eax, eax
jmp 0x45e5fb
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0xe
call fcn.00458cdd
jmp 0x45f0a8
test eax, eax
je 0x45e642
push str.ENGINE_BUSY
lea ecx, [ebp - 0xf4]
call edi
push 1
push 0
push eax
push 1
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x18
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::push_int__class_ScCore::String_const___class_ScCore::Cloneable_const___bool_]
lea ecx, [ebp - 0xf4]
jmp 0x45ecfb
cmp byte [ebp - 0xd], 0
je 0x45e6fe
push str.source
lea ecx, [ebp - 0xa0]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0xbc]
push eax
mov byte [ebp - 4], 0x19
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::getText_class_ScCore::String_const__]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x1a
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x19
call esi
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xe
call esi
push str._file
lea ecx, [ebp - 0xa8]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 4], 0x1b
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::getText_class_ScCore::String_const__]
push 0
push eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x1c
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::FileSpec::constructor_class_ScCore::String_const___bool_]
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x1e
call esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x1f
call esi
mov eax, dword [ebx]
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp + 8]
push ecx
mov ecx, ebx
call dword [eax + 0x40]
lea ecx, [ebp + 8]
jmp 0x45e75b
mov ecx, dword [ebx + 8]
push dword [ecx + 0x34]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x74]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x14]
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::decode_char_const___int__class_ScCore::Encoder_const__]
push str.File
push dword [ebp + 8]
lea eax, [ebp - 0xc4]
push eax
call fcn.0045bc37
add esp, 0xc
push 0
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x20
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::FileSpec::constructor_class_ScCore::String_const___bool_]
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x22
call esi
mov eax, dword [ebx]
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x28]
push ecx
mov ecx, ebx
call dword [eax + 0x40]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xe
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::FileSpec::destructor_void_]
jmp 0x45f0a8
cmp byte [ebp - 0xd], 0
mov eax, dword [ebx + 8]
je 0x45e784
mov byte [eax + 0x42], 1
mov ecx, dword [ebx + 8]
call fcn.0045b3c1
jmp 0x45ec21
inc dword [eax + 0x3c]
mov eax, dword [ebx]
lea ecx, [ebp - 0x18]
push ecx
mov ecx, ebx
call dword [eax + 0x28]
mov eax, dword [ebx + 8]
dec dword [eax + 0x3c]
jmp 0x45f0a8
cmp byte [ebp - 0xd], 0
je 0x45e83c
push 0x4f5560
lea ecx, [ebp - 0x84]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x104]
push eax
mov byte [ebp - 4], 0x3c
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::getText_class_ScCore::String_const__]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x3d
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0x104]
mov byte [ebp - 4], 0x3c
call esi
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0xe
call esi
push str.source
lea ecx, [ebp - 0x64]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0xcc]
push eax
mov byte [ebp - 4], 0x3e
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::getText_class_ScCore::String_const__]
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x3f
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0x3e
call esi
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xe
call esi
jmp 0x45e885
push str.ScriptID
push dword [ebp + 8]
lea eax, [ebp - 0xec]
push eax
call fcn.0045bc37
add esp, 0xc
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x40
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0xe
call esi
mov ecx, dword [ebx + 8]
push dword [ecx + 0x34]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x74]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x40]
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::decode_char_const___int__class_ScCore::Encoder_const__]
mov eax, dword [ebx]
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x34]
push ecx
mov ecx, ebx
call dword [eax + 0x24]
mov dword [ebp - 0x30], eax
test eax, eax
je 0x45f0a8
push 1
push 0
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x30]
lea ecx, [ebp - 0x20]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::push_int__class_ScCore::String_const___class_ScCore::Cloneable_const___bool_]
jmp 0x45f0a8
cmp byte [ebp - 0xd], 0
je 0x45e9d8
push 0x4f5560
lea ecx, [ebp - 0xa4]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0xd4]
push eax
mov byte [ebp - 4], 0x35
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::getText_class_ScCore::String_const__]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x36
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0x35
call esi
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [ebx]
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x34]
push ecx
mov ecx, ebx
call dword [eax + 0x20]
push 0x28
mov dword [ebp - 0x30], eax
call dword [sym.imp.ScCore.dll_public:_static_void____cdecl_ScCore::Heap::operator_new_unsigned_int_]
pop ecx
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x37
test eax, eax
je 0x45e96b
push str.script
lea ecx, [ebp - 0x6c]
call edi
mov ecx, dword [ebp + 8]
or dword [ebp - 0x44], 4
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 4], 0x38
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::XML::constructor_class_ScCore::String_const__]
mov eax, dword [ebp + 8]
mov dword [eax], vtable.ScCore::XML.0
mov dword [ebp + 8], eax
jmp 0x45e96f
and dword [ebp + 8], 0
test byte [ebp - 0x44], 4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x48], eax
mov dword [ebp - 4], 0xe
je 0x45e987
lea ecx, [ebp - 0x6c]
call esi
push 0x4f5560
lea ecx, [ebp - 0x8c]
call edi
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x8c]
push eax
mov byte [ebp - 4], 0x3a
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0xe
call esi
push 1
lea eax, [ebp - 0x18]
push accept
push eax
call fcn.0045b0b5
pop ecx
mov ecx, dword [ebp + 8]
push eax
call dword [sym.imp.ScCore.dll_public:_bool___thiscall_ScCore::XML::insert_class_ScCore::XML_const___int__bool_]
jmp 0x45f0a8
push str.ScriptID
push dword [ebp + 8]
lea eax, [ebp - 0xfc]
push eax
call fcn.0045bc37
add esp, 0xc
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x3b
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [ebx]
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x34]
push ecx
mov ecx, ebx
call dword [eax + 0x20]
jmp 0x45eb9e
push str.4.2.12
lea ecx, [ebp - 0x18]
call dword [0x4efd9c]
push 0xa
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_char_]
and dword [ebp + 8], 0
cmp dword [ebp + 8], 0
je 0x45ea4f
push 0x2c
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_char_]
mov eax, dword [ebp + 8]
push dword [eax*8 + 0x548b20]
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_char_const__]
inc dword [ebp + 8]
cmp dword [ebp + 8], 0x25
jb 0x45ea3e
push 0xa
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_char_]
jmp 0x45f0a8
mov eax, 0x1103
cmp ecx, eax
jg 0x45ebd2
je 0x45eba6
mov eax, ecx
sub eax, 0x1007
je 0x45eb90
dec eax
je 0x45eb18
dec eax
je 0x45eae6
sub eax, 7
je 0x45eada
sub eax, 0xf2
jne 0x45ebf4
push str.get_package
lea ecx, [ebp - 0x74]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x74]
push eax
mov byte [ebp - 4], 0x46
call dword [sym.imp.ScCore.dll_public:_bool___thiscall_ScCore::XML::setName_class_ScCore::String_const__]
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0xe
call esi
jmp 0x45ebfe
mov eax, dword [ebx + 8]
mov byte [eax + 0x42], 1
jmp 0x45f0a8
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x1c]
lea eax, [ebp - 0xdc]
push dword [ebx + 8]
push eax
call fcn.0045da33
add esp, 0x10
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x23
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xdc]
jmp 0x45ecac
push str.tofront
lea ecx, [ebp - 0x9c]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x9c]
push eax
mov byte [ebp - 4], 0x42
call dword [sym.imp.ScCore.dll_public:_bool___thiscall_ScCore::XML::setName_class_ScCore::String_const__]
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0xe
call esi
push 0x4f5560
lea ecx, [ebp - 0x7c]
call edi
push 0x4f574c
push dword [ebp + 8]
lea eax, [ebp - 0xb0]
push eax
mov byte [ebp - 4], 0x43
call fcn.0045bc37
add esp, 0xc
mov ecx, dword [ebp - 0x24]
push eax
lea eax, [ebp - 0x7c]
push eax
mov byte [ebp - 4], 0x44
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x43
call esi
lea ecx, [ebp - 0x7c]
jmp 0x45eacf
mov eax, dword [ebx]
lea ecx, [ebp - 0x18]
push ecx
push dword [ebp + 8]
mov ecx, ebx
call dword [eax + 0x44]
mov dword [ebp - 0x30], eax
jmp 0x45f0a8
push str.get_map
lea ecx, [ebp - 0x94]
call edi
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x94]
push eax
mov byte [ebp - 4], 0x45
call dword [sym.imp.ScCore.dll_public:_bool___thiscall_ScCore::XML::setName_class_ScCore::String_const__]
lea ecx, [ebp - 0x94]
jmp 0x45eacf
mov eax, ecx
sub eax, 0x2001
je 0x45ed48
dec eax
je 0x45ecb7
dec eax
je 0x45ec29
sub eax, 0x102
je 0x45ecb7
cmp byte [ebp - 0xd], 0
je 0x45f0a8
cmp dword [ebp - 0x1c], 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x24]
jne 0x45ec15
call dword [sym.imp.ExtendScript.dll_public:_static_class_ScCore::XML____cdecl_ScScript::DebugAPI::executeStaticXML_class_ScCore::XML_const___class_ScCore::Error__]
pop ecx
pop ecx
jmp 0x45ec21
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x10]
call dword [sym.imp.ExtendScript.dll_public:_class_ScCore::XML____thiscall_ScScript::DebugAPI::executeXML_class_ScCore::XML_const___class_ScCore::Error__]
mov dword [ebp - 0x48], eax
jmp 0x45f0a8
mov ecx, dword [ebx + 8]
push dword [ecx + 0x34]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x74]
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x14]
call dword [sym.imp.ScCore.dll_public:_int___thiscall_ScCore::String::decode_char_const___int__class_ScCore::Encoder_const__]
push str.Exclude
push dword [ebp + 8]
lea eax, [ebp - 0xc0]
push eax
call fcn.0045bc37
add esp, 0xc
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x20]
push eax
push str.MaxArrayElements
push dword [ebp + 8]
mov byte [ebp - 4], 0x11
call fcn.0045bca5
pop ecx
pop ecx
push eax
push dword [ebp - 0x28]
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x1c]
lea eax, [ebp - 0xb8]
push eax
call fcn.0045c2bb
add esp, 0x18
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x12
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x11
call esi
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0xe
call esi
jmp 0x45f0a8
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 8]
mov dword [ebp - 0x28], eax
call dword [sym.imp.ExtendScript.dll_public:_static_class_ScScript::Engine____cdecl_ScScript::Engine::getCurrent_void_]
cmp eax, dword [ebp - 0x28]
jne 0x45ed1a
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x21], 0
jne 0x45ed1a
push str.ENGINE_BUSY
lea ecx, [ebp - 0xc8]
call edi
push 1
push 0
push eax
push 1
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0xf
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::push_int__class_ScCore::String_const___class_ScCore::Cloneable_const___bool_]
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [ebp - 0x20]
cmp dword [eax], 0
jne 0x45ed10
xor eax, eax
jmp 0x45eb9e
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
jmp 0x45eb9e
mov eax, dword [ebx]
lea ecx, [ebp - 0x20]
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0xd0]
push dword [ebp - 0x28]
push ecx
mov ecx, ebx
call dword [eax + 0x48]
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x10
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xd0]
jmp 0x45ecfb
mov eax, dword [ebx]
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x34]
push ecx
mov ecx, ebx
call dword [eax + 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 8]
mov eax, dword [ecx]
push 0x70617273
call dword [eax + 0xb8]
mov ecx, eax
call dword [sym.imp.ExtendScript.dll_public:_class_ScCore::String_const____thiscall_ScScript::ParserAPI::getIncludePath_void_const]
push eax
lea ecx, [ebp - 0x14]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
cmp byte [ebp - 0xd], 0
je 0x45f05c
push 0x28
call dword [sym.imp.ScCore.dll_public:_static_void____cdecl_ScCore::Heap::operator_new_unsigned_int_]
pop ecx
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x24
test eax, eax
je 0x45edc7
push str.scripts
lea ecx, [ebp - 0x58]
call edi
mov ecx, dword [ebp + 8]
or dword [ebp - 0x44], 2
lea eax, [ebp - 0x58]
push eax
mov byte [ebp - 4], 0x25
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::XML::constructor_class_ScCore::String_const__]
mov eax, dword [ebp + 8]
mov dword [eax], vtable.ScCore::XML.0
mov dword [ebp - 0x1c], eax
jmp 0x45edcb
and dword [ebp - 0x1c], 0
test byte [ebp - 0x44], 2
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x48], eax
mov dword [ebp - 4], 0xe
je 0x45ede3
lea ecx, [ebp - 0x58]
call esi
push str._includepath
lea ecx, [ebp - 0x60]
call edi
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x60]
push eax
mov byte [ebp - 4], 0x27
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp - 0x60]
jmp 0x45f048
push 0xa
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::String::split_char_]
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x28
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0xe
call esi
push str.script
lea ecx, [ebp - 0x68]
call edi
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x29
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::add_class_ScCore::String_const__]
lea ecx, [ebp - 0x68]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0xe
call esi
push str._name
lea ecx, [ebp - 0x54]
call edi
push 0x2c
lea eax, [ebp - 0xe0]
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x2a
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::String::split_char_]
mov ecx, dword [ebp + 8]
push eax
lea eax, [ebp - 0x54]
push eax
mov byte [ebp - 4], 0x2b
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x2a
call esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xe
call esi
push 0x4f5560
lea ecx, [ebp - 0x78]
call edi
push 0x2c
lea eax, [ebp - 0xe8]
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x2c
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::String::split_char_]
mov ecx, dword [ebp + 8]
push eax
lea eax, [ebp - 0x78]
push eax
mov byte [ebp - 4], 0x2d
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x2c
call esi
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0xe
call esi
push 0x2c
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x40]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::String::split_char_]
mov byte [ebp - 4], 0x2e
push eax
lea ecx, [ebp - 0x14]
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [ebp - 0x14]
cmp dword [eax], 0
jne 0x45ef2d
push str.exec
lea ecx, [ebp - 0x14]
call dword [0x4efd9c]
push str._state
lea ecx, [ebp - 0x80]
call edi
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x2f
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [ebp - 0x40]
cmp dword [eax], 0
jne 0x45f007
push 0x4f5560
lea ecx, [ebp - 0x88]
call edi
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0xf8]
push eax
mov byte [ebp - 4], 0x30
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::getText_class_ScCore::String_const__]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x31
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x30
call esi
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [ebp - 0x14]
cmp dword [eax], 0
je 0x45f007
movzx eax, word [eax + 0xc]
cmp eax, 0x2f
je 0x45efc5
cmp eax, 0x7e
jne 0x45f007
push 0
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x28]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::FileSpec::constructor_class_ScCore::String_const___bool_]
push 0
push 0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x32
call dword [sym.imp.ScCore.dll_public:_short_int___thiscall_ScCore::FileSpec::getAttributes_int___int__const]
shr eax, 5
test al, 1
je 0x45effa
push str.true
lea ecx, [ebp - 0x40]
call dword [0x4efd9c]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xe
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::FileSpec::destructor_void_]
mov eax, dword [ebp - 0x40]
cmp dword [eax], 0
je 0x45f04e
push str.true
lea ecx, [ebp - 0x38]
call edi
push str._readonly
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x33
call edi
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x34
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x33
call esi
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [ebp - 0x18]
cmp dword [eax], 0
jne 0x45ee0a
jmp 0x45f0a8
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
mov ebx, dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_char_]
test eax, eax
je 0x45f07a
cmp word [ecx + eax*2 + 0xa], 0xa
je 0x45f07a
push 0xa
lea ecx, [ebp - 0x18]
call ebx
push 0xa
lea ecx, [ebp - 0x18]
call ebx
push 0xffffffffffffffff
lea edi, [ebp - 0x14]
call fcn.0045b58d
pop ecx
mov eax, edi
push eax
lea ecx, [ebp - 0x18]
call dword [0x4f0070]
push 0xa
lea ecx, [ebp - 0x18]
call ebx
mov edi, dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::String::constructor_char_const__]
mov ebx, dword [ebp - 0x28]
cmp dword [ebp - 0x24], 0
je 0x45f0b6
mov ecx, dword [ebp - 0x24]
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x48], 0
je 0x45f112
push str._engine
lea ecx, [ebp + 8]
call edi
mov edi, dword [ebp - 0x48]
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp + 8]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x47
call dword [sym.imp.ScCore.dll_public:_class_ScCore::XML____thiscall_ScCore::XML::put_class_ScCore::String_const___class_ScCore::String_const__]
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0xe
call esi
push 0xffffffffffffffff
lea eax, [ebp - 0x50]
push eax
mov ecx, edi
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String___thiscall_ScCore::XML::toXMLString_int_]
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x48
call dword [sym.imp.ScCore.dll_public:_class_ScCore::String____thiscall_ScCore::String::operator_class_ScCore::String_const__]
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0xe
call esi
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
cmp dword [ebp - 0x3c], 0x1007
je 0x45f15b
xor ecx, ecx
cmp dword [ebp - 0x30], ecx
je 0x45f13e
mov eax, dword [ebp - 0x20]
cmp dword [eax], ecx
je 0x45f130
mov eax, dword [eax]
cmp dword [eax + 0x28], ecx
jne 0x45f13e
push 0
push dword [ebp - 0x30]
lea ecx, [ebp - 0x20]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::push_int__class_ScCore::Cloneable_const__]
mov eax, dword [ebp - 0x20]
cmp dword [eax], 0
je 0x45f15b
mov eax, dword [eax]
cmp dword [eax + 0x28], 0
je 0x45f15b
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x20]
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::getFullText_class_ScCore::String__const]
cmp dword [ebp - 0x2c], 0
je 0x45f1a1
mov ecx, dword [ebp - 0x2c]
call dword [sym.imp.ExtendScript.dll_public:_class_ScCore::String_const____thiscall_ScScript::Engine::getName_void_const]
mov ecx, dword [ebx + 8]
push eax
call fcn.0045c974
mov edi, eax
test edi, edi
je 0x45f18b
mov ecx, dword [ebx + 8]
push edi
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::SimpleArray::remove_int_]
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
mov eax, dword [ebx + 8]
inc dword [eax + 0x3c]
push dword [ebp - 0x2c]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x30]
mov eax, dword [ebx + 8]
dec dword [eax + 0x3c]
mov eax, dword [ebx + 8]
push dword [eax + 0x34]
lea ecx, [ebp - 0x18]
call dword [sym.imp.ScCore.dll_public:_char_const____thiscall_ScCore::String::encode_class_ScCore::Encoder_const__const]
mov ecx, dword [ebp + 0xc]
push 0xffffffffffffffff
push eax
call fcn.0044fae3
mov eax, dword [ebp - 0x20]
xor edi, edi
cmp dword [eax], edi
je 0x45f1c9
mov eax, dword [eax]
mov edi, dword [eax + 0x28]
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0xd
call fcn.0045c832
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 8
call esi
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 2
call esi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call dword [sym.imp.ScCore.dll_public:_void___thiscall_ScCore::Error::destructor_void_]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0
call esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call esi
mov eax, edi
call fcn.004c757f
ret 8