Function at 0x41d900
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4276f3
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x5d8
mov eax, dword [0x435080]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
push str.MindfieldMasterGatewayLogfile.txt
call fcn.00419350
add esp, 4
lea ecx, [ebp - 0x74]
call fcn.00406070
mov dword [ebp - 4], 0
push str.MindfieldMasterGateway___Rev
lea ecx, [ebp - 0x74]
call fcn.0040c870
mov eax, dword [str.5139]
push eax
lea ecx, [ebp - 0x74]
call fcn.0040c870
push str._Date
lea ecx, [ebp - 0x74]
call fcn.0040c870
mov ecx, dword [str.2024_03_12_21:51:24]
push ecx
lea ecx, [ebp - 0x74]
call fcn.0040c870
mov edx, dword [str.5139]
push edx
mov ecx, 0x438518
call fcn.00406380
mov eax, dword [str.2024_03_12_21:51:24]
push eax
mov ecx, 0x438530
call fcn.00406380
lea ecx, [ebp - 0x74]
call fcn.00404660
push eax
push 0x42c81c
lea ecx, [ebp - 0x124]
push ecx
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x2a4], eax
mov edx, dword [ebp - 0x2a4]
mov dword [ebp - 0x274], edx
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x274]
call fcn.00404660
push eax
call fcn.004194a0
add esp, 4
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x124]
call fcn.00406240
mov byte [ebp - 0x1f0], 2
mov byte [ebp - 0x1ef], 0
mov byte [ebp - 0x1ee], 4
lea eax, [ebp - 0x1fc]
push eax
call sub.SDL2.dll_SDL_GetVersion
add esp, 4
movzx ecx, byte [ebp - 0x1ee]
push ecx
movzx edx, byte [ebp - 0x1ef]
push edx
movzx eax, byte [ebp - 0x1f0]
push eax
push str.compiled_against_SDL_version__d._d._d_..._n
mov ecx, dword [0x438948]
push ecx
call fcn.00405420
add esp, 0x14
call sub.SDL2.dll_SDL_GetRevision
push eax
movzx edx, byte [ebp - 0x1fa]
push edx
movzx eax, byte [ebp - 0x1fb]
push eax
movzx ecx, byte [ebp - 0x1fc]
push ecx
push str.linked_against_SDL_version__d._d._d.___revision__s_n
mov edx, dword [0x438948]
push edx
call fcn.00405420
add esp, 0x18
push str.INFO:entering_main
call fcn.004194a0
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov dword [ebp - 0x268], eax
push 0
mov eax, dword [ebp - 0x268]
push eax
call dword [sym.imp.USER32.dll_GetSystemMenu]
mov dword [ebp - 0x294], eax
push 2
push 0xf060
mov ecx, dword [ebp - 0x294]
push ecx
call dword [sym.imp.USER32.dll_EnableMenuItem]
push 0x4001
call sub.SDL2.dll_SDL_Init
add esp, 4
push 0x4248ed
call fcn.00424cdf
add esp, 4
mov ecx, 0x438a84
call fcn.00404660
push eax
mov ecx, 0x435558
call fcn.004080c0
push 0x31
push 0x17
mov ecx, 0x438c48
call fcn.0041fe50
mov ecx, 0x438a84
call fcn.00404660
push eax
mov ecx, 0x435558
call fcn.00407520
cmp dword [0x43556c], 0
jne 0x41db2c
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x41db3b
push 9
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x80
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetPriorityClass]
test eax, eax
jne 0x41dbb5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x298], eax
mov edx, dword [ebp - 0x298]
push edx
push str.MAIN:ERR:SetPriorityClass:ret:_u
lea eax, [ebp - 0x10c]
push eax
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x29c], eax
mov ecx, dword [ebp - 0x29c]
mov dword [ebp - 0x2a0], ecx
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2a0]
call fcn.00404660
push eax
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10c]
call fcn.00406240
jmp 0x41dc04
push str.MAIN:INFO:SetPriorityClass:HIGH_PRIORITY_CLASS
lea edx, [ebp - 0xf4]
push edx
call fcn.00418d50
add esp, 8
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x2ac], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x2ac]
call fcn.00404660
push eax
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xf4]
call fcn.00406240
mov ecx, 0x435c88
call fcn.0040daf0
mov ecx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__endthreadex]
push ecx
mov edx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
push edx
push 0
push str.GatewayCore
push 0x40cf80
call sub.SDL2.dll_SDL_CreateThread
add esp, 0x14
mov dword [ebp - 0x214], eax
cmp dword [ebp - 0x214], 0
jne 0x41dc76
call sub.SDL2.dll_SDL_GetError
push eax
push str.MAIN:ERR:CRITICAL:core_thread_not_started:_s_n
call fcn.004196e0
add esp, 8
mov dword [ebp - 0x2b0], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00406240
mov eax, dword [ebp - 0x2b0]
jmp 0x41f8ad
mov ecx, 0x438aa0
call fcn.0041ba00
mov byte [ebp - 0x1d3], 0
call fcn.00424050
mov dword [ebp - 0x1f8], eax
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x208], eax
mov ecx, 0x438a70
call fcn.00416880
push 0x32
push 0x6e
call fcn.00403da0
add esp, 8
call fcn.00403ce0
movzx ecx, byte [ebp - 0x1d3]
test ecx, ecx
jne 0x41f839
mov edx, dword [0x435b04]
push edx
call sub.SDL2.dll_SDL_Delay
add esp, 4
mov ecx, 0x438a50
call fcn.0040dd20
push 0
push 0
call fcn.00403cb0
add esp, 8
lea ecx, [ebp - 0x74]
call fcn.00404660
push eax
push str.____s____n
call fcn.004053e0
add esp, 8
push 9
push 0x3a
push 2
push 0
mov ecx, 0x438a70
call fcn.004174c0
push 0xb
push 0
call fcn.00403cb0
add esp, 8
call fcn.0041bea0
mov eax, dword [0x438a40]
add eax, 1
mov dword [0x438a40], eax
mov ecx, dword [0x438a44]
add ecx, 1
mov dword [0x438a44], ecx
mov edx, dword [0x438a40]
push edx
push str._n_nloop_cnt__:_4d
call fcn.004053e0
add esp, 8
mov eax, dword [0x439a08]
push eax
push str._n_nframe_errors:_4d
call fcn.004053e0
add esp, 8
mov ecx, dword [0x438a3c]
push ecx
push str._ncom_lost_counter____:_3u
call fcn.004053e0
add esp, 8
mov edx, dword [0x4385a0]
push edx
push str._ncom_bytes_per_second:_6d
call fcn.004053e0
add esp, 8
push str._nCOM:_STATE:
call fcn.004053e0
add esp, 4
cmp dword [0x438578], 2
jne 0x41ddb3
mov dword [ebp - 0x20c], 1
jmp 0x41ddbd
mov dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x20c]
push eax
call fcn.00403d10
add esp, 4
push 0x42c9a0
call fcn.004053e0
add esp, 4
mov ecx, dword [0x435af4]
push ecx
call fcn.00403d10
add esp, 4
push str._nNET:_STATE:
call fcn.004053e0
add esp, 4
cmp dword [0x4385a8], 2
jne 0x41de0a
mov dword [ebp - 0x24c], 1
jmp 0x41de14
mov dword [ebp - 0x24c], 0
mov edx, dword [ebp - 0x24c]
push edx
call fcn.00403d10
add esp, 4
push str._AUTO:
call fcn.004053e0
add esp, 4
mov eax, dword [0x435b70]
push eax
call fcn.00403d10
add esp, 4
mov ecx, dword [0x438a38]
push ecx
push str._ntestmode____:_4d
call fcn.004053e0
add esp, 8
push str._nLEDs:_EXG:
call fcn.004053e0
add esp, 4
mov dword [ebp - 0x1d0], 1
jmp 0x41de7a
mov edx, dword [ebp - 0x1d0]
add edx, 1
mov dword [ebp - 0x1d0], edx
cmp dword [ebp - 0x1d0], 6
jg 0x41dea3
movzx eax, byte [ebp - 0x1d0]
push eax
mov ecx, 0x438960
call fcn.00419a30
movzx ecx, al
push ecx
call fcn.00403d10
add esp, 4
jmp 0x41de6b
push str._TEMP:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0041d500
movzx edx, al
push edx
call fcn.00403d10
add esp, 4
push str._EDA:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0041d470
movzx eax, al
push eax
call fcn.00403d10
add esp, 4
push str._RIP:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0041d4d0
movzx ecx, al
push ecx
call fcn.00403d10
add esp, 4
push str._DRL:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0041d440
movzx edx, al
push edx
call fcn.00403d10
add esp, 4
push str._PULSE:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0041d4a0
movzx eax, al
push eax
call fcn.00403d10
add esp, 4
push str._nPWR_:_EXG:
call fcn.004053e0
add esp, 4
mov dword [ebp - 0x1d0], 1
jmp 0x41df7a
mov ecx, dword [ebp - 0x1d0]
add ecx, 1
mov dword [ebp - 0x1d0], ecx
cmp dword [ebp - 0x1d0], 6
jg 0x41dfa3
movzx edx, byte [ebp - 0x1d0]
push edx
mov ecx, 0x438960
call fcn.00419a80
movzx eax, al
push eax
call fcn.00403d10
add esp, 4
jmp 0x41df6b
push str.________EDA:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0041d530
movzx ecx, al
push ecx
call fcn.00403d10
add esp, 4
push str._____________PULSE:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0041d560
movzx edx, al
push edx
call fcn.00403d10
add esp, 4
push str._nIMP_:_AUTOSCAN:
call fcn.004053e0
add esp, 4
mov ecx, 0x438960
call fcn.0040d8b0
cmp eax, 0xffffffff
jne 0x41e011
mov dword [ebp - 0x248], 1
jmp 0x41e01b
mov dword [ebp - 0x248], 0
mov eax, dword [ebp - 0x248]
push eax
call fcn.00403d10
add esp, 4
push str._n___Info_channel:___
call fcn.004053e0
add esp, 4
mov dword [ebp - 0x1d0], 0
jmp 0x41e052
mov ecx, dword [ebp - 0x1d0]
add ecx, 1
mov dword [ebp - 0x1d0], ecx
mov ecx, 0x4393f0
call fcn.0040d810
movzx edx, al
cmp dword [ebp - 0x1d0], edx
jge 0x41e0a3
movzx eax, word [ebp - 0x1d0]
push eax
mov ecx, 0x4393f0
call fcn.0041aac0
push eax
movzx ecx, word [ebp - 0x1d0]
push ecx
mov ecx, 0x4393f0
call fcn.0040d9f0
push eax
mov edx, dword [ebp - 0x1d0]
push edx
push str._nout__02d__12d___20s
call fcn.004053e0
add esp, 0x10
jmp 0x41e043
push 2
push 0x3c
mov ecx, 0x438c48
call fcn.004201c0
mov ecx, 0x438a50
call fcn.00414660
push 0x42ca7c
mov ecx, 0x438aa0
call fcn.0041b8e0
test eax, eax
je 0x41e0ee
push 9
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push str.GATEWAY__SHOW_GUI.MINDFIELD_MASTER_IPC
mov ecx, 0x438aa0
call fcn.0041bad0
push str.GATEWAY__QUIT.MINDFIELD_MASTER_IPC
mov ecx, 0x438aa0
call fcn.0041b8e0
test eax, eax
je 0x41e120
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x398], esp
push 0x42caf0
call fcn.00405ef0
mov ecx, 0x438bb0
call fcn.0041a510
mov eax, dword [0x438578]
cmp dword [0x438c28], eax
je 0x41e149
cmp dword [0x438578], 2
jne 0x41e138
jmp 0x41e149
push 0
push str.TNA__BT_CONNECTED.MINDFIELD_MASTER_IPC
mov ecx, 0x438aa0
call fcn.0041bad0
mov ecx, dword [0x438578]
mov dword [0x438c28], ecx
mov edx, dword [0x438a3c]
push edx
mov eax, dword [0x439a08]
push eax
mov ecx, dword [0x4385a0]
push ecx
mov edx, dword [0x438578]
push edx
push str.COM:STATE:_d_BPS:_u_FE:_u_LL:_u_n
lea eax, [ebp - 0xdc]
push eax
call fcn.00418d50
add esp, 0x18
mov dword [ebp - 0x2b4], eax
mov ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x2bc], ecx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x2bc]
call fcn.00404660
push eax
mov ecx, 0x4386a0
call fcn.00420d10
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xdc]
call fcn.00406240
mov ecx, 0x438bb0
call fcn.0041acc0
movzx edx, al
test edx, edx
jne 0x41e1d5
call fcn.0041bf20
lea eax, [ebp - 0xac]
push eax
call sub.SDL2.dll_SDL_PollEvent
add esp, 4
test eax, eax
je 0x41e2ea
mov ecx, dword [ebp - 0xac]
mov dword [ebp - 0x200], ecx
cmp dword [ebp - 0x200], 0x100
je 0x41e2c6
cmp dword [ebp - 0x200], 0x200
je 0x41e229
cmp dword [ebp - 0x200], 0x201
je 0x41e2a8
jmp 0x41e2e5
push str.SDL_WINDOWEVENT
call fcn.004194a0
add esp, 4
mov edx, dword [0x439a60]
push edx
push str.renderer_d
lea eax, [ebp - 0xc4]
push eax
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x2c0], eax
mov ecx, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], ecx
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x2c4]
call fcn.00404660
push eax
call fcn.004194a0
add esp, 4
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc4]
call fcn.00406240
lea edx, [ebp - 0xac]
push edx
call fcn.00424100
add esp, 4
movzx eax, byte [ebp - 0xa0]
mov dword [ebp - 0x39c], eax
jmp 0x41e2e5
lea ecx, [ebp - 0xac]
push ecx
call fcn.00424100
add esp, 4
push str.SDL_SYSWMEVENT
call fcn.004194a0
add esp, 4
jmp 0x41e2e5
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3a0], esp
push str.GW:QUIT
call fcn.00405ef0
mov ecx, 0x438bb0
call fcn.0041a510
jmp 0x41e1d5
cmp dword [0x435b14], 0
je 0x41e3cf
cmp dword [0x438578], 2
jne 0x41e3cf
mov edx, dword [0x438c2c]
add edx, 1
mov dword [0x438c2c], edx
mov ecx, dword [0x435b14]
mov eax, dword [0x438c2c]
cdq
idiv ecx
mov dword [0x438c2c], edx
cmp dword [0x438c2c], 0
jne 0x41e3cf
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3a4], esp
push str.EXG.5.PWRt
call fcn.00405ef0
mov ecx, 0x438bb0
call fcn.0041a510
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3a8], esp
push str.EXG.3.PWRt
call fcn.00405ef0
mov ecx, 0x438bb0
call fcn.0041a510
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3ac], esp
push str.EXG.1.PWRt
call fcn.00405ef0
mov ecx, 0x438bb0
call fcn.0041a510
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3b0], esp
push str.EDA.PWRt
call fcn.00405ef0
mov ecx, 0x438bb0
call fcn.0041a510
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3b4], esp
push str.PULSE.PWRt
call fcn.00405ef0
mov ecx, 0x438bb0
call fcn.0041a510
mov ecx, 0x438bb0
call fcn.0041acc0
movzx edx, al
test edx, edx
je 0x41f729
mov dword [ebp - 0x1d8], 0x438960
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x3b8], esp
push eax
mov ecx, 0x438bb0
call fcn.0041ab80
lea ecx, [ebp - 0x2c]
call fcn.00406010
mov dword [ebp - 0x3bc], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2c]
call fcn.00418f50
lea ecx, [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x44]
call fcn.00405ff0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x5c]
call fcn.00406070
mov byte [ebp - 4], 8
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c0], esp
push 0x42cbb4
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1d9], al
movzx edx, byte [ebp - 0x1d9]
test edx, edx
je 0x41ecd7
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x44]
call fcn.004188e0
push str.QUIT
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e4c5
mov byte [ebp - 0x1d3], 1
push str._application_shutdown._______________
mov ecx, 0x438c48
call fcn.0041ff00
push str._this_can_require_several_minutes.___
mov ecx, 0x438c48
call fcn.0041ff00
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
mov ecx, 0x438bb0
call fcn.0041a610
jmp 0x41ecd7
push str.SHOW_TEXT_UI
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e501
push str.USER:SHOW_TEXT_UI
mov ecx, 0x438c48
call fcn.0041ff00
push 9
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
push str.HIDE_TEXT_UI
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e53d
push str.USER:HIDE_TEXT_UI
mov ecx, 0x438c48
call fcn.0041ff00
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
push str.COMSTATE
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e5ab
cmp dword [0x438578], 0
jne 0x41e57a
push str.USER:serial_port_open_request
mov ecx, 0x438c48
call fcn.0041ff00
push 1
mov ecx, 0x435c88
call fcn.00414120
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
cmp dword [0x438578], 2
jne 0x41e5a6
push str.USER:serial_port_close_request
mov ecx, 0x438c48
call fcn.0041ff00
push 3
mov ecx, 0x435c88
call fcn.00414120
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
push str.FAKE_FRAME_ERROR
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e5eb
push str.USER:fake_frame_error_once
mov ecx, 0x438c48
call fcn.0041ff00
mov ecx, 0x435c88
call fcn.0040dd20
mov byte [0x438561], 1
mov ecx, 0x435c88
call fcn.00414660
jmp 0x41ecd7
push str.FAKE_SFRAME_ERROR
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e667
push str.USER:fake_sframe_error
mov ecx, 0x438c48
call fcn.0041ff00
mov ecx, 0x435c88
call fcn.0040dd20
mov ecx, 0xa
mov word [0x438564], cx
mov edx, dword [0x438c30]
mov ax, word [edx*4 + 0x435050]
mov word [0x438562], ax
mov ecx, dword [0x438c30]
add ecx, 1
mov dword [0x438c30], ecx
mov eax, dword [0x438c30]
xor edx, edx
mov ecx, 3
div ecx
mov dword [0x438c30], edx
mov ecx, 0x435c88
call fcn.00414660
jmp 0x41ecd7
push str.BINMODE
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e759
movzx edx, byte [0x438566]
test edx, edx
jne 0x41e715
push str.USER:start_binary_mode
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [0x438566], 1
push 0x42cd28
lea ecx, [ebp - 0x44]
call fcn.00406b50
mov esi, dword [0x435994]
call fcn.00424050
add eax, esi
mov dword [0x439a0c], eax
mov eax, dword [0x439a0c]
push eax
push str.COM:INFO:ASCII_to_binary_mode:frame_error_guard_time_until:_u_n
lea ecx, [ebp - 0x1cc]
push ecx
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x2c8], eax
mov edx, dword [ebp - 0x2c8]
mov dword [ebp - 0x2cc], edx
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x2cc]
call fcn.00404660
push eax
call fcn.004194a0
add esp, 4
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1cc]
call fcn.00406240
jmp 0x41e754
push str.USER:end_binary_mode
mov ecx, 0x438c48
call fcn.0041ff00
push 0x42cd84
lea ecx, [ebp - 0x44]
call fcn.00406b50
mov ecx, 0x438960
call fcn.00419b40
mov byte [0x438566], 0
mov esi, dword [0x435994]
call fcn.00424050
add eax, esi
mov dword [0x439a0c], eax
jmp 0x41ecd7
push str.NETt
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e7b7
cmp dword [0x4385a8], 0
jne 0x41e78e
push str.USER:network_socket_open_request
mov ecx, 0x438c48
call fcn.0041ff00
push 1
mov ecx, 0x435c88
call fcn.00414420
cmp dword [0x4385a8], 2
jne 0x41e7b2
push str.USER:network_socket_close_request
mov ecx, 0x438c48
call fcn.0041ff00
push 3
mov ecx, 0x435c88
call fcn.00414420
jmp 0x41ecd7
push str.AUTONETt
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e841
mov eax, dword [0x435b70]
xor eax, 1
mov dword [0x435b70], eax
lea ecx, [ebp - 0x2c]
call fcn.00404660
push eax
push 0x42cde4
lea ecx, [ebp - 0x1b4]
push ecx
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x2d0], eax
mov edx, dword [ebp - 0x2d0]
mov dword [ebp - 0x250], edx
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x250]
call fcn.00404660
push eax
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1b4]
call fcn.00406240
cmp dword [0x435b70], 0
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
push str.AUTOCOMt
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41e8cb
mov eax, dword [0x435af4]
xor eax, 1
mov dword [0x435af4], eax
lea ecx, [ebp - 0x2c]
call fcn.00404660
push eax
push str.USER:_s
lea ecx, [ebp - 0x19c]
push ecx
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x254], eax
mov edx, dword [ebp - 0x254]
mov dword [ebp - 0x258], edx
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x258]
call fcn.00404660
push eax
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x19c]
call fcn.00406240
cmp dword [0x435af4], 0
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c4], esp
push str.BTCOM
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1da], al
movzx eax, byte [ebp - 0x1da]
test eax, eax
je 0x41ea51
lea ecx, [ebp - 0x2c]
call fcn.00418f50
mov dword [ebp - 0x204], 0
push 1
push 3
lea ecx, [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x538]
call fcn.0040b000
mov dword [ebp - 0x25c], eax
mov edx, dword [ebp - 0x25c]
mov dword [ebp - 0x260], edx
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x204]
push eax
mov ecx, dword [ebp - 0x260]
push ecx
call fcn.00409420
add esp, 8
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x538]
call fcn.004030d0
mov edx, dword [0x435990]
cmp edx, dword [ebp - 0x204]
je 0x41e9e4
push 3
mov ecx, 0x435c88
call fcn.00414120
mov dword [0x435af4], 1
mov eax, dword [ebp - 0x204]
mov dword [0x435990], eax
mov ecx, dword [0x435990]
push ecx
push str.BTCOM:INFO:SET:COM_d
lea edx, [ebp - 0x184]
push edx
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x264], eax
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x2b8], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x2b8]
call fcn.00404660
push eax
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x184]
call fcn.00406240
jmp 0x41ea44
mov ecx, dword [0x435990]
push ecx
push str.BTCOM:INFO:re_open_of_same_port_denied:COM_d
lea edx, [ebp - 0x16c]
push edx
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x26c]
mov dword [ebp - 0x270], eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x270]
call fcn.00404660
push eax
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x16c]
call fcn.00406240
mov dword [0x435af4], 1
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
push str.RELOAD_CONFIG
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41ea93
mov ecx, 0x438a84
call fcn.00404660
push eax
mov ecx, 0x435558
call fcn.00407520
push str.USER:config_reloaded
mov ecx, 0x438c48
call fcn.0041ff00
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
push str.EXG_FIR_CAL
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41ec58
cmp dword [0x438578], 2
jne 0x41ec3f
movzx ecx, byte [0x4385b8]
test ecx, ecx
jne 0x41ec27
push str.USER:start_EXG_FIR_CAL
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [0x4385b9], 0
mov byte [ebp - 0x1d4], 0
mov byte [ebp - 4], 0xf
push 1
push 0x40
push 2
push str.exg_fir_raw.csv
lea ecx, [ebp - 0x5e8]
call fcn.0041bd20
mov dword [ebp - 0x2d4], eax
mov edx, dword [ebp - 0x2d4]
mov dword [ebp - 0x278], edx
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x278]
push eax
mov ecx, 0x4385e8
call fcn.0041be30
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x5e8]
call fcn.0040ba80
mov byte [ebp - 0x1d4], 1
jmp 0x41ebaf
mov dword [ebp - 4], 8
jmp 0x41ebbf
movzx eax, byte [ebp - 0x1d4]
test eax, eax
je 0x41ec25
mov byte [0x4385b8], 1
mov byte [0x4385ba], 0
mov byte [0x438698], 0
mov dword [0x4385c4], 0
mov dword [0x4385d4], 0
mov dword [0x4385cc], 0
mov dword [0x4385e0], 0
mov ecx, 0x438960
call fcn.0040d880
mov dword [0x4385bc], eax
push str.EXG_FIR_CAL_running...
mov ecx, 0x438c48
call fcn.0041ff00
jmp 0x41ec3d
mov byte [0x4385b9], 1
push str.USER:abort_running_EXG_FIR_CAL
mov ecx, 0x438c48
call fcn.0041ff00
jmp 0x41ec4e
push str.USER:ERR:com_not_open:start_EXG_FIR_CAL.
mov ecx, 0x438c48
call fcn.0041ff00
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
jmp 0x41ecd7
push 0x42cf28
lea ecx, [ebp - 0x2c]
call fcn.00406c60
test eax, eax
jne 0x41ecd7
mov ecx, 0x435c88
call fcn.0040dec0
mov ecx, 0x435c88
call fcn.0040dc90
mov ecx, 0x435c88
call fcn.0040d8e0
push eax
push str.USER:Simulator_mode__s_selected
lea ecx, [ebp - 0x154]
push ecx
call fcn.00418d50
add esp, 0xc
mov dword [ebp - 0x280], eax
mov edx, dword [ebp - 0x280]
mov dword [ebp - 0x284], edx
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x284]
call fcn.00404660
push eax
mov ecx, 0x438c48
call fcn.0041ff00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x154]
call fcn.00406240
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c8], esp
push str.EXG.
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1db], al
movzx eax, byte [ebp - 0x1db]
test eax, eax
je 0x41eeb4
mov byte [ebp - 0x1d1], 0
lea ecx, [ebp - 0x2c]
call fcn.00404660
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov byte [ebp - 0x1d1], al
push 1
push 0
lea ecx, [ebp - 0x2c]
call fcn.00406cf0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3cc], esp
push 0x42cf60
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1dc], al
movzx ecx, byte [ebp - 0x1dc]
test ecx, ecx
je 0x41edf4
movzx edx, byte [ebp - 0x1d1]
push edx
mov ecx, dword [ebp - 0x1d8]
call fcn.00419a30
movzx eax, al
test eax, eax
jne 0x41ed8c
mov dword [ebp - 0x244], 1
jmp 0x41ed96
mov dword [ebp - 0x244], 0
mov ecx, dword [ebp - 0x244]
push ecx
push 0x42cf68
push 0x50
lea edx, [ebp - 0x5c]
push edx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3d0], esp
lea eax, [ebp - 0x5c]
push eax
call fcn.00405e60
mov dword [ebp - 0x3d4], eax
mov byte [ebp - 4], 0x14
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3d8], esp
push 0x42cf6c
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41eeaf
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2d8], esp
push str..PWRt
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1dd], al
movzx ecx, byte [ebp - 0x1dd]
test ecx, ecx
je 0x41eeaf
movzx edx, byte [ebp - 0x1d1]
push edx
mov ecx, dword [ebp - 0x1d8]
call fcn.00419a80
movzx eax, al
test eax, eax
jne 0x41ee4c
mov dword [ebp - 0x240], 1
jmp 0x41ee56
mov dword [ebp - 0x240], 0
mov ecx, dword [ebp - 0x240]
push ecx
push 0x42cf78
push 0x50
lea edx, [ebp - 0x5c]
push edx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2dc], esp
lea eax, [ebp - 0x5c]
push eax
call fcn.00405e60
mov dword [ebp - 0x2e0], eax
mov byte [ebp - 4], 0x15
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2e4], esp
push 0x42cf7c
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f6c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2e8], esp
push str.CAE.
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1de], al
movzx ecx, byte [ebp - 0x1de]
test ecx, ecx
je 0x41f091
mov byte [ebp - 0x1d2], 0
lea ecx, [ebp - 0x2c]
call fcn.00404660
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov byte [ebp - 0x1d2], al
push 1
push 0
lea ecx, [ebp - 0x2c]
call fcn.00406cf0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2ec], esp
push str..LEDt
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1df], al
movzx edx, byte [ebp - 0x1df]
test edx, edx
je 0x41efd1
movzx eax, byte [ebp - 0x1d2]
push eax
mov ecx, dword [ebp - 0x1d8]
call fcn.00419990
movzx ecx, al
test ecx, ecx
jne 0x41ef69
mov dword [ebp - 0x23c], 1
jmp 0x41ef73
mov dword [ebp - 0x23c], 0
mov edx, dword [ebp - 0x23c]
push edx
push 0x42cf90
push 0x50
lea eax, [ebp - 0x5c]
push eax
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2f0], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x2f4], eax
mov byte [ebp - 4], 0x16
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2f8], esp
push 0x42cf94
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f08c
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x2fc], esp
push str..RESt
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e0], al
movzx eax, byte [ebp - 0x1e0]
test eax, eax
je 0x41f08c
movzx ecx, byte [ebp - 0x1d2]
push ecx
mov ecx, dword [ebp - 0x1d8]
call fcn.004199e0
movzx edx, al
test edx, edx
jne 0x41f029
mov dword [ebp - 0x238], 1
jmp 0x41f033
mov dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x238]
push eax
push 0x42cfa0
push 0x50
lea ecx, [ebp - 0x5c]
push ecx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x300], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x304], eax
mov byte [ebp - 4], 0x17
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x308], esp
push 0x42cfa4
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f6c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x30c], esp
push str.EDA.
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1f1], al
movzx eax, byte [ebp - 0x1f1]
test eax, eax
je 0x41f233
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x310], esp
push 0x42cfb0
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e1], al
movzx ecx, byte [ebp - 0x1e1]
test ecx, ecx
je 0x41f17b
mov ecx, dword [ebp - 0x1d8]
call fcn.0041d470
movzx edx, al
test edx, edx
jne 0x41f113
mov dword [ebp - 0x210], 1
jmp 0x41f11d
mov dword [ebp - 0x210], 0
mov eax, dword [ebp - 0x210]
push eax
push 0x42cfb8
push 0x50
lea ecx, [ebp - 0x5c]
push ecx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x314], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x318], eax
mov byte [ebp - 4], 0x18
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x31c], esp
push 0x42cfbc
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f22e
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x320], esp
push 0x42cfc0
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e2], al
movzx eax, byte [ebp - 0x1e2]
test eax, eax
je 0x41f22e
mov ecx, dword [ebp - 0x1d8]
call fcn.0041d530
movzx ecx, al
test ecx, ecx
jne 0x41f1cb
mov dword [ebp - 0x234], 1
jmp 0x41f1d5
mov dword [ebp - 0x234], 0
mov edx, dword [ebp - 0x234]
push edx
push 0x42cfc8
push 0x50
lea eax, [ebp - 0x5c]
push eax
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x324], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x328], eax
mov byte [ebp - 4], 0x19
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x32c], esp
push 0x42cfcc
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f6c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x330], esp
push str.PULSE.
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e3], al
movzx eax, byte [ebp - 0x1e3]
test eax, eax
je 0x41f3d5
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x334], esp
push 0x42cfd8
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e4], al
movzx ecx, byte [ebp - 0x1e4]
test ecx, ecx
je 0x41f31d
mov ecx, dword [ebp - 0x1d8]
call fcn.0041d4a0
movzx edx, al
test edx, edx
jne 0x41f2b5
mov dword [ebp - 0x230], 1
jmp 0x41f2bf
mov dword [ebp - 0x230], 0
mov eax, dword [ebp - 0x230]
push eax
push 0x42cfe0
push 0x50
lea ecx, [ebp - 0x5c]
push ecx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x338], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x33c], eax
mov byte [ebp - 4], 0x1a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x340], esp
push 0x42cfe4
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f3d0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x344], esp
push str.PWRt
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e5], al
movzx eax, byte [ebp - 0x1e5]
test eax, eax
je 0x41f3d0
mov ecx, dword [ebp - 0x1d8]
call fcn.0041d560
movzx ecx, al
test ecx, ecx
jne 0x41f36d
mov dword [ebp - 0x22c], 1
jmp 0x41f377
mov dword [ebp - 0x22c], 0
mov edx, dword [ebp - 0x22c]
push edx
push 0x42cff0
push 0x50
lea eax, [ebp - 0x5c]
push eax
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x348], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x34c], eax
mov byte [ebp - 4], 0x1b
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x350], esp
push 0x42cff4
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f6c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x354], esp
push str.TEMP.
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e6], al
movzx eax, byte [ebp - 0x1e6]
test eax, eax
je 0x41f4bf
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x358], esp
push 0x42d000
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e7], al
movzx ecx, byte [ebp - 0x1e7]
test ecx, ecx
je 0x41f4ba
mov ecx, dword [ebp - 0x1d8]
call fcn.0041d500
movzx edx, al
test edx, edx
jne 0x41f457
mov dword [ebp - 0x228], 1
jmp 0x41f461
mov dword [ebp - 0x228], 0
mov eax, dword [ebp - 0x228]
push eax
push 0x42d008
push 0x50
lea ecx, [ebp - 0x5c]
push ecx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x35c], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0x1c
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x364], esp
push 0x42d00c
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f6c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x368], esp
push str.DRL.
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e8], al
movzx eax, byte [ebp - 0x1e8]
test eax, eax
je 0x41f5a9
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x36c], esp
push 0x42d018
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1e9], al
movzx ecx, byte [ebp - 0x1e9]
test ecx, ecx
je 0x41f5a4
mov ecx, dword [ebp - 0x1d8]
call fcn.0041d440
movzx edx, al
test edx, edx
jne 0x41f541
mov dword [ebp - 0x224], 1
jmp 0x41f54b
mov dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x224]
push eax
push 0x42d020
push 0x50
lea ecx, [ebp - 0x5c]
push ecx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x370], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x374], eax
mov byte [ebp - 4], 0x1d
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x378], esp
push 0x42d024
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f6c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x37c], esp
push str.RIP.
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1ea], al
movzx eax, byte [ebp - 0x1ea]
test eax, eax
je 0x41f690
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x380], esp
push str.LEDt
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1eb], al
movzx ecx, byte [ebp - 0x1eb]
test ecx, ecx
je 0x41f68e
mov ecx, dword [ebp - 0x1d8]
call fcn.0041d4d0
movzx edx, al
test edx, edx
jne 0x41f62b
mov dword [ebp - 0x220], 1
jmp 0x41f635
mov dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x220]
push eax
push 0x42d038
push 0x50
lea ecx, [ebp - 0x5c]
push ecx
call fcn.00418cc0
add esp, 0x10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x384], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00405e60
mov dword [ebp - 0x388], eax
mov byte [ebp - 4], 0x1e
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x38c], esp
push 0x42d03c
call fcn.00405ef0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.00418ab0
jmp 0x41f6c6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x390], esp
push str.SIM_CYCLE
call fcn.00405ef0
lea ecx, [ebp - 0x2c]
call fcn.00418ec0
mov byte [ebp - 0x1ec], al
movzx eax, byte [ebp - 0x1ec]
test eax, eax
je 0x41f6c6
lea ecx, [ebp - 0x44]
call fcn.0040cbf0
lea ecx, [ebp - 0x44]
call fcn.0041d410
movzx edx, al
test edx, edx
jne 0x41f700
push 0x42d04c
lea ecx, [ebp - 0x44]
call fcn.0040c870
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x394], esp
lea eax, [ebp - 0x44]
push eax
call fcn.00405e60
mov ecx, 0x43858c
call fcn.00413e90
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x5c]
call fcn.00406240
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44]
call fcn.00406240
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2c]
call fcn.00406240
jmp 0x41e3cf
movzx ecx, byte [0x43504c]
test ecx, ecx
je 0x41f834
call fcn.00424050
mov dword [ebp - 0x1f8], eax
mov edx, dword [ebp - 0x208]
add edx, 0x3e8
cmp dword [ebp - 0x1f8], edx
jb 0x41f834
mov eax, dword [ebp - 0x1f8]
sub eax, dword [ebp - 0x208]
mov dword [ebp - 0x21c], eax
cvtsi2sd xmm0, dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x21c]
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x42a8c0]
mov edx, dword [0x438a44]
mov dword [ebp - 0x218], edx
cvtsi2sd xmm1, dword [ebp - 0x218]
mov eax, dword [ebp - 0x218]
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x42a8c0]
mulsd xmm1, qword [0x42a8a8]
divsd xmm1, xmm0
movsd qword [0x438a48], xmm1
sub esp, 8
movsd xmm0, qword [0x438a48]
movsd qword [esp], xmm0
push str.UI_fps:__5.2f_Hz__video_frames_per_second_
lea ecx, [ebp - 0x13c]
push ecx
call fcn.00418d50
add esp, 0x10
mov dword [ebp - 0x288], eax
mov edx, dword [ebp - 0x288]
mov dword [ebp - 0x28c], edx
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x28c]
call fcn.00404660
push eax
call fcn.004194a0
add esp, 4
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x13c]
call fcn.00406240
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x208], eax
mov dword [0x438a44], 0
jmp 0x41dcb9
mov byte [0x438560], 0
push 0
mov ecx, dword [ebp - 0x214]
push ecx
call sub.SDL2.dll_SDL_WaitThread
add esp, 8
mov ecx, 0x435c88
call fcn.0040d0d0
mov ecx, 0x4386a0
call fcn.00420890
mov ecx, 0x438c48
call fcn.00402e10
push str.Exited_cleanly_n
call fcn.004194a0
add esp, 4
call fcn.00419320
push 0x7d0
call sub.SDL2.dll_SDL_Delay
add esp, 4
mov dword [ebp - 0x290], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00406240
mov eax, dword [ebp - 0x290]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00424a63
mov esp, ebp
pop ebp
ret