Function at 0x556670
Capabilities:
Get common file path
Get graphical window text
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
mov eax, dword [0xe5d644]
mov dword [0x1b850f8], eax
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b85204], eax
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b85208], eax
push 0x7f86
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b8520c], eax
push 0x7f85
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b85210], eax
mov dword [ebp - 0x10], 0x31
mov dword [ebp - 0x14], 0x32
mov dword [ebp - 0x18], 0xb
mov dword [ebp - 0x1c], 0xc
push 0x7f
mov ecx, dword [0x1b850f8]
push ecx
call dword [sym.imp.USER32.dll_LoadIconA]
mov dword [0x1b85214], eax
mov edx, dword [0x1b850f8]
mov dword [0x1b85110], edx
mov eax, dword [str.Urban_Chaos_lighting_editor]
mov dword [0x1b85124], eax
mov dword [0x1b85104], 0x5557e0
mov dword [0x1b85100], 0
mov dword [0x1b850fc], 0x30
mov dword [0x1b85108], 0
mov dword [0x1b8510c], 0
mov dword [0x1b85120], 0
mov ecx, dword [0x1b85214]
mov dword [0x1b85114], ecx
mov edx, dword [0x1b85214]
mov dword [0x1b85128], edx
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b85118], eax
push 0
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [0x1b8511c], eax
push 0x1b850fc
call dword [sym.imp.USER32.dll_RegisterClassExA]
movzx eax, ax
test eax, eax
jne 0x556798
jmp 0x557200
push 0
mov ecx, dword [0x1b850f8]
push ecx
push 0
push 0
push 0x80000000
push 0x80000000
push 0x80000000
push 0x80000000
push 0x10cf0000
mov edx, dword [str.Urban_Chaos_lighting_editor]
push edx
mov eax, dword [str.Urban_Chaos_lighting_editor]
push eax
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851bc], eax
cmp dword [0x1b851bc], 0
jne 0x5567fa
mov ecx, dword [0x1b850f8]
push ecx
mov edx, dword [str.Urban_Chaos_lighting_editor]
push edx
call dword [sym.imp.USER32.dll_UnregisterClassA]
jmp 0x557200
push 0x78
mov eax, dword [0x1b850f8]
push eax
call dword [sym.imp.USER32.dll_LoadMenuA]
mov dword [0x1b851fc], eax
mov ecx, dword [0x1b851fc]
push ecx
mov edx, dword [0x1b851bc]
push edx
call dword [sym.imp.USER32.dll_SetMenu]
call fcn.00401b80
mov eax, dword [0x1b851bc]
mov dword [0xe5d454], eax
mov dword [0xe5d674], 1
mov dword [ebp - 4], 0x280
mov dword [ebp - 8], 0x1e0
push 6
push 0x20
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.00499850
add esp, 0x10
test eax, eax
je 0x556865
jmp 0x557200
push 3
mov eax, dword [0x1b851bc]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x1d
push 0x11
push 0x7c
mov ecx, 0xe5d458
call fcn.0049a9d0
mov dword [0xe5d470], 3
mov ecx, dword [0xe5d480]
push ecx
mov edx, dword [0xe5d4b8]
mov eax, dword [0xe5d4b8]
mov ecx, dword [edx]
push eax
mov edx, dword [ecx + 0x20]
call edx
push 3
push 0xe5d484
push 1
mov eax, dword [0xe5d4b8]
mov ecx, dword [0xe5d4b8]
mov edx, dword [eax]
push ecx
mov eax, dword [edx + 0x30]
call eax
mov ecx, dword [0x1b850f8]
mov dword [0x1b85140], ecx
mov edx, dword [str.Engine_view]
mov dword [0x1b85154], edx
mov dword [0x1b85134], 0x555420
mov dword [0x1b85130], 0
mov dword [0x1b8512c], 0x30
mov dword [0x1b85138], 0
mov dword [0x1b8513c], 0
mov dword [0x1b85150], 0
mov dword [0x1b85144], 0
mov dword [0x1b85158], 0
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b85148], eax
push 2
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [0x1b8514c], eax
push 0x1b8512c
call dword [sym.imp.USER32.dll_RegisterClassExA]
movzx eax, ax
test eax, eax
jne 0x556961
jmp 0x557200
mov dword [ebp - 0x2c], 0
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], 0
mov edx, dword [ebp - 8]
mov dword [ebp - 0x20], edx
push 0
push 0
push 0x50c00000
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.USER32.dll_AdjustWindowRectEx]
push 0
mov ecx, dword [0x1b850f8]
push ecx
push 0
mov edx, dword [0x1b851bc]
push edx
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x2c]
push ecx
push 0x32
push 0x15e
push 0x40c00000
push str.No_map_loaded
mov edx, dword [str.Engine_view]
push edx
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851c0], eax
mov eax, dword [0x1b850f8]
mov dword [0x1b85170], eax
mov ecx, dword [str.Light_info]
mov dword [0x1b85184], ecx
mov dword [0x1b85164], 0x555f50
mov dword [0x1b85160], 0
mov dword [0x1b8515c], 0x30
mov dword [0x1b85168], 0
mov dword [0x1b8516c], 0
mov dword [0x1b85180], 0
mov dword [0x1b85174], 0
mov dword [0x1b85188], 0
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b85178], eax
push 1
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [0x1b8517c], eax
push 0x1b8515c
call dword [sym.imp.USER32.dll_RegisterClassExA]
movzx edx, ax
test edx, edx
jne 0x556a6f
jmp 0x557200
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x24], 0x12c
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x20], 0xc8
push 0
push 0
push 0x50c00000
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.USER32.dll_AdjustWindowRectEx]
push 0
mov ecx, dword [0x1b850f8]
push ecx
push 0
mov edx, dword [0x1b851bc]
push edx
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x2c]
push ecx
push 0x16
push 0x20
push 0x40c00000
mov edx, dword [str.Light_info]
push edx
mov eax, dword [str.Light_info]
push eax
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851c4], eax
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
push 0
mov ecx, dword [0x1b850f8]
push ecx
push 3
mov edx, dword [0x1b851c4]
push edx
push 0x14
push 0xa5
push 0xa
push 0xa
push 0x50000000
push 0x71e114
push str.msctls_trackbar32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851c8], eax
push 0
mov eax, dword [0x1b850f8]
push eax
push 4
mov ecx, dword [0x1b851c4]
push ecx
push 0x14
push 0xa5
push 0x1e
push 0xa
push 0x50000000
push str.Green
push str.msctls_trackbar32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851cc], eax
push 0
mov edx, dword [0x1b850f8]
push edx
push 5
mov eax, dword [0x1b851c4]
push eax
push 0x14
push 0xa5
push 0x32
push 0xa
push 0x50000000
push str.Blue
push str.msctls_trackbar32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851d0], eax
push 0
mov ecx, dword [0x1b850f8]
push ecx
push 0xf
mov edx, dword [0x1b851c4]
push edx
push 0x14
push 0xa5
push 0x4b
push 0xa
push 0x50000000
push str.Brightness
push str.msctls_trackbar32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851e0], eax
push 0
mov eax, dword [0x1b850f8]
push eax
push 6
mov ecx, dword [0x1b851c4]
push ecx
push 0x55
push 0x14
push 0xa
push 0x10e
push 0x50000002
push str.Range
push str.msctls_trackbar32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851d4], eax
push 0
mov edx, dword [0x1b850f8]
push edx
push 8
mov eax, dword [0x1b851c4]
push eax
push 0x14
push 0x55
push 0x4b
push 0xb4
push 0x50000003
push str.Antilight
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851d8], eax
push 0
mov ecx, dword [0x1b850f8]
push ecx
push 9
mov edx, dword [0x1b851c4]
push edx
push 0x14
push 0x87
push 0x6e
push 0xa
push 0x50000000
push str.White
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851e4], eax
push 0
mov eax, dword [0x1b850f8]
push eax
push 0xa
mov ecx, dword [0x1b851c4]
push ecx
push 0x14
push 0x87
push 0x87
push 0xa
push 0x50000000
push str.Light_grey
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851e8], eax
push 0
mov edx, dword [0x1b850f8]
push edx
push 0xb
mov eax, dword [0x1b851c4]
push eax
push 0x14
push 0x87
push 0xa0
push 0xa
push 0x50000000
push str.Dark_grey
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851ec], eax
push 0
mov ecx, dword [0x1b850f8]
push ecx
push 0xc
mov edx, dword [0x1b851c4]
push edx
push 0x14
push 0x87
push 0x6e
push 0x9b
push 0x50000000
push str.Pale_yellow
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851f0], eax
push 0
mov eax, dword [0x1b850f8]
push eax
push 0xe
mov ecx, dword [0x1b851c4]
push ecx
push 0x14
push 0x87
push 0x87
push 0x9b
push 0x50000000
push str.Pale_red
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851f8], eax
push 0
mov edx, dword [0x1b850f8]
push edx
push 0xd
mov eax, dword [0x1b851c4]
push eax
push 0x14
push 0x87
push 0xa0
push 0x9b
push 0x50000000
push str.Pale_blue
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851f4], eax
push 0xff0000
push 1
push 0x406
mov ecx, dword [0x1b851c8]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0xff0000
push 1
push 0x406
mov edx, dword [0x1b851cc]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0xff0000
push 1
push 0x406
mov eax, dword [0x1b851d0]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0xdc0000
push 1
push 0x406
mov ecx, dword [0x1b851d4]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x2000000
push 1
push 0x406
mov edx, dword [0x1b851e0]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [0x1b850f8]
mov dword [0x1b851a0], eax
mov ecx, dword [str.Colour_box]
mov dword [0x1b851b4], ecx
mov dword [0x1b85194], 0x555330
mov dword [0x1b85190], 0
mov dword [0x1b8518c], 0x30
mov dword [0x1b85198], 0
mov dword [0x1b8519c], 0
mov dword [0x1b851b0], 0
mov dword [0x1b851a4], 0
mov dword [0x1b851b8], 0
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x1b851a8], eax
push 4
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [0x1b851ac], eax
push 0x1b8518c
call dword [sym.imp.USER32.dll_RegisterClassExA]
movzx edx, ax
test edx, edx
jne 0x556eb8
jmp 0x557200
push 0
mov eax, dword [0x1b850f8]
push eax
push 0
mov ecx, dword [0x1b851c4]
push ecx
push 0x3c
push 0x55
push 0xa
push 0xb4
push 0x50400000
mov edx, dword [str.Colour_box]
push edx
mov eax, dword [str.Colour_box]
push eax
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x1b851dc], eax
push 0xffffff
call fcn.00556310
add esp, 4
mov dword [0x1b85218], 0xff
mov dword [0x1b8521c], 0xff
mov dword [0x1b85220], 0xff
push 0x100
push 1
push 0x405
mov ecx, dword [0x1b851e0]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x100
push 0
push 0x404
mov edx, dword [0x1b851e0]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
call fcn.00557f30
push 0x7a
mov eax, dword [0x1b850f8]
push eax
call dword [sym.imp.USER32.dll_LoadAcceleratorsA]
mov dword [0x1b85200], eax
push str.MSWHEEL_ROLLMSG
call dword [sym.imp.USER32.dll_RegisterWindowMessageA]
mov dword [0x1b85434], eax
push 0x1b85330
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push 0x1b85330
push str._sdata
push 0x1b85520
call fcn.0041e320
add esp, 0xc
push 0x1b85330
push str._sdatalighting
push 0x1b85628
call fcn.0041e320
add esp, 0xc
mov dword [0x1b85470], 0x58
mov ecx, dword [0x1b851bc]
mov dword [0x1b85474], ecx
mov dword [0x1b85478], 0
mov dword [0x1b8547c], 0x722190
mov dword [0x1b85480], 0
mov dword [0x1b85484], 0
mov dword [0x1b85488], 0
mov dword [0x1b8548c], 0x1b85730
mov dword [0x1b85490], 0x104
mov dword [0x1b85494], 0
mov dword [0x1b85498], 0
mov dword [0x1b8549c], 0x1b85520
mov dword [0x1b854a0], 0x7221a8
mov dword [0x1b854a4], 0x1804
xor edx, edx
mov word [0x1b854a8], dx
xor eax, eax
mov word [0x1b854aa], ax
mov dword [0x1b854ac], 0x7221b8
mov dword [0x1b854b0], 0
mov dword [0x1b854b4], 0
mov dword [0x1b854b8], 0
mov dword [0x1b854c8], 0x58
mov ecx, dword [0x1b851bc]
mov dword [0x1b854cc], ecx
mov dword [0x1b854d0], 0
mov dword [0x1b854d4], 0x722840
mov dword [0x1b854d8], 0
mov dword [0x1b854dc], 0
mov dword [0x1b854e0], 0
mov dword [0x1b854e4], 0x1b85838
mov dword [0x1b854e8], 0x104
mov dword [0x1b854ec], 0
mov dword [0x1b854f0], 0
mov dword [0x1b854f4], 0x1b85628
mov dword [0x1b854f8], 0x722858
mov dword [0x1b854fc], 0x1804
xor edx, edx
mov word [0x1b85500], dx
xor eax, eax
mov word [0x1b85502], ax
mov dword [0x1b85504], 0x7222d0
mov dword [0x1b85508], 0
mov dword [0x1b8550c], 0
mov dword [0x1b85510], 0
call fcn.00554fb0
call fcn.00554410
mov ecx, 1
test ecx, ecx
je 0x5571db
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x48]
push edx
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x557186
push 0
push 0
push 0x400
mov eax, dword [0x1b851bc]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
push 0
push 0
push 0
lea ecx, [ebp - 0x48]
push ecx
call dword [sym.imp.USER32.dll_GetMessageA]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x5571a5
cmp dword [ebp - 0xc], 0xffffffff
jne 0x5571a7
jmp 0x5571db
lea edx, [ebp - 0x48]
push edx
mov eax, dword [0x1b85200]
push eax
mov ecx, dword [0x1b851bc]
push ecx
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
test eax, eax
jne 0x5571d6
lea edx, [ebp - 0x48]
push edx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x48]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
jmp 0x55714e
call fcn.00554f40
mov ecx, dword [0x1b851bc]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
mov edx, dword [0x1b850f8]
push edx
mov eax, dword [str.Urban_Chaos_lighting_editor]
push eax
call dword [sym.imp.USER32.dll_UnregisterClassA]
mov esp, ebp
pop ebp
ret