Function at 0x58afe0
Capabilities:
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc90
mov eax, dword [0x70a0c4]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
call fcn.004ad960
mov ecx, eax
call fcn.00587c70
call fcn.0058dd60
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x224]
call fcn.00447470
lea ecx, [ebp - 0x224]
call fcn.0044e170
movzx ecx, al
test ecx, ecx
jne 0x58b17b
push 0x699aa0
call fcn.004ad960
add eax, 0x94
push eax
lea edx, [ebp - 0x314]
push edx
call fcn.00442cb0
add esp, 8
push eax
push 0x699aa8
lea eax, [ebp - 0x32c]
push eax
call fcn.004607a0
add esp, 0xc
push eax
lea ecx, [ebp - 0x254]
push ecx
call fcn.00444aa0
add esp, 0xc
lea ecx, [ebp - 0x32c]
call fcn.0043cfa0
lea ecx, [ebp - 0x314]
call fcn.0043cfa0
push 0x699aac
lea ecx, [ebp - 0x26c]
call fcn.00447470
push 0
lea edx, [ebp - 0x254]
push edx
lea ecx, [ebp - 0x224]
call fcn.0044e680
mov dword [ebp - 0xc40], eax
cmp dword [ebp - 0xc40], 0
jne 0x58b0f2
mov eax, dword [0x67ee7c]
push eax
lea ecx, [ebp - 0x254]
call fcn.0044ed70
push eax
lea ecx, [ebp - 0x2fc]
push ecx
lea ecx, [ebp - 0x224]
call fcn.004506d0
push eax
lea ecx, [ebp - 0x224]
call fcn.004481c0
lea ecx, [ebp - 0x2fc]
call fcn.0043cfa0
mov edx, dword [0x67ee7c]
push edx
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x224]
call fcn.0059b560
mov dword [ebp - 0xbfc], eax
lea ecx, [ebp - 0x224]
call fcn.0044ed70
mov esi, eax
lea ecx, [ebp - 0x26c]
call fcn.0044ed70
sub esi, eax
cmp dword [ebp - 0xbfc], esi
jne 0x58b165
mov ecx, dword [ebp - 0xbfc]
push ecx
push 0
lea edx, [ebp - 0x2e4]
push edx
lea ecx, [ebp - 0x224]
call fcn.004506d0
push eax
lea ecx, [ebp - 0x224]
call fcn.004481c0
lea ecx, [ebp - 0x2e4]
call fcn.0043cfa0
lea ecx, [ebp - 0x26c]
call fcn.0043cfa0
lea ecx, [ebp - 0x254]
call fcn.0043cfa0
call dword [0x71563c]
movzx eax, al
test eax, eax
je 0x58b1ad
call dword [0x715644]
cmp eax, 1
jg 0x58b1ad
push 0x699ab4
push 1
push 0xf5
push 0x699ad4
call dword [0x71564c]
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xc68], esp
lea edx, [ebp - 0x224]
push edx
call fcn.004472f0
call fcn.0058cf50
add esp, 0x18
test eax, eax
jne 0x58b227
call dword [0x71563c]
movzx eax, al
test eax, eax
je 0x58b202
call dword [0x715644]
cmp eax, 1
jg 0x58b202
push 0x699ae8
push 1
push 0xf8
push 0x699afc
call dword [0x71564c]
add esp, 0x10
call fcn.0058d0e0
mov dword [ebp - 0xc60], 0
lea ecx, [ebp - 0x224]
call fcn.0043cfa0
mov eax, dword [ebp - 0xc60]
jmp 0x58c061
push 0
call dword [sym.imp.ole32.dll_OleInitialize]
mov dword [ebp - 0xc6c], eax
xor ecx, ecx
mov word [ebp - 0x20c], cx
push 0x206
push 0
lea edx, [ebp - 0x20a]
push edx
call fcn.005e0c30
add esp, 0xc
push 0x104
lea eax, [ebp - 0x20c]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x58b2c9
call dword [sym.imp.ole32.dll_OleUninitialize]
call fcn.0058d0e0
call dword [0x71563c]
movzx ecx, al
test ecx, ecx
je 0x58b2a9
call dword [0x715644]
cmp eax, 3
jg 0x58b2a9
push 0x699b10
push 3
push 0x106
push 0x699b24
call dword [0x71564c]
add esp, 0x10
mov dword [ebp - 0xc5c], 0
lea ecx, [ebp - 0x224]
call fcn.0043cfa0
mov eax, dword [ebp - 0xc5c]
jmp 0x58c061
lea edx, [ebp - 0x20c]
push edx
lea ecx, [ebp - 0x2cc]
call fcn.00447470
push eax
mov ecx, 0x71566c
call fcn.004481c0
lea ecx, [ebp - 0x2cc]
call fcn.0043cfa0
push 0x5c
lea eax, [ebp - 0x20c]
push eax
call fcn.0059b5c0
add esp, 8
mov dword [ebp - 0xc58], eax
push 0x699b38
mov ecx, dword [ebp - 0xc58]
add ecx, 2
push ecx
call fcn.00616761
add esp, 8
lea edx, [ebp - 0x20c]
push edx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xc70], esp
lea eax, [ebp - 0x20c]
push eax
call fcn.00447470
call fcn.0058d110
add esp, 0x18
call dword [0x71563c]
movzx ecx, al
test ecx, ecx
je 0x58b37d
call dword [0x715644]
cmp eax, 1
jg 0x58b37d
push 0x699b3c
push 1
push 0x113
push 0x699b4c
call dword [0x71564c]
add esp, 0x10
call fcn.0058d5c0
movzx edx, al
test edx, edx
jne 0x58b3fa
call dword [sym.imp.ole32.dll_OleUninitialize]
call fcn.0058d0e0
call dword [0x71563c]
movzx eax, al
test eax, eax
je 0x58b3c6
call dword [0x715644]
cmp eax, 3
jg 0x58b3c6
push 0x699b60
push 3
push 0x11b
push 0x699b74
call dword [0x71564c]
add esp, 0x10
push 0x10
push 0x699b88
push 0x699b90
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov dword [ebp - 0xc54], 0
lea ecx, [ebp - 0x224]
call fcn.0043cfa0
mov eax, dword [ebp - 0xc54]
jmp 0x58c061
call dword [0x71563c]
movzx ecx, al
test ecx, ecx
je 0x58b42c
call dword [0x715644]
cmp eax, 1
jg 0x58b42c
push 0x699bb8
push 1
push 0x11f
push 0x699bd8
call dword [0x71564c]
add esp, 0x10
lea ecx, [ebp - 0x23c]
call fcn.004474e0
lea edx, [ebp - 0x23c]
push edx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xc74], esp
lea eax, [ebp - 0x224]
push eax
call fcn.004472f0
call fcn.0058e570
add esp, 0x1c
movzx ecx, al
test ecx, ecx
jne 0x58b4cc
call dword [sym.imp.ole32.dll_OleUninitialize]
call fcn.0058d0e0
call dword [0x71563c]
movzx edx, al
test edx, edx
je 0x58b4a1
call dword [0x715644]
cmp eax, 1
jg 0x58b4a1
push 0x699bec
push 1
push 0x128
push 0x699c0c
call dword [0x71564c]
add esp, 0x10
mov dword [ebp - 0xc50], 0
lea ecx, [ebp - 0x23c]
call fcn.0043cfa0
lea ecx, [ebp - 0x224]
call fcn.0043cfa0
mov eax, dword [ebp - 0xc50]
jmp 0x58c061
call dword [0x71563c]
movzx eax, al
test eax, eax
je 0x58b4fe
call dword [0x715644]
cmp eax, 1
jg 0x58b4fe
push 0x699c20
push 1
push 0x12b
push 0x699c40
call dword [0x71564c]
add esp, 0x10
push 2
push 2
lea ecx, [ebp - 0x794]
call fcn.00441400
call dword [0x71563c]
movzx ecx, al
test ecx, ecx
je 0x58b53f
call dword [0x715644]
cmp eax, 1
jg 0x58b53f
push 0x699c54
push 1
push 0x12f
push 0x699c6c
call dword [0x71564c]
add esp, 0x10
call fcn.0046a540
mov ecx, eax
call fcn.0046a5e0
call fcn.0058d980
movzx edx, al
test edx, edx
jne 0x58b664
push 0x699c80
lea ecx, [ebp - 0x410]
call fcn.00405040
push 0x699c8c
lea ecx, [ebp - 0x3f8]
call fcn.00405040
push str.miss_dll
lea ecx, [ebp - 0x3e0]
call fcn.00405040
lea eax, [ebp - 0x3c8]
push eax
lea ecx, [ebp - 0x410]
push ecx
lea ecx, [ebp - 0xc80]
call fcn.00502300
mov edx, dword [eax + 4]
push edx
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x518]
call fcn.00591540
mov ecx, eax
call fcn.004415e0
lea ecx, [ebp - 0x518]
call fcn.00591f40
push fcn.00405300
push 3
push 0x18
lea ecx, [ebp - 0x410]
push ecx
call fcn.005c7926
call dword [sym.imp.ole32.dll_OleUninitialize]
call fcn.0058d0e0
call dword [0x71563c]
movzx edx, al
test edx, edx
je 0x58b61a
call dword [0x715644]
cmp eax, 3
jg 0x58b61a
push 0x699ca0
push 3
push 0x13e
push 0x699cb0
call dword [0x71564c]
add esp, 0x10
push 0x10
push 0x699cc4
push str._N1Y
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov dword [ebp - 0xc4c], 0
lea ecx, [ebp - 0x794]
call fcn.00441440
lea ecx, [ebp - 0x23c]
call fcn.0043cfa0
lea ecx, [ebp - 0x224]
call fcn.0043cfa0
mov eax, dword [ebp - 0xc4c]
jmp 0x58c061
call dword [0x71563c]
movzx eax, al
test eax, eax
je 0x58b696
call dword [0x715644]
cmp eax, 1
jg 0x58b696
push 0x699d1c
push 1
push 0x142
push 0x699d30
call dword [0x71564c]
add esp, 0x10
push 0xec
push 0
lea ecx, [ebp - 0x604]
push ecx
call fcn.005e0c30
add esp, 0xc
mov dword [ebp - 0x528], 0x1343b7f
lea edx, [ebp - 0x604]
push edx
call fcn.0059b370
add esp, 4
movzx eax, al
test eax, eax
jne 0x58b7d9
push str.init_fail
lea ecx, [ebp - 0x378]
call fcn.00405040
push str.fail
lea ecx, [ebp - 0x360]
call fcn.00405040
push str.load_failed
lea ecx, [ebp - 0x348]
call fcn.00405040
lea ecx, [ebp - 0x330]
push ecx
lea edx, [ebp - 0x378]
push edx
lea ecx, [ebp - 0xc88]
call fcn.00502300
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0x4c0]
call fcn.00591540
mov ecx, eax
call fcn.004415e0
lea ecx, [ebp - 0x4c0]
call fcn.00591f40
push fcn.00405300
push 3
push 0x18
lea eax, [ebp - 0x378]
push eax
call fcn.005c7926
call dword [sym.imp.ole32.dll_OleUninitialize]
call fcn.0058d0e0
call dword [0x71563c]
movzx ecx, al
test ecx, ecx
je 0x58b78f
call dword [0x715644]
cmp eax, 1
jg 0x58b78f
push 0x699d64
push 1
push 0x14f
push 0x699d7c
call dword [0x71564c]
add esp, 0x10
push 0x10
push 0x699d90
push 0x699d98
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov dword [ebp - 0xc48], 0
lea ecx, [ebp - 0x794]
call fcn.00441440
lea ecx, [ebp - 0x23c]
call fcn.0043cfa0
lea ecx, [ebp - 0x224]
call fcn.0043cfa0
mov eax, dword [ebp - 0xc48]
jmp 0x58c061
call dword [0x71563c]
movzx edx, al
test edx, edx
je 0x58b80b
call dword [0x715644]
cmp eax, 1
jg 0x58b80b
push 0x699df0
push 1
push 0x153
push 0x699e08
call dword [0x71564c]
add esp, 0x10
push str.init_finish
lea ecx, [ebp - 0x3c4]
call fcn.00405040
push str.success
lea ecx, [ebp - 0x3ac]
call fcn.00405040
push 0x699492
lea ecx, [ebp - 0x394]
call fcn.00405040
lea eax, [ebp - 0x37c]
push eax
lea ecx, [ebp - 0x3c4]
push ecx
lea ecx, [ebp - 0xc90]
call fcn.00502300
mov edx, dword [eax + 4]
push edx
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x468]
call fcn.00591540
mov ecx, eax
call fcn.004415e0
lea ecx, [ebp - 0x468]
call fcn.00591f40
push fcn.00405300
push 3
push 0x18
lea ecx, [ebp - 0x3c4]
push ecx
call fcn.005c7926
call dword [0x71563c]
movzx edx, al
test edx, edx
je 0x58b8bf
call dword [0x715644]
cmp eax, 1
jg 0x58b8bf
push 0x699e30
push 1
push 0x157
push 0x699ed8
call dword [0x71564c]
add esp, 0x10
mov dword [ebp - 0xc24], 0
push 0x1088
call fcn.005c787b
add esp, 4
mov dword [ebp - 0xc00], eax
cmp dword [ebp - 0xc00], 0
je 0x58b8fa
push 0
mov ecx, dword [ebp - 0xc00]
call fcn.005911d0
mov dword [ebp - 0xc04], eax
jmp 0x58b904
mov dword [ebp - 0xc04], 0
mov eax, dword [ebp - 0xc04]
mov dword [ebp - 0xc64], eax
mov ecx, dword [ebp - 0xc64]
mov dword [ebp - 0xbec], ecx
lea edx, [ebp - 0x20c]
push edx
lea ecx, [ebp - 0x284]
call fcn.00447470
lea eax, [ebp - 0x284]
push eax
lea ecx, [ebp - 0x2b4]
push ecx
call fcn.0058eb10
add esp, 8
mov ecx, eax
call fcn.0043dc00
push eax
lea ecx, [ebp - 0xc20]
call dword [sym.imp.utilities.dll_public:_void___thiscall_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits_::constructor_wchar_t_const__]
lea edx, [ebp - 0xc20]
push edx
mov ecx, dword [ebp - 0xbec]
call fcn.00598ad0
lea ecx, [ebp - 0xc20]
call dword [sym.imp.utilities.dll_public:_void___thiscall_SOUI::TStringT_wchar_t__struct_SOUI::wchar_traits_::destructor_void_]
lea ecx, [ebp - 0x2b4]
call fcn.0043cfa0
lea ecx, [ebp - 0x284]
call fcn.0043cfa0
push 0x80
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetPriorityClass]
call fcn.0058dc70
call fcn.005304b0
call dword [0x71563c]
movzx eax, al
test eax, eax
je 0x58b9da
call dword [0x715644]
cmp eax, 1
jg 0x58b9da
push 0x699eec
push 1
push 0x167
push 0x699f00
call dword [0x71564c]
add esp, 0x10
lea ecx, [ebp - 0xc0c]
call fcn.00441450
lea ecx, [ebp - 0xc0c]
call fcn.00441490
call dword [0x71563c]
movzx ecx, al
test ecx, ecx
je 0x58ba22
call dword [0x715644]
cmp eax, 1
jg 0x58ba22
push 0x699f14
push 1
push 0x16c
push 0x699f24
call dword [0x71564c]
add esp, 0x10
push 0
call fcn.0054e180
add esp, 4
test eax, eax
je 0x58ba4f
call fcn.0046a540
mov ecx, eax
call fcn.0046b080
movzx edx, al
test edx, edx
je 0x58ba4f
mov dword [ebp - 0xc1c], 1
jmp 0x58ba59
mov dword [ebp - 0xc1c], 0
mov al, byte [ebp - 0xc1c]
mov byte [0x715650], al
movzx ecx, byte [0x715650]
test ecx, ecx
jne 0x58ba94
call fcn.0054dfa0
test eax, eax
je 0x58ba81
mov byte [ebp - 0xbd9], 1
jmp 0x58ba88
mov byte [ebp - 0xbd9], 0
mov dl, byte [ebp - 0xbd9]
mov byte [0x715651], dl
mov dword [ebp - 0xbf0], 0
lea ecx, [ebp - 0xbf8]
call fcn.00590920
lea ecx, [ebp - 0xbe8]
call fcn.00590940
lea ecx, [ebp - 0xbe8]
call fcn.00592050
push eax
mov ecx, dword [ebp - 0xbec]
call fcn.005947d0
mov dword [ebp - 0xbf0], eax
lea ecx, [ebp - 0xbf8]
call fcn.00592040
push eax
mov ecx, dword [ebp - 0xbec]
call fcn.00594680
mov dword [ebp - 0xbf0], eax
lea ecx, [ebp - 0xbe8]
call fcn.00592020
mov dword [ebp - 0xc18], eax
lea ecx, [ebp - 0xbf8]
call fcn.00591ff0
push eax
mov eax, dword [ebp - 0xc18]
mov edx, dword [eax]
mov ecx, dword [ebp - 0xc18]
mov eax, dword [edx + 0x10]
call eax
push 0xe8
call fcn.005c787b
add esp, 4
mov dword [ebp - 0xbe0], eax
cmp dword [ebp - 0xbe0], 0
je 0x58bb99
xor ecx, ecx
mov dword [ebp - 0xc3c], ecx
push 0
lea ecx, [ebp - 0xc3c]
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SObjectDefaultRegister::constructor_void_]
push eax
push str.SOUIHOST
mov edx, dword [ebp + 8]
push edx
lea ecx, [ebp - 0xbe8]
call fcn.00592000
push eax
mov ecx, dword [ebp - 0xbe0]
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SApplication::constructor_struct_SOUI::IRenderFactory___struct_HINSTANCE_____wchar_t_const___struct_SOUI::ISystemObjectRegister_const___int_]
mov eax, dword [ebp - 0xbe0]
mov dword [eax], vtable.SOUI::SApplication.0
mov ecx, dword [ebp - 0xbe0]
mov dword [ecx + 4], vtable.SOUI::SApplication.1.0
mov edx, dword [ebp - 0xbe0]
mov dword [ebp - 0xc14], edx
jmp 0x58bba3
mov dword [ebp - 0xc14], 0
mov eax, dword [ebp - 0xc14]
mov dword [ebp - 0xc38], eax
mov ecx, dword [ebp - 0xc38]
mov dword [ebp - 0xbd8], ecx
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ed90
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ed60
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f300
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ef70
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f3c0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f390
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f090
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f360
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f060
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f180
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f270
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ee20
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f0f0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058efd0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f3f0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f000
mov ecx, dword [ebp - 0xbd8]
call fcn.0058efa0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ef10
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ee50
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f150
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f0c0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058eee0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f330
mov ecx, dword [ebp - 0xbd8]
call fcn.0058eeb0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058edf0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ef40
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f1b0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058ee80
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f450
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f480
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f4b0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f2a0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f210
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f240
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f1e0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f120
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f030
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f2d0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f420
mov ecx, dword [ebp - 0xbd8]
call fcn.0058edc0
mov ecx, dword [ebp - 0xbd8]
call fcn.0058f2a0
lea ecx, [ebp - 0xbe4]
call fcn.00590960
lea ecx, [ebp - 0xbe4]
call fcn.00592060
push eax
push 0
call dword [sym.imp.soui.dll_int___cdecl_SOUI::CreateResProvider_enum_SOUI::BUILTIN_RESTYPE__struct_IObjRef___]
add esp, 8
lea ecx, [ebp - 0xbe4]
call fcn.00592030
mov dword [ebp - 0xc10], eax
push 0
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0xc10]
mov edx, dword [eax]
mov ecx, dword [ebp - 0xc10]
mov eax, dword [edx + 0xc]
call eax
mov dword [ebp - 0xbf0], eax
push str.uidef:xml_init
lea ecx, [ebp - 0xbe4]
call fcn.00592010
push eax
mov ecx, dword [ebp - 0xbd8]
add ecx, 0x10
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SResProviderMgr::AddResProvider_struct_SOUI::IResProvider___wchar_t_const__]
lea ecx, [ebp - 0xbe4]
call fcn.005917d0
call fcn.0058eb40
movzx ecx, al
test ecx, ecx
je 0x58bf76
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xc78], esp
lea edx, [ebp - 0x23c]
push edx
call fcn.004472f0
lea ecx, [ebp - 0xbd4]
call fcn.00552720
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
lea ecx, [ebp - 0xbd4]
call dword [sym.imp.soui.dll_public:_struct_HWND______thiscall_SOUI::SHostWnd::Create_struct_HWND_____int__int__int__int_]
push 0
push 0
push 0x110
lea ecx, [ebp - 0x998]
call dword [sym.imp.soui.dll_public:_long_int___thiscall_SOUI::CSimpleWnd::SendMessageW_unsigned_int__unsigned_int__long_int_]
mov eax, dword [ebp - 0x98c]
push eax
call dword [sym.imp.soui.dll_public:_static_class_SOUI::SApplication____cdecl_SOUI::SSingleton_class_SOUI::SApplication_::getSingleton_void_]
mov ecx, eax
call dword [sym.imp.soui.dll_public:_void___thiscall_SOUI::SApplication::SetMainWnd_struct_HWND____]
mov ecx, dword [ebp - 0x98c]
push ecx
lea ecx, [ebp - 0x998]
call dword [sym.imp.soui.dll_public:_int___thiscall_SOUI::CSimpleWnd::CenterWindow_struct_HWND____]
push 1
lea ecx, [ebp - 0x998]
call dword [sym.imp.soui.dll_public:_int___thiscall_SOUI::CSimpleWnd::ShowWindow_int_]
lea ecx, [ebp - 0xbd4]
call fcn.00552a80
mov edx, dword [ebp - 0x98c]
push edx
call fcn.0045c960
add esp, 4
mov eax, dword [ebp - 0x98c]
push eax
call fcn.004ad960
add eax, 0xc4
push eax
lea ecx, [ebp - 0x29c]
push ecx
call fcn.00442cb0
add esp, 8
mov ecx, eax
call fcn.0043dc00
push eax
mov edx, dword [ebp - 0x98c]
push edx
call dword [sym.imp.USER32.dll_SetPropW]
lea ecx, [ebp - 0x29c]
call fcn.0043cfa0
call dword [0x71563c]
movzx eax, al
test eax, eax
je 0x58bf20
call dword [0x715644]
cmp eax, 1
jg 0x58bf20
push str.eQ_N
push 1
push 0x1c9
push 0x69a00c
call dword [0x71564c]
add esp, 0x10
mov ecx, dword [ebp - 0x98c]
push ecx
mov ecx, dword [ebp - 0xbd8]
call dword [sym.imp.soui.dll_public:_int___thiscall_SOUI::SApplication::Run_struct_HWND____]
mov dword [ebp - 0xc24], eax
call dword [0x71563c]
movzx edx, al
test edx, edx
je 0x58bf6b
call dword [0x715644]
cmp eax, 1
jg 0x58bf6b
push 0x69a020
push 1
push 0x1cb
push str.TenYouPlatform.cpp
call dword [0x71564c]
add esp, 0x10
lea ecx, [ebp - 0xbd4]
call fcn.005529c0
mov eax, dword [ebp - 0xbd8]
mov dword [ebp - 0xc34], eax
mov ecx, dword [ebp - 0xc34]
mov dword [ebp - 0xbf4], ecx
cmp dword [ebp - 0xbf4], 0
je 0x58bfb3
push 1
mov edx, dword [ebp - 0xbf4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xbf4]
mov edx, dword [eax]
call edx
mov dword [ebp - 0xc30], eax
jmp 0x58bfbd
mov dword [ebp - 0xc30], 0
call fcn.0058dd50
lea ecx, [ebp - 0xbe8]
call fcn.005917a0
lea ecx, [ebp - 0xbf8]
call fcn.00591770
lea ecx, [ebp - 0xc0c]
call fcn.00441470
mov eax, dword [ebp - 0xbec]
mov dword [ebp - 0xc44], eax
mov ecx, dword [ebp - 0xc44]
mov dword [ebp - 0xc08], ecx
cmp dword [ebp - 0xc08], 0
je 0x58c019
push 1
mov ecx, dword [ebp - 0xc08]
call fcn.00592b30
mov dword [ebp - 0xc28], eax
jmp 0x58c023
mov dword [ebp - 0xc28], 0
call dword [sym.imp.ole32.dll_OleUninitialize]
call fcn.0058d0e0
mov edx, dword [ebp - 0xc24]
mov dword [ebp - 0xc2c], edx
lea ecx, [ebp - 0x794]
call fcn.00441440
lea ecx, [ebp - 0x23c]
call fcn.0043cfa0
lea ecx, [ebp - 0x224]
call fcn.0043cfa0
mov eax, dword [ebp - 0xc2c]
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005c7840
mov esp, ebp
pop ebp
ret 0x10