Function at 0x40bc84
Capabilities:
Create thread
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa4
mov ecx, 0x29
dec ecx
mov dword [esp + ecx*4], 0xfffa5a5a
jne 0x40bc92
push ebx
push edi
push 0xff
push 0x4b47e4
call fcn.004019f2
add esp, 8
call fcn.00403499
cmp eax, 0
je 0x40bcd2
push dword [0x4a14e8]
call fcn.00402353
add esp, 4
mov eax, 0
jmp 0x40c529
mov edi, dword [ebp + 8]
mov dword [0x4b47b8], edi
mov dword [0x4aeda8], 0x3e8
mov dword [0x4b4ae4], 0
mov dword [0x4aec74], 0
mov dword [0x4a1ca0], 0
mov dword [0x4aec30], 0
mov dword [0x4b4ae0], 0
mov dword [0x4a2490], 0
mov dword [0x4a4bf0], 0
mov dword [0x4a4bec], 0
mov dword [0x4a4c00], 0
mov dword [0x4b4adc], 0
mov dword [0x4b47c8], 0
push 0x4d1c
push 0
push 0x4af564
call sub.CRTDLL.DLL_memset
add esp, 0xc
push 0x4d1c
push 0
push 0x4a4c14
call sub.CRTDLL.DLL_memset
add esp, 0xc
push 0x4d1c
push 0
push 0x4a9934
call sub.CRTDLL.DLL_memset
add esp, 0xc
mov dword [0x4aec70], 0
mov dword [0x4ae7e4], 0
mov dword [0x4ae664], 0
mov dword [0x4a4c0c], 0
mov dword [0x4b47bc], 0
mov dword [0x4aec4c], 0
mov dword [0x4a4844], 0
mov dword [0x4a1ca8], 0
mov dword [0x4a30d0], 0
mov dword [0x4a1c88], 0xffffffff
mov dword [0x4a1c84], 0
mov word [0x4aecfc], 0
mov dword [0x4a30a4], 0
mov word [0x4aeda4], 3
mov dword [0x4bf6b0], 0
mov dword [0x4bf2a4], 0
push 0x4b47e4
push 0x4a24a4
call fcn.00491c91
add esp, 8
push str.uniTFTs.ini
push 0x4a24a4
call sub.CRTDLL.DLL_strcat
add esp, 8
push 0x4b47e4
push 0x4ae6e4
call fcn.00491c91
add esp, 8
push str.uniTFTs.chm
push 0x4ae6e4
call sub.CRTDLL.DLL_strcat
add esp, 8
push 0x4b47e4
push 0x4a4954
call fcn.00491c91
add esp, 8
push str.LCDterminal.exe
push 0x4a4954
call sub.CRTDLL.DLL_strcat
add esp, 8
push 0x5401f6
push 0x4a4954
call sub.CRTDLL.DLL_strcat
add esp, 8
push 0x540c4b
push 0x4a4954
call sub.CRTDLL.DLL_strcat
add esp, 8
push 0x118
push 0x50b8c8
call sub.KERNEL32.dll_RtlZeroMemory
call fcn.0040528c
call fcn.0047e07c
cmp eax, 0
jne 0x40befc
push 0
push 0x5404c8
push str.Graphic_Library_not_found_
push dword [0x4aec44]
call sub.USER32.DLL_MessageBoxA
mov eax, 0xffffffff
jmp 0x40c529
push 0x7f00
push 0
call sub.USER32.DLL_LoadCursorA
mov dword [0x4b4294], eax
push str.HANDCURSOR
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4a2488], eax
push str.HANDPOINTCURSOR
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4ae66c], eax
push str.HANDPOINT2
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4aed90], eax
push str.MOVECURSOR
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4ae654], eax
push str.ANCHORCURSOR
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4a4b58], eax
push str.UNAVAILABLE
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4a4bf8], eax
push str.WHEELCURSOR
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4b4ad0], eax
push str.SIZE_0_GRAD
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4aed94], eax
push str.SIZE_45_GRAD
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4aed98], eax
push str.SIZE_90_GRAD
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4aed9c], eax
push str.SIZE_135_GRAD
push dword [ebp + 8]
call sub.USER32.DLL_LoadCursorA
mov dword [0x4aeda0], eax
mov edi, dword [0x4b4294]
mov dword [0x4aec2c], edi
call fcn.004886a6
call sub.COMCTL32.DLL_InitCommonControls
push str.Riched20.dll
call sub.KERNEL32.dll_LoadLibraryA
mov dword [0x4b48e4], eax
push 0x3b6
push dword [ebp + 8]
call sub.USER32.DLL_LoadAcceleratorsA
mov dword [ebp - 0x20], eax
movzx edi, word [0x4bf2a8]
push edi
movzx edi, word [0x4bf298]
push edi
push str.EA_uniTFTs_simulator
call fcn.0040b79e
add esp, 0xc
push dword [0x4aec44]
call sub.USER32.DLL_GetDC
mov dword [0x543574], eax
call fcn.0040b3ce
push 0x1388
push dword [ebp + 8]
call sub.USER32.DLL_LoadMenuA
mov dword [0x4b52c8], eax
push dword [0x4aec44]
call fcn.0040b73d
add esp, 4
push 0x5408c4
push 0
call fcn.0040b51c
add esp, 8
push 0x5408c4
push 1
call fcn.0040b51c
add esp, 8
push 0x5408c4
push 2
call fcn.0040b51c
add esp, 8
push 0x4b4284
push 0x4ae684
mov edi, dword [0x4aec64]
sub edi, 1
shl edi, 7
lea edi, [edi + 0x4b42b4]
push edi
call fcn.0047ee80
add esp, 0xc
mov dword [0x4aec6c], eax
push 0
call fcn.0040b8c1
add esp, 4
push 3
push dword [0x4a4b60]
push dword [0x4a30f4]
call fcn.0047828a
add esp, 0xc
cmp eax, 0
jne 0x40c0e1
mov eax, 0xffffffff
jmp 0x40c529
push 1
push dword [0x4aec44]
call sub.USER32.DLL_ShowWindow
cmp dword [0x4a25a8], 0
je 0x40c10e
push 3
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push dword [0x4aec44]
call sub.USER32.DLL_SetWindowPos
push 1
push dword [0x4aec44]
call sub.SHELL32.DLL_DragAcceptFiles
call sub.winmm.dll_timeGetTime
mov edi, eax
mov ecx, 0xa
xor edx, edx
div ecx
mov dword [ebp - 0xa4], eax
mov edi, dword [ebp - 0xa4]
mov dword [0x4a2e8c], edi
mov dword [0x4ae7ec], edi
mov dword [0x4a30f8], 0
push 0
push 0xa
push 1
push dword [0x4aec44]
call sub.USER32.DLL_SetTimer
call sub.KERNEL32.dll_GetTickCount
mov dword [0x4a2484], eax
mov dword [0x4aec68], 0
mov dword [0x4ae674], 0
mov dword [0x4a247c], 0
mov dword [0x4a2498], 0xffffffff
mov word [0x4bf280], 0
mov dword [0x4a2494], 0
cmp dword [0x4a1c98], 0
je 0x40c1cf
push 0
call fcn.00484d8b
add esp, 4
push 0
call fcn.00485259
add esp, 4
cmp eax, 0
jne 0x40c1cf
mov dword [0x4a1c98], 0
cmp dword [0x4b47c0], 0
je 0x40c1fb
push 0
call fcn.00484e4b
add esp, 4
push 0
call fcn.004852dd
add esp, 4
cmp eax, 0
jne 0x40c1fb
mov dword [0x4b47c0], 0
push 0x180000
push 0x40
call sub.KERNEL32.dll_GlobalAlloc
mov dword [0x4ae650], eax
cmp eax, 0
jne 0x40c23e
push str.not_enough_System_RAM_for_Objects__r_n
lea edi, [ebp - 0xa0]
push edi
call fcn.00491c0d
add esp, 8
push 0
push 0x5404c8
lea edi, [ebp - 0xa0]
push edi
push dword [0x4aec44]
call sub.USER32.DLL_MessageBoxA
movzx edi, word [0x4a14d8]
push edi
push str.uniTFTs.efl
call fcn.0047f24e
add esp, 8
mov ebx, eax
cmp bl, 0
jne 0x40c28c
push str.uniTFTs.efl
push str.cannot_open_create_InternFlash_file__r_n_s
lea edi, [ebp - 0xa0]
push edi
call fcn.00491c0d
add esp, 0xc
push 0
push 0x5404c8
lea edi, [ebp - 0xa0]
push edi
push dword [0x4aec44]
call sub.USER32.DLL_MessageBoxA
call fcn.00403566
push 0x4aecd8
push 0x4a25b4
push 0x4ae7f4
call fcn.0047f9d3
add esp, 0xc
mov dword [0x4aecf4], eax
push 0x4ae65c
push 0x4b4af4
push 0x4aeb24
call fcn.0047f9d3
add esp, 0xc
mov dword [0x4a30c8], eax
push 0x4aecf8
push 0
push 0
push 0x40c78f
push 0
push 0
call sub.KERNEL32.dll_CreateThread
mov dword [0x4aecf0], eax
push 0x4aec50
push 0
push 0
push 0x4711a0
push 0
push 0
call sub.KERNEL32.dll_CreateThread
mov dword [0x4af544], eax
push 0x32
call sub.KERNEL32.dll_Sleep
cmp dword [0x4a4b54], 0
je 0x40c316
call fcn.0047e3ed
cmp dword [0x4b47d4], 0
je 0x40c324
call fcn.00487f64
cmp dword [0x4aecdc], 0
je 0x40c332
call fcn.00476ba6
test dword [0x4af580], 1
je 0x40c34b
push 0x4af564
call fcn.0047d029
add esp, 4
test dword [0x4a4c30], 1
je 0x40c364
push 0x4a4c14
call fcn.0047d029
add esp, 4
test dword [0x4a9950], 1
je 0x40c37d
push 0x4a9934
call fcn.0047d029
add esp, 4
cmp dword [0x4b4910], 0
je 0x40c38b
call fcn.00474d2d
cmp dword [0x4aec34], 0
je 0x40c399
call fcn.0048672d
cmp dword [0x4b52e4], 0
je 0x40c3a7
call fcn.00484a4d
call fcn.0047f77c
call fcn.00407c58
call fcn.00402e4c
call fcn.00402f89
push 0
push 0x4a4be4
push 1
push 1
call sub.USER32.DLL_SystemParametersInfoA
push 0
push 0
push 0
push 2
call sub.USER32.DLL_SystemParametersInfoA
jmp 0x40c403
lea edi, [ebp - 0x1c]
push edi
push dword [ebp - 0x20]
push dword [0x4aec44]
call sub.USER32.DLL_TranslateAcceleratorA
cmp eax, 0
jne 0x40c403
lea edi, [ebp - 0x1c]
push edi
call sub.USER32.DLL_TranslateMessage
lea edi, [ebp - 0x1c]
push edi
call sub.USER32.DLL_DispatchMessageA
push 0
push 0
push 0
lea edi, [ebp - 0x1c]
push edi
call sub.USER32.DLL_GetMessageA
cmp eax, 0
jne 0x40c3da
push 0
push 0
push dword [0x4a4be4]
push 2
call sub.USER32.DLL_SystemParametersInfoA
call fcn.00403cac
call fcn.00478442
call fcn.0040b890
push 0x4ae7e4
call fcn.00473643
add esp, 4
push 0x4aec70
call fcn.00473643
add esp, 4
cmp dword [0x50be24], 0xffffffff
je 0x40c465
push dword [0x50be24]
call sub.KERNEL32.dll_CloseHandle
push dword [0x4ae650]
call sub.KERNEL32.dll_GlobalFree
push dword [0x50be20]
call sub.KERNEL32.dll_GlobalFree
push dword [0x4aec6c]
call sub.KERNEL32.dll_GlobalFree
push dword [0x4aecf4]
call sub.KERNEL32.dll_GlobalFree
push dword [0x4a30c8]
call sub.KERNEL32.dll_GlobalFree
push dword [0x4b2ae4]
call sub.KERNEL32.dll_GlobalFree
push dword [0x4a8194]
call sub.KERNEL32.dll_GlobalFree
push dword [0x4aceb4]
call sub.KERNEL32.dll_GlobalFree
call fcn.004035dd
sub dword [0x4aeda8], 0x3e8
jmp 0x40c4e9
mov edi, dword [0x4aeda8]
sub edi, 1
mov dword [0x4aeda8], edi
push dword [edi*4 + 0x4a3104]
call sub.KERNEL32.dll_GlobalFree
cmp dword [0x4aeda8], 0
jg 0x40c4ce
cmp dword [0x4ae664], 0
je 0x40c511
push 0
push 0
push 0
call sub.winmm.dll_PlaySoundA
push dword [0x4ae664]
call sub.KERNEL32.dll_GlobalFree
call fcn.0047f7ec
call fcn.0047e0d3
push dword [0x4b48e4]
call sub.KERNEL32.dll_FreeLibrary
mov eax, dword [ebp - 0x14]
pop edi
pop ebx
leave
ret 0x10