Function at 0x44ded0
Capabilities:
Check mutex on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ad9da
mov eax, dword fs:[0]
push eax
mov eax, 0x1ecc
call fcn.0049cd20
mov eax, dword [0x4e51f0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0xf
xor eax, eax
mov dword [ebp - 0xac], 7
push str.siglus_compiler
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0xb0], 0
mov word [ebp - 0xc0], ax
call fcn.00432f80
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0xc0]
mov dword [ebp - 4], 0
push eax
mov ecx, 0x514810
call fcn.00432c00
cmp dword [ebp - 0xac], 8
jb 0x44df64
push dword [ebp - 0xc0]
call fcn.0048ccb8
add esp, 4
xor al, al
mov dword [ebp - 0x1ea4], 0xffffffff
mov byte [ebp - 0x1e90], al
xor bl, bl
mov byte [ebp - 0x1e8e], al
mov byte [ebp - 0x1e8f], al
xor eax, eax
mov byte [ebp - 0x1e8d], bl
mov dword [ebp - 0x7c], 7
mov dword [ebp - 0x80], 0
mov word [ebp - 0x90], ax
mov dword [ebp - 4], 1
lea ecx, [ebp - 0xa8]
push 3
push 0x4ca084
mov dword [ebp - 0x94], 7
mov dword [ebp - 0x98], eax
mov word [ebp - 0xa8], ax
call fcn.00432f80
cmp dword [0x5147dc], 8
mov edi, 0x5147c8
mov eax, dword [0x5147d8]
mov ecx, edi
cmovae ecx, dword [0x5147c8]
cmovae edi, dword [0x5147c8]
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x18], 0
lea eax, [ecx + eax*2]
xor ecx, ecx
mov word [ebp - 0x28], cx
mov byte [ebp - 4], 3
push 0xffffffffffffffff
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0xa8]
push ecx
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x30], edi
call fcn.00432c00
cmp dword [ebp - 0x94], 8
jb 0x44e03c
push dword [ebp - 0xa8]
call fcn.0048ccb8
add esp, 4
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
jmp 0x44e050
xor eax, eax
mov dword [ebp - 0x64], 7
mov dword [ebp - 0x68], 0
mov word [ebp - 0x78], ax
mov byte [ebp - 4], 6
mov ebx, edi
mov dword [ebp - 0x1ea0], eax
mov dword [ebp - 0x1e8c], edi
cmp edi, esi
je 0x44e0b1
lea ebx, [ebx]
movzx eax, word [edi]
lea ecx, [ebp - 0x28]
push 1
mov dword [ebp - 0x1e98], eax
lea eax, [ebp - 0x1e98]
push 0
push eax
call fcn.0047a9f0
cmp eax, 0xffffffff
je 0x44e0ad
add edi, 2
mov dword [ebp - 0x30], edi
cmp edi, esi
jne 0x44e080
jmp 0x44e0b1
cmp edi, esi
jne 0x44e0ba
mov edi, ebx
mov dword [ebp - 0x30], edi
cmp ebx, esi
je 0x44e0ca
cmp word [edi], 0x2f
lea eax, [edi + 2]
jne 0x44e0ca
mov dword [ebp - 0x30], eax
mov al, 1
jmp 0x44e0d5
mov eax, dword [ebp - 0x1e8c]
mov dword [ebp - 0x30], eax
xor al, al
test al, al
je 0x44e579
push 3
xor eax, eax
mov dword [ebp - 0x34], 7
push 0x4ca08c
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
call fcn.00432f80
mov ebx, dword [ebp - 0x30]
mov edi, ebx
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1e98], ebx
cmp ebx, esi
je 0x44e143
movzx eax, word [ebx]
lea ecx, [ebp - 0x28]
push 1
mov dword [ebp - 0x1e8c], eax
lea eax, [ebp - 0x1e8c]
push 0
push eax
call fcn.0047a9f0
cmp eax, 0xffffffff
je 0x44e13f
add ebx, 2
mov dword [ebp - 0x30], ebx
cmp ebx, esi
jne 0x44e112
jmp 0x44e143
cmp ebx, esi
jne 0x44e14c
mov ebx, dword [ebp - 0x1e98]
mov dword [ebp - 0x30], ebx
mov ecx, dword [ebp - 0x34]
lea edx, [ebp - 0x48]
mov eax, dword [ebp - 0x38]
cmp ecx, 8
cmovae edx, dword [ebp - 0x48]
add eax, eax
mov dword [ebp - 0x1e8c], eax
sub edx, ebx
cmp ecx, 8
lea eax, [ebp - 0x48]
lea ecx, [ebx + edx]
cmovae eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x1e8c]
cmp ecx, eax
je 0x44e195
cmp ebx, esi
je 0x44e191
mov ax, word [ebx]
cmp ax, word [ecx]
jne 0x44e191
mov ecx, dword [ebp - 0x34]
add ebx, 2
jmp 0x44e166
xor bl, bl
jmp 0x44e199
mov edi, ebx
mov bl, 1
cmp dword [ebp - 0x34], 8
mov dword [ebp - 0x30], edi
jb 0x44e1b3
push dword [ebp - 0x48]
call fcn.0048ccb8
mov esi, dword [ebp - 0x2c]
add esp, 4
mov edi, dword [ebp - 0x30]
test bl, bl
je 0x44e1c3
mov byte [ebp - 0x1e8d], 1
jmp 0x44e556
push 0xa
xor eax, eax
mov dword [ebp - 0x34], 7
push str.project_no
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
call fcn.00432f80
mov edi, dword [ebp - 0x30]
mov ebx, edi
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1e98], edi
cmp edi, esi
je 0x44e229
movzx eax, word [edi]
lea ecx, [ebp - 0x28]
push 1
mov dword [ebp - 0x1e8c], eax
lea eax, [ebp - 0x1e8c]
push 0
push eax
call fcn.0047a9f0
cmp eax, 0xffffffff
je 0x44e225
add edi, 2
mov dword [ebp - 0x30], edi
cmp edi, esi
jne 0x44e1f8
jmp 0x44e229
cmp edi, esi
jne 0x44e232
mov edi, dword [ebp - 0x1e98]
mov dword [ebp - 0x30], edi
mov ecx, dword [ebp - 0x34]
lea edx, [ebp - 0x48]
mov eax, dword [ebp - 0x38]
cmp ecx, 8
cmovae edx, dword [ebp - 0x48]
add eax, eax
mov dword [ebp - 0x1e8c], eax
sub edx, edi
lea esp, [esp]
cmp ecx, 8
lea eax, [ebp - 0x48]
lea ecx, [edx + edi]
cmovae eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x1e8c]
cmp ecx, eax
je 0x44e284
cmp edi, esi
je 0x44e27b
mov ax, word [edi]
cmp ax, word [ecx]
jne 0x44e27b
mov ecx, dword [ebp - 0x34]
add edi, 2
jmp 0x44e250
mov byte [ebp - 0x1e91], 0
jmp 0x44e28d
mov ebx, edi
mov byte [ebp - 0x1e91], 1
cmp dword [ebp - 0x34], 8
mov dword [ebp - 0x30], ebx
jb 0x44e2a7
push dword [ebp - 0x48]
call fcn.0048ccb8
mov esi, dword [ebp - 0x2c]
add esp, 4
mov ebx, dword [ebp - 0x30]
cmp byte [ebp - 0x1e91], 0
je 0x44e34b
mov eax, ebx
mov edi, ebx
mov dword [ebp - 0x1e98], eax
cmp ebx, esi
je 0x44e2f9
movzx eax, word [ebx]
lea ecx, [ebp - 0x28]
push 1
mov dword [ebp - 0x1e8c], eax
lea eax, [ebp - 0x1e8c]
push 0
push eax
call fcn.0047a9f0
cmp eax, 0xffffffff
je 0x44e2ef
add ebx, 2
mov dword [ebp - 0x30], ebx
cmp ebx, esi
jne 0x44e2c2
jmp 0x44e2f3
cmp ebx, esi
jne 0x44e302
mov eax, dword [ebp - 0x1e98]
mov ebx, eax
mov dword [ebp - 0x30], ebx
cmp eax, esi
je 0x44e343
cmp word [ebx], 0x3d
jne 0x44e343
lea eax, [ebp - 0x1ea0]
add ebx, 2
push eax
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
call fcn.0047a880
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x30]
test al, al
je 0x44e556
mov eax, dword [ebp - 0x1ea0]
mov byte [ebp - 0x1e90], 1
mov dword [ebp - 0x1ea4], eax
jmp 0x44e556
mov dword [ebp - 0x30], edi
jmp 0x44e556
push 3
xor eax, eax
mov dword [ebp - 0x34], 7
push 0x4ca0ac
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
call fcn.00432f80
mov ebx, dword [ebp - 0x30]
mov edi, ebx
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x1ea0], ebx
cmp ebx, esi
je 0x44e3b1
movzx eax, word [ebx]
lea ecx, [ebp - 0x28]
push 1
mov dword [ebp - 0x1e8c], eax
lea eax, [ebp - 0x1e8c]
push 0
push eax
call fcn.0047a9f0
cmp eax, 0xffffffff
je 0x44e3ad
add ebx, 2
mov dword [ebp - 0x30], ebx
cmp ebx, esi
jne 0x44e380
jmp 0x44e3b1
cmp ebx, esi
jne 0x44e3ba
mov ebx, dword [ebp - 0x1ea0]
mov dword [ebp - 0x30], ebx
mov ecx, dword [ebp - 0x34]
lea edx, [ebp - 0x48]
mov eax, dword [ebp - 0x38]
cmp ecx, 8
cmovae edx, dword [ebp - 0x48]
add eax, eax
mov dword [ebp - 0x1e8c], eax
sub edx, ebx
cmp ecx, 8
lea eax, [ebp - 0x48]
lea ecx, [edx + ebx]
cmovae eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x1e8c]
cmp ecx, eax
je 0x44e403
cmp ebx, esi
je 0x44e3ff
mov ax, word [ebx]
cmp ax, word [ecx]
jne 0x44e3ff
mov ecx, dword [ebp - 0x34]
add ebx, 2
jmp 0x44e3d4
xor bl, bl
jmp 0x44e407
mov edi, ebx
mov bl, 1
cmp dword [ebp - 0x34], 8
mov dword [ebp - 0x30], edi
jb 0x44e421
push dword [ebp - 0x48]
call fcn.0048ccb8
mov esi, dword [ebp - 0x2c]
add esp, 4
mov edi, dword [ebp - 0x30]
test bl, bl
je 0x44e4da
push esi
lea edx, [ebp - 0x28]
mov dword [ebp - 0x1e8c], esi
lea ecx, [ebp - 0x30]
mov ebx, edi
call fcn.0047a4b0
add esp, 4
test al, al
jne 0x44e44c
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], esi
jmp 0x44e452
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x30]
cmp edi, esi
je 0x44e4c7
cmp word [edi], 0x3d
jne 0x44e4c7
add edi, 2
lea edx, [ebp - 0x28]
push esi
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], edi
call fcn.0047a4b0
add esp, 4
test al, al
jne 0x44e47f
mov eax, esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], eax
jmp 0x44e482
mov eax, dword [ebp - 0x2c]
push 0x5c
push eax
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x30]
call fcn.0047a780
add esp, 8
test al, al
jne 0x44e4a2
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], esi
jmp 0x44e556
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x78]
mov byte [ebp - 0x1e8e], 1
push eax
lea ecx, [ebp - 0x90]
call fcn.00432c00
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x30]
jmp 0x44e556
mov esi, dword [ebp - 0x1e8c]
mov edi, ebx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], esi
jmp 0x44e556
push str.full
lea ecx, [ebp - 0x60]
call fcn.00433100
mov esi, dword [ebp - 0x2c]
lea edx, [ebp - 0x28]
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0x30]
push esi
call fcn.0047a4b0
add esp, 4
test al, al
jne 0x44e50a
mov eax, esi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], eax
jmp 0x44e50d
mov eax, dword [ebp - 0x2c]
push 1
push eax
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x30]
call fcn.0047a500
add esp, 8
test al, al
jne 0x44e52c
mov dword [ebp - 0x30], edi
xor bl, bl
mov dword [ebp - 0x2c], esi
jmp 0x44e534
mov esi, dword [ebp - 0x2c]
mov bl, 1
mov edi, dword [ebp - 0x30]
cmp dword [ebp - 0x4c], 8
jb 0x44e54b
push dword [ebp - 0x60]
call fcn.0048ccb8
mov esi, dword [ebp - 0x2c]
add esp, 4
mov edi, dword [ebp - 0x30]
test bl, bl
je 0x44e568
mov byte [ebp - 0x1e8f], 1
cmp dword [ebp - 0x64], 8
jb 0x44e050
push dword [ebp - 0x78]
jmp 0x44e034
cmp dword [ebp - 0x64], 8
jb 0x44e579
push dword [ebp - 0x78]
call fcn.0048ccb8
add esp, 4
mov dword [ebp - 0x1e8c], 0
push str.siglus_compiler
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 7
call fcn.00433100
cmp dword [ebp - 0x34], 8
lea eax, [ebp - 0x48]
cmovae eax, dword [ebp - 0x48]
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov esi, eax
test esi, esi
mov dword [ebp - 0x1e8c], esi
setne al
test al, al
sete bl
cmp dword [ebp - 0x34], 8
jb 0x44e5cd
push dword [ebp - 0x48]
call fcn.0048ccb8
add esp, 4
test bl, bl
je 0x44e65d
push 0x4c9fe4
lea ecx, [ebp - 0x60]
call fcn.00433100
push 0x4ca0c0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 8
call fcn.00433100
cmp dword [ebp - 0x4c], 8
lea ecx, [ebp - 0x60]
push 0x30
cmovae ecx, dword [ebp - 0x60]
lea eax, [ebp - 0x48]
cmp dword [ebp - 0x34], 8
push ecx
cmovae eax, dword [ebp - 0x48]
push eax
push dword [0x5147c4]
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp dword [ebp - 0x34], 8
jb 0x44e62a
push dword [ebp - 0x48]
call fcn.0048ccb8
add esp, 4
xor eax, eax
mov dword [ebp - 0x34], 7
cmp dword [ebp - 0x4c], 8
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
jb 0x44e6d5
push dword [ebp - 0x60]
call fcn.0048ccb8
add esp, 4
mov edi, 1
jmp 0x44e933
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
mov bl, byte [ebp - 0x1e8d]
cmp eax, 0xb7
jne 0x44e6df
test bl, bl
je 0x44e6bd
push 0x4c9fe4
lea ecx, [ebp - 0x48]
call fcn.00433100
push 0x4ca0e8
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 9
call fcn.00433100
push ecx
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x60]
call fcn.0047eb80
add esp, 4
lea ecx, [ebp - 0x60]
call fcn.00432b00
lea ecx, [ebp - 0x48]
call fcn.00432b00
mov edi, 1
jmp 0x44e933
push 0
push str.visualarts_siglus_compiler_main_dialog_class
call dword [sym.imp.USER32.dll_FindWindowW]
test eax, eax
je 0x44e6df
push eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov edi, 1
jmp 0x44e933
push 8
lea eax, [ebp - 0x1eac]
mov dword [ebp - 0x1eac], 0
push eax
mov dword [ebp - 0x1ea8], 0
call dword [sym.imp.WINMM.dll_timeGetDevCaps]
push dword [ebp - 0x1eac]
call dword [sym.imp.WINMM.dll_timeBeginPeriod]
call fcn.0045fa10
mov ecx, eax
call fcn.0047eee0
lea eax, [ebp - 0x1e9c]
mov word [ebp - 0x1e9c], 0
lea ecx, [ebp - 0x138]
mov dword [0x4fdd74], eax
call fcn.00437c80
mov eax, ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1e88]
mov dword [0x4fdd70], eax
call fcn.0044eb10
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x1e88]
mov edx, dword [0x4fdd70]
test bl, bl
mov dword [0x4fdd78], eax
sete al
mov byte [edx + 0x10], al
lea ecx, [edx + 0x18]
mov al, byte [ebp - 0x1e90]
mov byte [edx + 0x11], al
mov eax, dword [ebp - 0x1ea4]
mov dword [edx + 0x14], eax
mov al, byte [ebp - 0x1e8e]
mov byte [edx + 0x12], al
lea eax, [ebp - 0x90]
cmp ecx, eax
je 0x44e7a4
push 0xffffffffffffffff
push 0
push eax
call fcn.00432c00
mov edx, dword [0x4fdd70]
mov al, byte [ebp - 0x1e8f]
mov byte [edx + 0x13], al
lea eax, [ebp - 0x1ed4]
push eax
push str.32770
push dword [0x5147c0]
call dword [sym.imp.USER32.dll_GetClassInfoW]
lea eax, [ebp - 0x1ed4]
mov dword [ebp - 0x1eb0], str.visualarts_siglus_compiler_main_dialog_class
push eax
call dword [sym.imp.USER32.dll_RegisterClassW]
lea ecx, [ebp - 0x60]
test ax, ax
jne 0x44e861
push str.RegisterClass
call fcn.00433100
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xc
push eax
call edi
mov edx, eax
mov ecx, 2
call fcn.00482680
add esp, 4
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x60]
call fcn.00432b00
lea ecx, [ebp - 0x48]
call fcn.00482950
push eax
mov edx, 0x4ca154
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x60]
call fcn.004327d0
add esp, 4
cmp dword [eax + 0x14], 8
jb 0x44e838
mov eax, dword [eax]
push 0x30
push 0x4c9374
push eax
push dword [0x5147c4]
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x60]
call fcn.00432b00
lea ecx, [ebp - 0x48]
call fcn.00432b00
jmp 0x44e90f
push str.main_dialog
call fcn.00433100
sub esp, 0x10
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x60]
push eax
push ecx
call fcn.00486210
test al, al
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x60]
sete bl
call fcn.00432b00
test bl, bl
je 0x44e8c7
lea ecx, [ebp - 0x48]
call fcn.00482950
push eax
mov edx, 0x4ca1a0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x60]
call fcn.004327d0
add esp, 4
mov ecx, eax
call fcn.0047ebb0
lea ecx, [ebp - 0x60]
call fcn.00432b00
lea ecx, [ebp - 0x48]
call fcn.00432b00
jmp 0x44e8fe
mov ecx, 0x5147c0
call fcn.0047eab0
test al, al
je 0x44e8f2
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x44e8e0
push 1
call edi
mov ecx, 0x5147c0
call fcn.0047eab0
test al, al
jne 0x44e8e0
call fcn.0045fa10
mov ecx, eax
call fcn.0047f0a0
push dword [0x5147c0]
push str.visualarts_siglus_compiler_main_dialog_class
call dword [sym.imp.USER32.dll_UnregisterClassW]
push dword [ebp - 0x1eac]
call dword [sym.imp.WINMM.dll_timeEndPeriod]
lea ecx, [ebp - 0x1e88]
xor edi, edi
call fcn.0044eba0
lea ecx, [ebp - 0x138]
call fcn.0044e9a0
test esi, esi
je 0x44e93e
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x14], 8
jb 0x44e94f
push dword [ebp - 0x28]
call fcn.0048ccb8
add esp, 4
xor eax, eax
mov dword [ebp - 0x14], 7
cmp dword [ebp - 0x7c], 8
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
jb 0x44e977
push dword [ebp - 0x90]
call fcn.0048ccb8
add esp, 4
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0048cca9
mov esp, ebp
pop ebp
ret