Function at 0x100b5ce1
Capabilities:
Terminate thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x308
mov eax, dword [case.0x100be6e1.80]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
movzx eax, ax
mov esi, ecx
push edi
cmp eax, 0x3021
ja case.default.0x100b5b48
je 0x100b627b
cmp eax, 6
ja case.default.0x100b5b48
jmp dword [eax*4 + 0x100b63b8]
mov ebx, dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a70]
call ebx
cmp dword [ebp - 0x308], 0x103
mov edi, dword [sym.imp.KERNEL32.dll_TerminateThread]
jne 0x100b5b80
push 0
push dword [0x103c9a70]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a74]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5ba5
push 0
push dword [0x103c9a74]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a78]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5bca
push 0
push dword [0x103c9a78]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a84]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5bef
push 0
push dword [0x103c9a84]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a88]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5c14
push 0
push dword [0x103c9a88]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a8c]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5c39
push 0
push dword [0x103c9a8c]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a90]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5c5e
push 0
push dword [0x103c9a90]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a94]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5c83
push 0
push dword [0x103c9a94]
call edi
mov ecx, dword [0x103c914c]
test ecx, ecx
je 0x100b5cd2
call fcn.100ba410
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x103c914c]
call fcn.100b9e40
mov ecx, dword [0x103c914c]
test ecx, ecx
je 0x100b5cd2
mov eax, dword [ecx]
call dword [eax + 0x60]
mov ecx, dword [0x103c914c]
test ecx, ecx
je 0x100b5cc8
mov eax, dword [ecx]
push 1
call dword [eax + 4]
mov dword [0x103c914c], 0
mov dword [0x103c8efc], 1
jmp case.default.0x100b5b48
mov ebx, dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a70]
call ebx
cmp dword [ebp - 0x308], 0x103
mov edi, dword [sym.imp.KERNEL32.dll_TerminateThread]
jne 0x100b5d12
push 0
push dword [0x103c9a70]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a74]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5d37
push 0
push dword [0x103c9a74]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a78]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5d5c
push 0
push dword [0x103c9a78]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a84]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5d81
push 0
push dword [0x103c9a84]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a88]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5da6
push 0
push dword [0x103c9a88]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a8c]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5dcb
push 0
push dword [0x103c9a8c]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a90]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5df0
push 0
push dword [0x103c9a90]
call edi
lea eax, [ebp - 0x308]
push eax
push dword [0x103c9a94]
call ebx
cmp dword [ebp - 0x308], 0x103
jne 0x100b5e15
push 0
push dword [0x103c9a94]
call edi
mov ecx, dword [0x103c914c]
test ecx, ecx
je 0x100b5e55
call fcn.100ba410
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x103c914c]
call fcn.100b9e40
mov ecx, dword [0x103c914c]
test ecx, ecx
je 0x100b5e4b
mov eax, dword [ecx]
push 1
call dword [eax + 4]
mov dword [0x103c914c], 0
push str.temp_display_settings
mov ecx, 0x103c8f10
mov dword [0x103c8efc], 1
call fcn.10008160
push dword [esi + 0xe0]
mov ecx, 0x103c8f10
push str.Dsp_ACDark
call fcn.100080f0
push dword [esi + 0xe4]
mov ecx, 0x103c8f10
push str.Dsp_ACBright
call fcn.100080f0
push dword [esi + 0xe8]
mov ecx, 0x103c8f10
push str.Dsp_VMin
call fcn.100080f0
push dword [esi + 0xec]
mov ecx, 0x103c8f10
push str.Dsp_VMax
call fcn.100080f0
push dword [esi + 0xf0]
mov ecx, 0x103c8f10
push str.Dsp_HistMin
call fcn.100080f0
push dword [esi + 0xf4]
mov ecx, 0x103c8f10
push str.Dsp_HistMax
call fcn.100080f0
push dword [esi + 0xf8]
mov ecx, 0x103c8f10
push str.Dsp_HistScale
call fcn.100080f0
push dword [esi + 0xfc]
mov ecx, 0x103c8f10
push str.DspG_Grid
call fcn.100080f0
push dword [esi + 0x100]
mov ecx, 0x103c8f10
push str.Dsp_AC
call fcn.100080f0
push dword [esi + 0x104]
mov ecx, 0x103c8f10
push str.DspG_Markers
call fcn.100080f0
push str.temp_parameters
mov ecx, 0x103c8f10
call fcn.10008160
push dword [esi + 0x108]
mov ecx, 0x103c8f10
push str.ImgProcessFlags
call fcn.100080f0
jmp case.default.0x100b5b48
push 5
push 0
push 0x103c91c8
push str.EXPLORER.EXE
push str.OPEN
push dword [esi + 0x20]
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10291e04
mov esp, ebp
pop ebp
ret 8
push dword [0x103c9120]
xor eax, eax
cmp dword [0x103c9770], eax
sete al
mov dword [0x103c9770], eax
call fcn.1009e860
push dword [0x103c9128]
call fcn.1009e860
mov eax, dword [0x1032d5f4]
add esp, 8
cmp dword [0x103c9770], 0
movups xmm0, xmmword [str.UI_set:_Implicit_Init]
mov dword [ebp - 0xf4], eax
mov ax, word [0x1032d5f8]
mov word [ebp - 0xf0], ax
mov al, byte [0x1032d5fa]
movups xmmword [ebp - 0x104], xmm0
mov byte [ebp - 0xee], al
je 0x100b6024
lea ecx, [ebp - 0x104]
dec ecx
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x100b6007
mov ax, word [0x1032d5fc]
mov word [ecx], ax
mov al, byte [0x1032d5fe]
mov byte [ecx + 2], al
jmp 0x100b6041
lea edi, [ebp - 0x104]
dec edi
nop dword [eax + eax]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x100b6030
mov eax, dword [0x1032d600]
mov dword [edi], eax
lea eax, [ebp - 0x104]
push 0
push eax
call fcn.100bbda0
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10291e04
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [0x103c911c]
xor eax, eax
cmp dword [0x103c9774], eax
push 0
sete al
push 1
mov dword [0x103c9774], eax
call fcn.1009a250
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c911c]
cmp eax, ecx
jne 0x100b60aa
push 0x1131
push ecx
call fcn.1009bac0
add esp, 8
jmp 0x100b6111
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c9120]
cmp eax, ecx
jne 0x100b60c2
call fcn.1009e950
jmp 0x100b6111
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c9124]
cmp eax, ecx
jne 0x100b60da
call fcn.100a0670
jmp 0x100b6111
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c9128]
cmp eax, ecx
jne 0x100b60fb
push 0x10d4
push ecx
call fcn.1009bac0
add esp, 8
jmp 0x100b6111
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c9138]
cmp eax, ecx
jne 0x100b6111
call fcn.100aa8d0
lea eax, [ebp - 0x204]
push eax
call fcn.1004ca90
lea eax, [ebp - 0x204]
push eax
call fcn.100bbbe0
push eax
lea eax, [ebp - 0x104]
push str.UI_set:_Cal_Dir____HOME___s_
push eax
call fcn.100029e0
lea eax, [ebp - 0x104]
push 0
push eax
call fcn.100bbda0
add esp, 0x1c
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10291e04
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [0x103c911c]
xor eax, eax
cmp dword [0x103c9778], eax
push 0
sete al
push 1
mov dword [0x103c9778], eax
call fcn.1009a250
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c911c]
cmp eax, ecx
je 0x100b609a
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c9120]
cmp eax, ecx
je 0x100b60bb
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c9124]
cmp eax, ecx
je 0x100b60d3
mov ecx, esi
call fcn.100e7f99
mov ecx, dword [0x103c9128]
cmp eax, ecx
je 0x100b60eb
jmp 0x100b60fb
xor eax, eax
cmp dword [0x103c977c], eax
sete al
cmp dword [0x103ca014], 0
mov dword [0x103c977c], eax
push eax
jne 0x100b6203
mov ecx, dword [0x103c9140]
call fcn.100aeaf0
jmp 0x100b620e
mov ecx, dword [0x103c911c]
call fcn.1009a1e0
call fcn.100c3b5c
push 0x100
lea ecx, [ebp - 0x304]
push ecx
mov eax, dword [eax + 8]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x304]
push 0x2e
push eax
call fcn.102a1020
add esp, 8
mov ecx, 0x103c8e30
mov dword [eax + 1], 0x494e49
lea eax, [ebp - 0x304]
push 1
push 1
push eax
call fcn.1002c7c0
mov ecx, dword [0x103c911c]
test ecx, ecx
je 0x100b614c
cmp dword [ecx + 0xc0], 0
je 0x100b614c
call fcn.1009a330
jmp 0x100b614c
push str.temp_display_settings
mov ecx, 0x103c8f10
mov dword [0x103c8efc], 1
call fcn.10008160
push dword [esi + 0xe0]
mov ecx, 0x103c8f10
push str.Dsp_ACDark
call fcn.100080f0
push dword [esi + 0xe4]
mov ecx, 0x103c8f10
push str.Dsp_ACBright
call fcn.100080f0
push dword [esi + 0xe8]
mov ecx, 0x103c8f10
push str.Dsp_VMin
call fcn.100080f0
push dword [esi + 0xec]
mov ecx, 0x103c8f10
push str.Dsp_VMax
call fcn.100080f0
push dword [esi + 0xf0]
mov ecx, 0x103c8f10
push str.Dsp_HistMin
call fcn.100080f0
push dword [esi + 0xf4]
mov ecx, 0x103c8f10
push str.Dsp_HistMax
call fcn.100080f0
push dword [esi + 0xf8]
mov ecx, 0x103c8f10
push str.Dsp_HistScale
call fcn.100080f0
push dword [esi + 0xfc]
mov ecx, 0x103c8f10
push str.DspG_Grid
call fcn.100080f0
push dword [esi + 0x100]
mov ecx, 0x103c8f10
push str.Dsp_AC
call fcn.100080f0
push dword [esi + 0x104]
mov ecx, 0x103c8f10
push str.DspG_Markers
call fcn.100080f0
push str.temp_parameters
mov ecx, 0x103c8f10
call fcn.10008160
push dword [esi + 0x108]
mov ecx, 0x103c8f10
push str.ImgProcessFlags
call fcn.100080f0
push 0
mov ecx, 0x103c8e30
call fcn.1002eac0
push dword [ebp + 0xc]
mov ecx, esi
push dword [ebp + 8]
call fcn.100e849d
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10291e04
mov esp, ebp
pop ebp
ret 8