Function at 0x40e654
Capabilities:
Create thread
Hide graphical window

Disassembly:
push 0xe8c
mov eax, 0x5a13f8
call fcn.0058141a
mov edi, ecx
xor eax, eax
inc eax
mov dword [0x623a50], eax
call fcn.00448f8f
mov edx, str.Use_global_scaling_value
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e68c
mov eax, dword [eax]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push eax
push 0
push 0x143
push dword [edi + 0x450]
call ebx
xor edx, edx
lea ecx, [ebp - 0xa28]
xor esi, esi
inc edx
push esi
push edx
call fcn.00403bb4
mov edx, str.25__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop edx
cmp dword [eax + 0x14], edx
jb 0x40e6ce
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.33__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e707
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.50__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e740
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.66__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e779
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.75__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e7b2
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.100__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e7eb
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.125__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e824
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.133__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e85d
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.150__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e896
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.175__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e8cf
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov edx, str.200__of_original_size
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40e908
mov eax, dword [eax]
push eax
push esi
push 0x143
push dword [edi + 0x450]
call ebx
xor eax, eax
lea ecx, [ebp - 0xa28]
push esi
inc eax
push eax
call fcn.00403bb4
mov ecx, dword [edi + 0x20]
call fcn.004296c3
xor eax, eax
mov dword [0x623a54], esi
mov esi, dword [sym.imp.USER32.dll_SetPropA]
inc eax
push eax
push str.TEST
push dword [edi + 0x328]
mov dword [0x62364c], edi
call esi
lea ecx, [edi + 0x398]
call fcn.0040ae21
lea ecx, [edi + 0x308]
call fcn.0040ad36
push 0
push 0x40
push 0xc5
push dword [edi + 0x218]
call ebx
push 0x4b4
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push dword [0x624008]
mov dword [ebp - 0xe94], eax
push 0x30
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push dword [0x62400c]
push 0x30
push dword [ebp - 0xe94]
call ebx
push 0x42d18b
push 0xfffffffffffffffc
push dword [ebp - 0xe94]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.SD_WNDPROC
push dword [ebp - 0xe94]
call esi
xor eax, eax
inc eax
push eax
push str.GREY
push dword [ebp - 0xe94]
call esi
xor eax, eax
inc eax
push eax
push str.GREY2
push dword [ebp - 0xe94]
call esi
mov esi, dword [ebp - 0xe94]
mov ecx, esi
call fcn.004296c3
mov edx, str.Settings_for
lea ecx, [ebp - 0xa28]
call fcn.00429b1a
and dword [ebp - 4], 0
push 8
pop ecx
cmp dword [eax + 0x14], ecx
jb 0x40ea1e
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xe98]
call fcn.0040820c
push 2
pop eax
mov byte [ebp - 4], al
lea ecx, [ebp - 0xa28]
xor eax, eax
push 0
inc eax
push eax
call fcn.00403bb4
push 0x5ec134
lea ecx, [ebp - 0xe98]
call fcn.00406b53
mov eax, dword [edi + 0x278]
lea ecx, [ebp - 0xe98]
push dword [eax - 0xc]
push eax
call fcn.00406ac5
push dword [ebp - 0xe98]
push esi
call dword [sym.imp.USER32.dll_SetWindowTextW]
push ecx
mov esi, esp
mov dword [ebp - 0xe94], esi
mov eax, dword [edi + 0x278]
sub eax, 0x10
push eax
call fcn.00403e98
pop ecx
add eax, 0x10
lea ecx, [ebp - 0x110]
mov dword [esi], eax
call fcn.0042b29b
mov esi, str.Machines
mov byte [ebp - 0x610], 0
push esi
push 0
mov edx, str.MachineScaleFactor
lea ecx, [ebp - 0x110]
call fcn.00434e91
xor ecx, ecx
cmp eax, 0xfa
push 1
pop edx
cmove ecx, edx
cmp eax, 0x14d
push 2
pop edx
cmove ecx, edx
cmp eax, 0x1f4
push 3
pop edx
cmove ecx, edx
cmp eax, 0x29a
push 4
pop edx
cmove ecx, edx
cmp eax, 0x2ee
push 5
pop edx
cmove ecx, edx
cmp eax, 0x3e8
push 6
pop edx
cmove ecx, edx
cmp eax, 0x4e2
push 7
pop edx
cmove ecx, edx
cmp eax, 0x535
push 8
pop edx
cmove ecx, edx
cmp eax, 0x5dc
push 9
pop edx
cmove ecx, edx
push 0xa
pop edx
cmp eax, 0x6d6
push 0xb
cmove ecx, edx
cmp eax, 0x7d0
pop edx
push 0
cmove ecx, edx
push ecx
push 0x14e
push dword [edi + 0x450]
call ebx
push esi
mov esi, 0x400
lea eax, [ebp - 0x610]
push esi
push eax
push 0x5e66b6
mov edx, str.PassKeyEnc
lea ecx, [ebp - 0x110]
call fcn.00434d68
lea ecx, [ebp - 0xe90]
call fcn.004098b8
push esi
lea eax, [ebp - 0xa10]
push 0
push eax
call fcn.005838b0
pop ecx
pop ecx
lea eax, [ebp - 0xa10]
push eax
lea eax, [ebp - 0x610]
push eax
call fcn.0058b5a0
pop ecx
push eax
lea eax, [ebp - 0x610]
push eax
lea ecx, [ebp - 0xe90]
call fcn.00409f13
push 0xfe
lea eax, [ebp - 0xa10]
push eax
lea eax, [ebp - 0x610]
push eax
call fcn.00583330
add esp, 0xc
mov byte [ebp - 0x512], 0
lea eax, [ebp - 0x610]
push eax
push dword [edi + 0x218]
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov esi, str.Machines
lea eax, [ebp - 0x610]
push esi
push 0xff
push eax
push 0x5e66b6
mov edx, str.Address
lea ecx, [ebp - 0x110]
call fcn.00434d68
lea ecx, [ebp - 0x610]
push ecx
lea ecx, [edi + 0x300]
call fcn.00403e04
xor eax, eax
lea ecx, [ebp - 0x110]
push esi
inc eax
mov edx, str.DynamicIP
push eax
call fcn.00434e91
xor ecx, ecx
lea esi, [edi + 0x168]
inc ecx
cmp eax, ecx
mov eax, dword [esi]
jne 0x40ec42
push 0
jmp 0x40ec43
push ecx
mov ecx, esi
call dword [eax + 0x170]
push str.Machines
push 0
mov edx, str.WakeOnLan
lea ecx, [ebp - 0x110]
call fcn.00434e91
xor edx, edx
lea ecx, [edi + 0x398]
inc edx
cmp eax, edx
mov eax, dword [ecx]
jne 0x40ec74
push edx
jmp 0x40ec76
push 0
call dword [eax + 0x170]
mov eax, dword [edi + 0x300]
xor edx, edx
inc edx
cmp dword [eax - 0xc], edx
jge 0x40eca7
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax + 0x170]
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax + 0x16c]
jmp 0x40ed52
call fcn.0044a3d6
push eax
lea ecx, [ebp - 0xe94]
call fcn.00403f59
mov edx, str.Always_use_the_IP_address__
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xa40]
call fcn.00429b1a
push 8
pop ecx
mov byte [ebp - 4], 4
cmp dword [eax + 0x14], ecx
jb 0x40ecda
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xe94]
call fcn.00406b7c
xor eax, eax
mov byte [ebp - 4], 3
push 0
inc eax
lea ecx, [ebp - 0xa40]
push eax
call fcn.00403bb4
mov eax, dword [edi + 0x300]
lea ecx, [ebp - 0xe94]
push dword [eax - 0xc]
push eax
call fcn.00406ac5
push 0x5ec1b0
lea ecx, [ebp - 0xe94]
call fcn.00406942
mov esi, dword [ebp - 0xe94]
lea ecx, [edi + 0x168]
push esi
call fcn.00446c27
lea ecx, [edi + 0x168]
xor edx, edx
mov eax, dword [ecx]
inc edx
push edx
call dword [eax + 0x16c]
push 2
pop eax
lea ecx, [esi - 0x10]
mov byte [ebp - 4], al
call fcn.00404048
push 0x3f4
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
xor eax, eax
inc eax
push eax
push dword [0x623fe8]
push 0x30
push esi
call ebx
push 0x41170c
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.SD_WNDPROC
push esi
call dword [sym.imp.USER32.dll_SetPropA]
cmp dword [edi + 0xd4], 0
jne 0x40edd0
push 0
lea ecx, [edi + 0x430]
call fcn.00446c78
push 0x466
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
push 0
push eax
call esi
push 0x467
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 5
push eax
call esi
jmp 0x40ede7
push 0x467
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0xfe
push 0xc5
push dword [edi + 0x2a0]
call ebx
push ecx
mov esi, esp
mov dword [ebp - 0xe94], esi
mov eax, dword [edi + 0x278]
sub eax, 0x10
push eax
call fcn.00403e98
pop ecx
add eax, 0x10
lea ecx, [ebp - 0xe94]
mov dword [esi], eax
call fcn.00436741
push eax
lea ecx, [ebp - 0xe98]
mov byte [ebp - 4], 5
call fcn.00406c84
push 2
pop eax
mov byte [ebp - 4], al
mov ecx, dword [ebp - 0xe94]
lea ecx, [ecx - 0x10]
call fcn.00404048
push dword [ebp - 0xe98]
push dword [edi + 0x2a0]
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x3f7
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push dword [0x624000]
mov esi, eax
push 0x30
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x42d18b
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.SD_WNDPROC
push esi
call dword [sym.imp.USER32.dll_SetPropA]
xor eax, eax
inc eax
push eax
push str.GREY
push esi
call dword [sym.imp.USER32.dll_SetPropA]
xor eax, eax
inc eax
push eax
push str.GREY2
push esi
call dword [sym.imp.USER32.dll_SetPropA]
mov ecx, esi
call fcn.004296c3
push 0x465
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push dword [0x624000]
mov esi, eax
push 0x30
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x42d18b
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.SD_WNDPROC
push esi
call dword [sym.imp.USER32.dll_SetPropA]
xor eax, eax
inc eax
push eax
push str.GREY
push esi
call dword [sym.imp.USER32.dll_SetPropA]
push 2
pop eax
push eax
push str.GREY2
push esi
call dword [sym.imp.USER32.dll_SetPropA]
mov ecx, esi
call fcn.004296c3
push 0x466
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push dword [0x624000]
mov esi, eax
push 0x30
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x42d18b
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.SD_WNDPROC
push esi
call dword [sym.imp.USER32.dll_SetPropA]
xor eax, eax
inc eax
push eax
push str.GREY
push esi
call dword [sym.imp.USER32.dll_SetPropA]
push 2
pop eax
push eax
push str.GREY2
push esi
call dword [sym.imp.USER32.dll_SetPropA]
mov ecx, esi
call fcn.004296c3
push 0x467
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push dword [0x624000]
mov esi, eax
push 0x30
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x42d18b
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.SD_WNDPROC
push esi
call dword [sym.imp.USER32.dll_SetPropA]
xor eax, eax
inc eax
push eax
push str.GREY
push esi
call dword [sym.imp.USER32.dll_SetPropA]
push 2
pop eax
push eax
push str.GREY2
push esi
call dword [sym.imp.USER32.dll_SetPropA]
xor eax, eax
inc eax
push eax
push 0x5eb50c
push esi
call dword [sym.imp.USER32.dll_SetPropA]
mov ecx, esi
call fcn.004296c3
push 0x4b6
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push dword [0x624004]
mov esi, eax
push 0x30
push esi
call ebx
push 0x4053e8
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov ebx, dword [sym.imp.USER32.dll_SetPropA]
push eax
push str.SD_WNDPROC
push esi
call ebx
push 0x3ef
push dword [edi + 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push dword [0x624000]
mov esi, eax
push 0x30
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x4053e8
push 0xfffffffffffffffc
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push eax
push str.SD_WNDPROC
push esi
call ebx
xor eax, eax
inc eax
push eax
push str.GREY
push esi
call ebx
lea ecx, [edi + 0xd8]
call fcn.0040ad36
lea ecx, [edi + 0x168]
call fcn.0040ae21
mov esi, 0xff
lea eax, [ebp - 0x210]
push esi
xor ebx, ebx
push ebx
push eax
call fcn.005838b0
add esp, 0xc
lea eax, [ebp - 0x210]
mov edx, str.MACAddress
lea ecx, [ebp - 0x110]
push str.Machines
push esi
push eax
push 0x5e66b6
call fcn.00434d68
call fcn.0044a3d6
push eax
lea ecx, [ebp - 0xe94]
call fcn.00403f59
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xa40]
cmp byte [ebp - 0x210], bl
je 0x40f155
mov edx, str.Enable_Wake_on_LAN_support__MAC_:
call fcn.00429b1a
push 8
pop ecx
mov byte [ebp - 4], 7
cmp dword [eax + 0x14], ecx
jb 0x40f0ff
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xe94]
call fcn.00406b7c
xor eax, eax
mov byte [ebp - 4], 6
push ebx
inc eax
lea ecx, [ebp - 0xa40]
push eax
call fcn.00403bb4
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0xe94]
call fcn.00406942
push 0x5ecb50
lea ecx, [ebp - 0xe94]
call fcn.00406b53
lea eax, [ebp - 0x210]
push eax
lea ecx, [edi + 0x428]
call fcn.00403e04
jmp 0x40f19b
mov edx, str.Enable_Wake_on_LAN_support___Looking_up_MAC_address...
call fcn.00429b1a
push 8
pop ecx
mov byte [ebp - 4], cl
cmp dword [eax + 0x14], ecx
jb 0x40f16c
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xe94]
call fcn.00406b7c
xor eax, eax
mov byte [ebp - 4], 6
push ebx
inc eax
lea ecx, [ebp - 0xa40]
push eax
call fcn.00403bb4
lea ecx, [edi + 0x398]
mov eax, dword [ecx]
push ebx
call dword [eax + 0x16c]
mov ecx, dword [0x62364c]
mov esi, dword [ebp - 0xe94]
push esi
lea ecx, [ecx + 0x398]
call fcn.00446c27
lea ecx, [esi - 0x10]
call fcn.00404048
push ebx
push ebx
push 0x40deda
call fcn.0058b1d2
mov ecx, dword [ebp - 0xe98]
add esp, 0xc
add ecx, 0xfffffff0
call fcn.00404048
xor eax, eax
inc eax
call fcn.005813c4
ret