Function at 0x402610
Capabilities:
Hide graphical window

Disassembly:
sub esp, 0x12c
xor eax, eax
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x144]
mov ebx, dword [esp + 0x140]
test edi, edi
setne al
add eax, 0x400
push eax
push 0x401
push 0x400
push ebx
call dword [sym.imp.USER32.dll_CheckRadioButton]
mov ebp, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3fe
push ebx
call ebp
mov edx, edi
lea ecx, [esp + 0x18]
neg edx
sbb edx, edx
mov esi, eax
mov eax, dword [0x40e224]
and edx, 2
push 0x20
add edx, 0x22
push ecx
push edx
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
lea ecx, [esp + 0x18]
push ecx
push esi
mov esi, dword [sym.imp.USER32.dll_SetWindowTextA]
call esi
cmp edi, 1
jne 0x40283f
push 0x402
push ebx
call ebp
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push 5
push eax
mov dword [esp + 0x18], eax
call edi
mov eax, dword [0x40e224]
lea edx, [esp + 0x18]
push 0x20
push edx
push 0x23
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x18]
push ecx
push edx
call esi
push 0x3f5
push ebx
call ebp
push 0x40d874
push eax
mov dword [esp + 0x18], eax
call esi
mov eax, dword [esp + 0x10]
push 5
push eax
call edi
push 0x403
push ebx
call ebp
mov edx, dword [0x40e224]
lea ecx, [esp + 0x18]
push 0x20
push ecx
push 0x25
push edx
mov dword [esp + 0x20], eax
call dword [sym.imp.USER32.dll_LoadStringA]
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x18]
push eax
push ecx
call esi
mov edx, dword [esp + 0x10]
push 5
push edx
call edi
push 0x3f6
push ebx
call ebp
push 5
push eax
call edi
mov eax, dword [esp + 0x148]
test eax, eax
je 0x40276c
push 0x40d874
push 0x3f4
push ebx
call ebp
push eax
call esi
push str.33854
push 0x3f5
push ebx
call ebp
push eax
call esi
push 0x40b064
push 0x3f6
push ebx
call ebp
push eax
call esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x12c
ret
push str.Default_Conf_Struct
push ebx
call dword [sym.imp.USER32.dll_GetPropA]
push eax
push 0x3ea
push ebx
mov dword [esp + 0x1c], eax
call ebp
push eax
call esi
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x38]
lea edx, [esp + 0x38]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [esp + 0x10]
or ecx, 0xffffffff
lea edi, [eax + 0x120]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
mov edx, 1
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea eax, [esp + 0x38]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
xor edi, edi
xor ecx, ecx
sub edx, eax
mov al, byte [esp + esi + 0x38]
test al, al
je 0x4027fa
cmp al, 0x2c
jne 0x4027f5
test edi, edi
mov byte [esp + esi + 0x38], 0
jne 0x4027f0
lea edi, [esp + esi + 0x38]
add edi, edx
jmp 0x4027f5
mov ecx, 1
inc esi
test ecx, ecx
je 0x4027d3
lea ecx, [esp + 0x38]
push ecx
push 0x3f4
push ebx
call ebp
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
lea edx, [esp + edi + 0x38]
push edx
push 0x3f5
push ebx
call ebp
mov edi, dword [sym.imp.USER32.dll_SetWindowTextA]
push eax
call edi
lea eax, [esp + esi + 0x38]
push eax
push 0x3f6
push ebx
call ebp
push eax
call edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x12c
ret
push 0
push 0x402
push ebx
call ebp
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push eax
call edi
push 0
push 0x3f5
push ebx
call ebp
push eax
call edi
push 0
push 0x403
push ebx
call ebp
push eax
call edi
push 0x3f6
push ebx
call ebp
push 0
push eax
call edi
mov eax, dword [esp + 0x148]
test eax, eax
jne 0x40293d
push str.Default_Conf_Struct
push ebx
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
mov dword [esp + 0x10], eax
je 0x40292d
lea edx, [eax + 0x120]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x14], edx
je 0x40292d
push 0x40b054
push edx
call fcn.00407240
add esp, 8
test eax, eax
jne 0x40292d
mov ecx, dword [esp + 0x10]
push ecx
push 0x3ea
push ebx
call ebp
push eax
call esi
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x38]
lea edx, [esp + 0x38]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov edi, dword [esp + 0x14]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x38]
push ecx
push 0x3f4
push ebx
call ebp
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x12c
ret
push 0x40f420
push 0x3f4
push ebx
call ebp
push eax
call esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x12c
ret