Function at 0x4bb6c0
Capabilities:
Encode data using base64
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x558ad0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
push esi
push edi
mov edi, ecx
push 0
mov dword [ebp - 0x2c], edi
call fcn.00421990
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [edi + 0x150], eax
xor esi, esi
mov byte [edi + 0x14e], 0
movq xmm0, qword [str._Calibrate]
mov ax, word [0x565eec]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x34], 0xa
movq qword [ebp - 0x44], xmm0
mov word [ebp - 0x3c], ax
mov byte [ebp - 0x3a], 0
push esi
lea eax, [ebp - 0x44]
mov dword [ebp - 4], esi
push eax
mov ecx, edi
call fcn.0041e700
mov edx, dword [ebp - 0x30]
mov byte [edi + 0xec], al
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x4bb77d
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bb773
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be8c1
push edx
push ecx
call fcn.004c824c
add esp, 8
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push 0x20
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00406210
movups xmm0, xmmword [str._CalibrationFilePath]
mov ecx, eax
mov dword [ebp - 0x34], 0x14
mov dword [ebp - 0x30], 0x1f
movups xmmword [ecx], xmm0
mov eax, dword [0x567540]
mov dword [ecx + 0x10], eax
mov byte [ecx + 0x14], 0
mov dword [ebp - 0x44], ecx
push str.CQ_VIDEO.DAT
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 1
push eax
lea eax, [ebp - 0x5c]
mov ecx, edi
push eax
call fcn.0041d8c0
push eax
lea ecx, [edi + 0x12c]
call fcn.00413b90
mov edx, dword [ebp - 0x48]
cmp edx, 0x10
jb 0x4bb824
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bb81a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be8c6
push edx
push ecx
call fcn.004c824c
add esp, 8
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x4bb871
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bb867
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be8c6
push edx
push ecx
call fcn.004c824c
add esp, 8
mov eax, dword [str._Prompt]
mov dword [ebp - 0x44], eax
mov ax, word [0x566110]
mov word [ebp - 0x40], ax
mov al, byte [0x566112]
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x34], 7
mov byte [ebp - 0x3e], al
mov byte [ebp - 0x3d], 0
push 0
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 2
push eax
mov ecx, edi
call fcn.0041d980
mov edx, dword [ebp - 0x30]
mov dword [edi + 0x114], eax
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x4bb8f2
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bb8e8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be8cb
push edx
push ecx
call fcn.004c824c
add esp, 8
mov eax, dword [str._Retries]
mov ecx, dword [0x565d8c]
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x34], 8
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], ecx
mov byte [ebp - 0x3c], 0
push 1
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 3
push eax
mov ecx, edi
call fcn.0041d980
mov edx, dword [ebp - 0x30]
mov dword [edi + 0xd0], eax
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x4bb96a
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bb960
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be8d0
push edx
push ecx
call fcn.004c824c
add esp, 8
push 0x10
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push str._SetBrightnessTo
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00406430
push 0x65
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 4
push eax
mov ecx, edi
call fcn.0041d980
mov edx, dword [ebp - 0x30]
mov byte [edi + 0xd4], al
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x4bb9e7
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bb9dd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be8d5
push edx
push ecx
call fcn.004c824c
add esp, 8
push 0xb
lea ecx, [edi + 0x160]
mov byte [edi + 0x14d], 0
push str.PaletteTest
call fcn.00406430
push dword [edi + 0xd0]
lea eax, [ebp - 0x5c]
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x1f0]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
push 1
push 0x562c78
lea ecx, [edi + 0x1a8]
call fcn.00406430
xor eax, eax
lea ecx, [ebp - 0x14]
mov word [edi + 0x15c], ax
call fcn.00402d40
push 0
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], 5
call fcn.00404300
test al, al
je 0x4be8da
cmp byte [edi + 0xd4], 0x65
je 0x4bbf40
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x14]
call fcn.004043b0
test al, al
jne 0x4bbc71
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bbb83
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0xa
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0xb
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4bbb67
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bbb69
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0xd
jmp 0x4be9c3
push str.Failed_to_read_current_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995545
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0xe
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0xf
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x4bbc55
push 0xf30d9
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bbc57
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x11
jmp 0x4be9c3
movzx eax, byte [ebp - 0x18]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.0043d8f0
add esp, 8
push 0x25
push str.Origional_Brightness_level_is_Percent
push 0
mov ecx, eax
mov byte [ebp - 4], 0x12
call fcn.00413330
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x44], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x34], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x13
push eax
push 0x4e20
push 0xe
call fcn.004204a0
mov edx, dword [ebp - 0x30]
add esp, 0xc
mov byte [ebp - 4], 0x12
cmp edx, 0x10
jb 0x4bbd1c
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bbd12
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be9ef
push edx
push ecx
call fcn.004c824c
add esp, 8
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov byte [ebp - 4], 5
call fcn.00403550
movzx eax, byte [edi + 0xd4]
lea ecx, [ebp - 0x14]
push eax
call fcn.00404590
test al, al
jne 0x4bbf40
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bbe52
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x14
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x15
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x4bbe36
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bbe38
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x17
jmp 0x4be9c3
push str.Failed_to_set_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995546
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x18
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x19
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x4bbf24
push 0xf30da
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bbf26
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x1b
jmp 0x4be9c3
cmp byte [edi + 0xec], 0
je 0x4bc34c
call fcn.00445100
mov ecx, eax
call fcn.00445290
test al, al
jne 0x4bc34c
cmp byte [edi + 0xd4], 0x65
je 0x4bc16f
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4bc16f
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bc081
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x1c
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x1d
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x1e
test eax, eax
je 0x4bc065
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc067
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x1f
jmp 0x4be9c3
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x20
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x21
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x22
test eax, eax
je 0x4bc153
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc155
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x23
jmp 0x4be9c3
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bc26f
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x24
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x25
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x26
test eax, eax
je 0x4bc253
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc255
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x27
jmp 0x4be9c3
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.20472
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x28
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x29
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x2a
test eax, eax
je 0x4bc330
push 0x4ff8
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc332
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x2b
jmp 0x4be9c3
sub esp, 0x18
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
call fcn.00440b40
add esp, 0x18
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
mov byte [edi + 0x14e], al
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
push 0x19
push str._CreateGenericCalibration
mov byte [ebp - 0x44], 0
call fcn.00406430
push 0
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x2c
push eax
mov ecx, edi
call fcn.0041e700
mov edx, dword [ebp - 0x30]
mov byte [edi + 0x125], al
mov byte [ebp - 4], 5
cmp edx, 0x10
jb 0x4bc3e2
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bc3d8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be9f4
push edx
push ecx
call fcn.004c824c
add esp, 8
cmp byte [edi + 0xec], 0
je 0x4bc3f8
cmp byte [edi + 0x125], 0
je 0x4bc3f8
xor al, al
jmp 0x4bc3fa
mov al, 1
mov byte [0x59e361], al
call fcn.00421740
test al, al
jne 0x4be588
call fcn.0041f740
test al, al
jne 0x4be588
push 0xc
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push str._interactive
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], al
call fcn.00406430
push 1
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x39
push eax
mov ecx, edi
call fcn.0041e700
mov edx, dword [ebp - 0x30]
mov byte [edi + 0x110], al
mov byte [ebp - 4], 5
cmp edx, 0x10
jb 0x4bc48f
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bc485
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be9f9
push edx
push ecx
call fcn.004c824c
add esp, 8
push 0xf
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x44]
push str._VerifyChecksum
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
call fcn.00406430
push 1
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x3a
push eax
mov ecx, edi
call fcn.0041e700
mov edx, dword [ebp - 0x30]
mov byte [edi + 0xed], al
mov byte [ebp - 4], 5
cmp edx, 0x10
jb 0x4bc506
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bc4fc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be9fe
push edx
push ecx
call fcn.004c824c
add esp, 8
cmp byte [edi + 0xec], 0
jne 0x4bc96e
cmp byte [edi + 0x110], 0
jne 0x4bc96e
cmp byte [edi + 0xed], 0
je 0x4bc96e
cmp dword [edi + 0x140], 0x10
lea eax, [edi + 0x12c]
jb 0x4bc542
mov eax, dword [edi + 0x12c]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x3b
push eax
call fcn.004372a0
add esp, 4
mov byte [ebp - 0xd], al
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00403550
cmp byte [ebp - 0xd], 0
jne 0x4bc96e
cmp byte [edi + 0xd4], 0x65
je 0x4bc782
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4bc782
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bc694
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x3c
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x3d
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x3e
test eax, eax
je 0x4bc678
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc67a
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x3f
jmp 0x4be9c3
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x40
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x41
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x42
test eax, eax
je 0x4bc766
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc768
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x43
jmp 0x4be9c3
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bc882
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x44
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x45
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x46
test eax, eax
je 0x4bc866
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc868
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x47
jmp 0x4be9c3
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.990695
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x48
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x49
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x4a
test eax, eax
je 0x4bc943
push 0xf1de7
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bc945
xor esi, esi
lea ecx, [edi + 0x12c]
mov byte [ebp - 4], 5
call fcn.004826b0
push eax
lea ecx, [ebp - 0x5c]
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x4b
push eax
push 0xf
push 8
jmp 0x4be9cb
push 1
call fcn.00421990
movzx eax, byte [edi + 0xec]
push eax
call fcn.0040d190
mov cl, byte [edi + 0x110]
add esp, 8
cmp cl, 1
sete al
mov byte [edi + 0x124], al
cmp byte [edi + 0xec], 1
jne 0x4bcda0
cmp cl, 1
jne 0x4bcda0
cmp byte [edi + 0xd4], 0x65
je 0x4bcbbb
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4bcbbb
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bcacd
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x4c
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x4d
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x4e
test eax, eax
je 0x4bcab1
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bcab3
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x4f
jmp 0x4be9c3
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x50
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x51
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x52
test eax, eax
je 0x4bcb9f
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bcba1
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x53
jmp 0x4be9c3
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bccbb
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x54
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x55
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x56
test eax, eax
je 0x4bcc9f
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bcca1
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 0x57
jmp 0x4be9c3
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.990515
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x58
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x59
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x5a
test eax, eax
je 0x4bcd7c
push 0xf1d33
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bcd7e
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x5b
push eax
push 0x62
push 8
jmp 0x4be9cb
push str._Resolution
lea ecx, [ebp - 0x5c]
call fcn.00408370
push str.800X600X32
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x5c
push eax
lea eax, [ebp - 0x44]
mov ecx, edi
push eax
call fcn.0041d8c0
lea esi, [edi + 0xf0]
push eax
mov ecx, esi
call fcn.00413b90
lea ecx, [ebp - 0x44]
call fcn.00403550
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00403550
cmp dword [edi + 0x100], 0
jne 0x4bcdfe
push 0xa
push str.800X600X32
mov ecx, esi
call fcn.00406430
lea eax, [ebp - 0x5c]
push esi
push eax
call fcn.0043d820
add esp, 8
mov ecx, esi
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
push 0
push 0
push 0
push 0x5617a4
call dword [sym.imp.GDI32.dll_CreateDCA]
mov esi, eax
push 0xc
push esi
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push 8
push esi
mov dword [edi + 0x118], eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push 0xa
push esi
mov dword [edi + 0x11c], eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push esi
mov dword [edi + 0x120], eax
call dword [sym.imp.GDI32.dll_DeleteDC]
xor al, al
mov dword [ebp - 0x20], 0
lea esi, [edi + 0xf0]
mov dword [ebp - 0x1c], eax
push str.current
mov ecx, esi
call fcn.004bea10
test eax, eax
je 0x4bd50a
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
push 0x5675c0
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x5d
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x5e
push eax
lea eax, [ebp - 0x38]
push eax
push esi
call fcn.0043e510
add esp, 0xc
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x5c]
call fcn.00403550
mov esi, dword [ebp - 0x38]
cmp esi, dword [ebp - 0x34]
je 0x4bd0ee
nop dword [eax + eax]
push esi
call fcn.00438380
mov ecx, dword [ebp - 0x1c]
add esp, 4
test al, al
movzx ecx, cl
mov eax, 1
cmove ecx, eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
sub eax, 0
je 0x4bcfca
sub eax, 1
je 0x4bcf6e
sub eax, 1
jne 0x4bd0ee
cmp dword [esi + 0x14], 0x10
mov edx, esi
jb 0x4bcf20
mov edx, dword [esi]
mov ecx, edx
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
lea eax, [ecx + 1]
mov dword [ebp - 0x28], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bcf41
sub ecx, dword [ebp - 0x28]
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.00406430
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x61
push eax
call fcn.0043e020
mov word [edi + 0x12a], ax
jmp 0x4bd01d
cmp dword [esi + 0x14], 0x10
mov edx, esi
jb 0x4bcf78
mov edx, dword [esi]
mov ecx, edx
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
lea eax, [ecx + 1]
mov dword [ebp - 0x28], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bcfa0
sub ecx, dword [ebp - 0x28]
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.00406430
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x60
push eax
call fcn.0043e020
mov word [edi + 0x128], ax
jmp 0x4bd01d
cmp dword [esi + 0x14], 0x10
mov edx, esi
jb 0x4bcfd4
mov edx, dword [esi]
mov ecx, edx
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
lea eax, [ecx + 1]
mov dword [ebp - 0x28], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bcff5
sub ecx, dword [ebp - 0x28]
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.00406430
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x5f
push eax
call fcn.0043e020
mov word [edi + 0x126], ax
mov edx, dword [ebp - 0x48]
add esp, 4
mov byte [ebp - 4], 0x5d
cmp edx, 0x10
jb 0x4bd058
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4bd04e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4be8c1
push edx
push ecx
call fcn.004c824c
add esp, 8
cmp byte [ebp - 0x1c], 0
jne 0x4bd0ee
mov ecx, dword [ebp - 0x20]
add esi, 0x18
mov eax, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x20], ecx
cmp esi, eax
jne 0x4bcee0
cmp ecx, 3
jne 0x4bd0ee
mov esi, dword [ebp - 0x38]
mov byte [ebp - 4], 5
test esi, esi
je 0x4bd534
cmp esi, eax
je 0x4bd0a5
mov edi, eax
mov ecx, esi
call fcn.00403550
add esi, 0x18
cmp esi, edi
jne 0x4bd091
mov esi, dword [ebp - 0x38]
mov edi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x30]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x4bd0df
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4bea03
push ecx
push esi
call fcn.004c824c
add esp, 8
jmp 0x4bd534
cmp byte [edi + 0xd4], 0x65
je 0x4bd322
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4bd322
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bd234
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x62
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x63
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 0x5d
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x64
test eax, eax
je 0x4bd1f2
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bd1f4
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x5d
call fcn.00408370
mov byte [ebp - 4], 0x65
lea eax, [ebp - 0x5c]
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x5c]
call fcn.00403550
mov dword [ebp - 0x2c], esi
lea eax, [ebp - 0x2c]
push 0x582dc0
jmp 0x4be9e9
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x66
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x67
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 0x5d
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x68
test eax, eax
je 0x4bd306
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bd308
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x5d
call fcn.00408370
mov byte [ebp - 4], 0x69
jmp 0x4bd209
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bd422
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x6a
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x6b
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 0x5d
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x6c
test eax, eax
je 0x4bd406
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bd408
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x5d
call fcn.00408370
mov byte [ebp - 4], 0x6d
jmp 0x4bd209
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.990803
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x6e
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x6f
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 0x5d
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x70
test eax, eax
je 0x4bd4e3
push 0xf1e53
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bd4e5
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x5d
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x71
push eax
push 0xdc
push 8
jmp 0x4bd211
movzx eax, word [edi + 0x118]
mov word [edi + 0x12a], ax
movzx eax, word [edi + 0x11c]
mov word [edi + 0x126], ax
movzx eax, word [edi + 0x120]
mov word [edi + 0x128], ax
push 0x56079c
lea ecx, [ebp - 0x5c]
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x72
push eax
push 2
push 3
call fcn.004204a0
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5c]
call fcn.00403550
push 5
call fcn.00421990
push 1
call fcn.0040d2c0
add esp, 8
call fcn.0040d240
xor esi, esi
cmp dword [edi + 0xd0], esi
jl 0x4bd5c0
nop dword [eax]
nop word [eax + eax]
mov byte [edi + 0x14c], 0
mov word [edi + 0xdc], 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
mov ecx, edi
call fcn.004ba4d0
mov dword [ebp - 0x24], eax
test eax, eax
jg 0x4bd5c4
inc esi
cmp esi, dword [edi + 0xd0]
jle 0x4bd590
jmp 0x4bd5c2
xor eax, eax
test eax, eax
push 0x5a
setg byte [ebp - 0xd]
call fcn.00421990
add esp, 4
call fcn.00421740
test al, al
jne 0x4be23d
call fcn.0041f740
test al, al
jne 0x4be23d
mov esi, dword [ebp - 0x24]
mov al, byte [edi + 0xd4]
test esi, esi
jle 0x4bd9da
cmp al, 0x65
je 0x4bd82c
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4bd82c
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bd72b
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x7f
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x80
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x81
test eax, eax
je 0x4bd6fc
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bd6fe
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x82
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x83
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x84
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x85
test eax, eax
je 0x4bd7fd
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bd7ff
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x86
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
push 0x56079c
lea ecx, [ebp - 0x5c]
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x87
push eax
push 3
push 3
call fcn.004204a0
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5c]
call fcn.00403550
cmp byte [edi + 0xec], 0
je 0x4bd878
push 0x56079c
push 0xc9
push 3
call fcn.004204c0
add esp, 0xc
jmp 0x4bd882
push 0x64
call fcn.00421990
add esp, 4
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bd995
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x88
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x89
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x8a
test eax, eax
je 0x4bd966
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bd968
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x8b
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
lea eax, [ebp - 0x5c]
push 1
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push 0x562c78
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
jmp 0x4be1c3
cmp al, 0x65
je 0x4bdc09
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4bdc09
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bdb08
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x8c
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x8d
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x8e
test eax, eax
je 0x4bdad9
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bdadb
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x8f
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x90
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x91
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x92
test eax, eax
je 0x4bdbda
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bdbdc
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x93
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
mov eax, esi
cdq
mov esi, eax
xor esi, edx
sub esi, edx
jne 0x4bdd08
mov esi, 0x3ccb6
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4be14f
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0xa4
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0xa5
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0xa6
test eax, eax
je 0x4be120
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be122
cmp esi, 0x49
jne 0x4bdf14
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4bde24
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x94
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x95
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x96
test eax, eax
je 0x4bddf5
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bddf7
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x97
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.990358
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x98
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x99
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x9a
test eax, eax
je 0x4bdee5
push 0xf1c96
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4bdee7
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x9b
push eax
push 0x49
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
cmp esi, 0x44
jne 0x4bdc1d
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4be030
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x9c
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x9d
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x9e
test eax, eax
je 0x4be001
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be003
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x9f
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.990356
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0xa0
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0xa1
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0xa2
test eax, eax
je 0x4be0f1
push 0xf1c94
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be0f3
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0xa3
push eax
push 0x44
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0xa7
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
cmp byte [edi + 0x14c], 0
jne 0x4be1a0
sub esp, 0x18
mov eax, esp
push esi
push eax
call fcn.0043d8f0
movzx eax, word [edi + 0x15c]
add esp, 8
dec eax
mov ecx, edi
push eax
call fcn.004bb620
mov byte [edi + 0x14c], 1
lea eax, [ebp - 0x74]
push esi
push eax
call fcn.0043d8f0
push eax
mov byte [ebp - 4], 0xa8
call fcn.004216c0
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x74]
call fcn.00403550
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0xa9
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0xaa
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
add esp, 0x104
lea ecx, [ebp - 0x14]
call fcn.00403790
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp - 0xd]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xd4], 0x65
je 0x4be471
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4be471
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4be370
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x74]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x74]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x73
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x74
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x75
test eax, eax
je 0x4be341
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be343
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x76
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x74]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x74]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x77
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x78
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x79
test eax, eax
je 0x4be442
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be444
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x7a
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
lea eax, [ebp - 0x74]
push 0xffffffffffffffff
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x74]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995000
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x7b
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x7c
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
add esp, 0x104
lea ecx, [ebp - 0x5c]
push 0x56079c
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x7d
push eax
push 0x18
push 8
call fcn.004204a0
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5c]
call fcn.00403550
push 0x14
call fcn.004c821c
add esp, 4
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x7e
test eax, eax
je 0x4be572
push 0xf2eb8
mov ecx, eax
call fcn.00417f90
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 5
push 0x582dc0
jmp 0x4be9e9
xor eax, eax
mov byte [ebp - 4], 5
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push 0x582dc0
jmp 0x4be9e9
cmp byte [edi + 0xd4], 0x65
je 0x4be7bc
push dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
call fcn.00404590
test al, al
jne 0x4be7bc
push 1
lea ecx, [ebp - 0x14]
call fcn.00404300
test al, al
jne 0x4be6bb
push str.Enable_ALS_failed
push 0xf30e0
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x74]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x74]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995552
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x2e
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x2f
test eax, eax
je 0x4be68c
push 0xf30e0
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be68e
xor esi, esi
push str.Enable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x30
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
push str.Failed_to_restore_Brightness
push 0x4e20
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x74]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x74]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995547
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x31
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x32
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x33
test eax, eax
je 0x4be78d
push 0xf30db
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be78f
xor esi, esi
push 0x56079c
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x34
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
mov byte [ebp - 4], 5
jmp 0x4bd21c
lea eax, [ebp - 0x74]
push 0xffffffffffffffff
push eax
call fcn.0043d8f0
add esp, 8
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x74]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995000
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 0x35
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 0x36
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
add esp, 0x104
lea ecx, [ebp - 0x5c]
push 0x56079c
call fcn.00408370
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x37
push eax
push 0x18
push 8
call fcn.004204a0
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5c]
call fcn.00403550
push 0x14
call fcn.004c821c
add esp, 4
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x38
test eax, eax
je 0x4be572
push 0xf2eb8
mov ecx, eax
call fcn.00417f90
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 5
push 0x582dc0
jmp 0x4be9e9
call fcn.004f1161
call fcn.004f1161
call fcn.004f1161
call fcn.004f1161
call fcn.004f1161
push str.Disable_ALS_failed
push 0xf30df
push 0xe
call fcn.004204c0
lea eax, [ebp - 0x5c]
push 0
push eax
call fcn.0043d8f0
add esp, 0x14
lea ecx, [edi + 0x190]
push eax
call fcn.00413b90
lea ecx, [ebp - 0x5c]
call fcn.00403550
sub esp, 0x18
mov ecx, esp
push str.995551
call fcn.00408370
movzx eax, word [edi + 0x15c]
mov ecx, edi
push eax
call fcn.004bb620
movzx eax, byte [edi + 0x14e]
push eax
push dword [edi + 0x158]
lea eax, [edi + 0x160]
sub esp, 0xcc
mov ecx, esp
mov dword [ebp - 0x2c], esp
push eax
call fcn.00433e90
sub esp, 0x18
mov byte [ebp - 4], 6
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x567550
call fcn.00408370
sub esp, 0x18
mov byte [ebp - 4], 7
lea eax, [edi + 0xa0]
mov ecx, esp
push eax
call fcn.00402c00
mov byte [ebp - 4], 5
call fcn.004396b0
push 0x14
call fcn.004c821c
add esp, 0x108
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4be9ac
push 0xf30df
mov ecx, eax
call fcn.00417f90
mov esi, eax
jmp 0x4be9ae
xor esi, esi
push str.Disable_ALS_failed
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00408370
mov byte [ebp - 4], 9
lea eax, [ebp - 0x5c]
push eax
push 0x1d
push 7
mov ecx, esi
call fcn.00418280
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00403550
mov dword [ebp - 0x24], esi
lea eax, [ebp - 0x24]
push 0x582dc0
push eax
call fcn.004e4900
call fcn.004f1161
call fcn.004f1161
call fcn.004f1161
call fcn.004f1161
call fcn.004f1161
int3