Function at 0x414362
Capabilities:
Check mutex on windows
Get system information on windows
Hide graphical window

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x103c
call fcn.00442470
mov eax, dword [0x4434f4]
xor eax, esp
mov dword [esp + 0x1038], eax
push ebx
xor ebx, ebx
cmp dword [0x443514], 3
push esi
mov esi, ebx
mov dword [esp + 0x10], ebx
push edi
mov edi, ecx
mov dword [esp + 0x18], esi
jne 0x414615
call fcn.0041fa39
test eax, eax
jne 0x41443a
cmp dword [0x443534], 0xffffffff
push 2
pop ebx
jne 0x4143c1
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402900
mov ecx, ebx
call fcn.0041e988
push 0x44a
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4143e6
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
test edi, edi
je 0x4146f6
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x9d
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
push 0x3e8
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push ebx
lea eax, [esp + 0x44]
push eax
push 0x125
jmp 0x4146ca
call fcn.00413b7b
test eax, eax
jne 0x4144d4
cmp dword [0x443534], 0xffffffff
push 2
pop ebx
jne 0x41445b
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402928
mov ecx, ebx
call fcn.0041e988
push 0x44a
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x414480
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
test edi, edi
je 0x4146f6
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x99
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
push 0x3e8
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push ebx
lea eax, [esp + 0x44]
push eax
push 0x14b
jmp 0x4146ca
xor edx, edx
mov dword [esp + 0xc], ebx
cmp dword [0x444f38], edx
lea ecx, [esp + 0xc]
push ebx
sete dl
call fcn.0040dc64
mov dword [esp + 0x10], eax
test eax, eax
jle 0x4145fd
cmp dword [0x443534], 0xffffffff
push 2
pop ebx
jne 0x41450d
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402964
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x414597
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x115
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x41459e
lea eax, [esp + 0x40]
push eax
push 0x3e8
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
lea eax, [esp + 0x40]
push ebx
push eax
cmp dword [0x444f38], esi
je 0x41456a
push 0x116
jmp 0x41456f
push 0xbb
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
jle 0x41459e
lea eax, [esp + 0x40]
push eax
push 0x3eb
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
xor esi, esi
inc esi
mov dword [esp + 0x18], esi
push 0x44a
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
xor ebx, ebx
mov dword [esp + 0x14], eax
test eax, eax
je 0x4145d5
mov esi, dword [esp + 0xc]
mov edi, ebx
push dword [esi + edi*4]
push ebx
push 0x180
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esp + 0x14]
inc edi
cmp edi, dword [esp + 0x10]
jl 0x4145ba
mov eax, dword [esp + 0xc]
mov edi, ebx
mov esi, dword [esp + 0x10]
mov ecx, dword [eax + edi*4]
test ecx, ecx
je 0x4145f4
push ecx
call fcn.00441807
mov eax, dword [esp + 0x10]
pop ecx
mov dword [eax + edi*4], ebx
inc edi
cmp edi, esi
jl 0x4145df
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0xc]
test eax, eax
je 0x414c75
push eax
call fcn.00441807
pop ecx
jmp 0x414c75
cmp dword [str.6ij], 0x4430b0
jne 0x4146fe
cmp dword [0x444f3c], ebx
je 0x414c75
call fcn.0041c967
test eax, eax
je 0x414c75
call fcn.0041c967
mov ecx, eax
call fcn.0042e08a
test eax, eax
jne 0x414c75
call fcn.0041fa39
test eax, eax
jne 0x414c75
cmp dword [0x443534], 0xffffffff
push 2
pop ebx
jne 0x414673
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402998
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x4146f6
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x9d
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
push 0x3e8
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push ebx
lea eax, [esp + 0x44]
push eax
push 0x159
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
push 0x3eb
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
xor esi, esi
inc esi
jmp 0x414c75
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
push 6
pop eax
push 2
pop ebx
cmp ax, word [esp + 0x1c]
jne 0x41479e
cmp dword [0x443534], 0xffffffff
jne 0x41472b
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x4029c8
mov ecx, ebx
call fcn.0041e988
call fcn.0042d9f9
neg eax
sbb eax, eax
neg eax
add eax, 0x139
mov dword [esp + 0x10], eax
test edi, edi
je 0x41483a
push 0x400
lea eax, [esp + 0x44]
push eax
push 0x138
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x41483d
lea eax, [esp + 0x40]
push eax
push 0x3e8
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x400
lea eax, [esp + 0x44]
push eax
push dword [esp + 0x18]
jmp 0x414812
call fcn.0040cafd
test eax, eax
je 0x41483d
cmp dword [0x443534], 0xffffffff
jne 0x4147bc
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x4029f8
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x41483a
push 0x400
lea eax, [esp + 0x44]
push eax
push 0x14e
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x41483d
lea eax, [esp + 0x40]
push eax
push 0x3e8
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x400
lea eax, [esp + 0x44]
push eax
push 0x14f
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x41483d
lea eax, [esp + 0x40]
push eax
push 0x3eb
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
xor esi, esi
inc esi
call fcn.0041385f
test eax, eax
jne 0x4148d1
cmp dword [0x443534], 0xffffffff
jne 0x41485b
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402a2c
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x414c74
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x9b
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3e8]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov edx, ebx
lea ecx, [esp + 0x40]
call fcn.0040cd7b
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3eb]
push eax
jmp 0x414c66
call fcn.0040e3c3
test eax, eax
jne 0x414988
cmp dword [0x443534], 0xffffffff
jne 0x4148ef
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402a6c
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x414c74
push 0x400
lea eax, [esp + 0x44]
push eax
push 0x9b
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3e8]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov edx, 0x400
lea ecx, [esp + 0x40]
call fcn.0040cd7b
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3eb]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
lea eax, [esp + 0x40]
push eax
push 0x402aa8
push ebx
call fcn.0041ea5f
add esp, 0xc
jmp 0x414c74
xor eax, eax
lea edx, [esp + 0xc]
mov ecx, 0x405540
mov word [esp + 0xc], ax
call fcn.00422900
test eax, eax
je 0x414a42
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
mov ecx, 0x409
movzx eax, ax
cmp cx, word [esp + 0xc]
je 0x414a42
cmp cx, ax
jne 0x414a42
cmp dword [0x443534], 0xffffffff
jne 0x4149d4
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402ab0
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x414c74
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x9f
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3e8]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push ebx
lea eax, [esp + 0x44]
push eax
push 0xa0
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
jmp 0x4148b8
push 0x4027f8
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [esp + 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x414a6a
mov dword [esp + 0x14], 1
mov eax, dword [esp + 0x10]
test eax, eax
je 0x414a84
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [esp + 0x14], 0
je 0x414afe
cmp dword [0x443534], 0xffffffff
jne 0x414a9c
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402b0c
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x414c74
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x143
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3e8]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push ebx
lea eax, [esp + 0x44]
push eax
push 0x142
jmp 0x414a31
call fcn.0041fa39
test eax, eax
jne 0x414b9f
cmp dword [0x443534], 0xffffffff
jne 0x414b1c
push ecx
mov edx, ebx
call fcn.0041fb3c
mov edx, 0x402900
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x414b9e
push 0x400
lea eax, [esp + 0x44]
push eax
push 0x9d
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414b9f
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3e8]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x400
lea eax, [esp + 0x44]
push eax
push 0x9e
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414b9f
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3eb]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
inc esi
fld qword [0x443aa0]
fcomp qword [0x40ba20]
fnstsw ax
test ah, 0x41
jne 0x414c75
cmp dword [0x443534], 0xffffffff
jne 0x414bc7
push ecx
mov edx, ebx
call fcn.0041e530
mov edx, 0x402b44
mov ecx, ebx
call fcn.0041e988
test edi, edi
je 0x414c74
mov ebx, 0x400
lea eax, [esp + 0x40]
push ebx
push eax
push 0x99
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
lea eax, [esp + 0x40]
push eax
lea eax, [esi + 0x3e8]
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push ebx
lea eax, [esp + 0x44]
push eax
push 0x9a
push dword [0x443af0]
call dword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
je 0x414c75
fld qword [0x443aa0]
call sub.msvcrt.dll__ftol2
inc eax
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x848]
push ebx
push eax
call fcn.0040c0b5
add esp, 0x10
test eax, eax
js 0x414c75
lea eax, [esp + 0x840]
push eax
lea ecx, [esi + 0x3eb]
push ecx
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
inc esi
mov ecx, dword [esp + 0x1044]
mov eax, esi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00441b90
mov esp, ebp
pop ebp
ret