Function at 0x456070
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x418
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov ebx, ecx
lea eax, [ebx + 0x12288]
push eax
push 0x5e7
push esi
mov dword [ebp - 8], ebx
call edi
lea ecx, [ebx + 0x122e4]
push ecx
push 0x5ea
push esi
call edi
mov edi, dword [sym.imp.USER32.dll_SendDlgItemMessageW]
xor eax, eax
cmp dword [ebx + 0xf38b0], eax
mov dword [ebp - 4], eax
jle 0x45615b
mov dword [ebp + 8], eax
mov ebx, dword [ebx + 0xf38bc]
add ebx, dword [ebp + 8]
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x45613c
push 0
push 0
push 0
push 0
call fcn.00428b50
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx]
call eax
add ebx, 0x210
push ebx
push 0
push 0x143
push 0x5e7
push esi
mov dword [ebp - 0xc], eax
call edi
xor ecx, ecx
cmp dword [ebp - 0xc], ecx
setne cl
push ecx
push eax
push 0x151
push 0x5e7
push esi
mov dword [ebp - 0xc], ecx
call edi
push ebx
push 0
push 0x143
push 0x5ea
push esi
call edi
mov ecx, dword [ebp - 0xc]
push ecx
push eax
push 0x151
push 0x5ea
push esi
call edi
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
add dword [ebp + 8], 0x25c
inc eax
cmp eax, dword [edx + 0xf38b0]
mov dword [ebp - 4], eax
mov ebx, edx
jl 0x4560c2
lea eax, [ebp - 0x10]
push eax
push 0
push 0
push 0x455240
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebx + 0xf38a4], eax
xor ebx, ebx
lea ebx, [ebx]
mov ecx, dword [ebx*4 + 0x4d9090]
push ecx
lea edx, [ebp - 0x218]
push 0x4c0818
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
test ebx, ebx
jbe 0x4561b7
lea eax, [ebp - 0x218]
push eax
push 0
push 0x143
push 0x5e8
push esi
call edi
lea ecx, [ebp - 0x218]
push ecx
push 0
push 0x143
push 0x8e7
push esi
call edi
lea edx, [ebp - 0x218]
push edx
push 0
push 0x143
push 0x8ec
push esi
call edi
lea eax, [ebp - 0x218]
push eax
push 0
push 0x143
push 0x8f2
push esi
call edi
inc ebx
cmp ebx, 0x17
jb 0x456180
push 0
push 0
push 0x14b
push 0x629
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call ebx
push 0
push 0
push 0x14b
push 0x8fc
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
push 0
push 0
push 0x14b
push 0x8fd
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call ebx
xor ebx, ebx
nop
mov ecx, dword [ebx + 0x4ec318]
push ecx
push 0
push 0x143
push 0x629
push esi
call edi
mov edx, dword [ebx + 0x4ec318]
push edx
push 0
push 0x143
push 0x8fc
push esi
call edi
mov eax, dword [ebx + 0x4ec318]
push eax
push 0
push 0x143
push 0x8fd
push esi
call edi
add ebx, 4
cmp ebx, 0x44
jb 0x456250
mov ecx, dword [0x50b3a0]
movzx edx, byte [ecx + 0xb89]
mov ebx, dword [sym.imp.USER32.dll_CheckDlgButton]
push edx
push 0x628
push esi
call ebx
mov eax, dword [0x50b3a0]
mov al, byte [eax + 0xb8b]
mov ecx, 0x4d9e88
cmp al, 0x10
jb 0x4562cf
mov ecx, str.None
movzx edx, al
push edx
push ecx
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
lea ecx, [ebp - 0x218]
push ecx
push 0x629
push esi
call fcn.00450b90
mov edx, dword [0x50b3a0]
mov al, byte [edx + 0xb8c]
add esp, 0x18
mov ecx, 0x4d9e88
cmp al, 0x10
jb 0x456310
mov ecx, str.None
movzx eax, al
push eax
push ecx
lea ecx, [ebp - 0x218]
push ecx
call dword [sym.imp.USER32.dll_wsprintfW]
lea edx, [ebp - 0x218]
push edx
push 0x8fc
push esi
call fcn.00450b90
mov eax, dword [0x50b3a0]
mov al, byte [eax + 0xb8a]
add esp, 0x18
mov ecx, 0x4d9e88
cmp al, 0x10
jb 0x456350
mov ecx, str.None
movzx edx, al
push edx
push ecx
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
lea ecx, [ebp - 0x218]
push ecx
push 0x8fd
push esi
call fcn.00450b90
mov edx, dword [0x50b3a0]
movzx eax, byte [edx + 0xee0]
add esp, 0x18
push eax
push 0x61e
push esi
call ebx
mov ecx, dword [0x50b3a0]
mov edx, dword [ecx + 0x120c]
push edx
lea eax, [ebp - 0x218]
push 0x4c0818
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
lea ecx, [ebp - 0x218]
push ecx
push 0x5e8
push esi
call fcn.00450b90
mov edx, dword [0x50b3a0]
mov eax, dword [edx + 0x1210]
push eax
lea ecx, [ebp - 0x218]
push 0x4c0818
push ecx
call dword [sym.imp.USER32.dll_wsprintfW]
lea edx, [ebp - 0x218]
push edx
push 0x8e7
push esi
call fcn.00450b90
mov eax, dword [0x50b3a0]
mov ecx, dword [eax + 0x1214]
push ecx
lea edx, [ebp - 0x218]
push 0x4c0818
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
lea eax, [ebp - 0x218]
push eax
push 0x8ec
push esi
call fcn.00450b90
mov ecx, dword [0x50b3a0]
mov edx, dword [ecx + 0x1218]
add esp, 0x48
push edx
lea eax, [ebp - 0x218]
push 0x4c0818
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
lea ecx, [ebp - 0x218]
push ecx
push 0x8f2
push esi
call fcn.00450b90
add esp, 0x18
mov byte [ebp + 0xb], 4
mov dword [ebp - 4], 0
mov edx, dword [ebp - 4]
mov eax, dword [edx*4 + 0x4ec400]
push eax
push 0
push 0x143
push 0x5e9
push esi
call edi
mov ecx, dword [ebp - 8]
movzx edx, byte [ecx + 0x12283]
mov eax, dword [ebp - 4]
cmp dword [eax*4 + 0x4d9248], edx
jne 0x456494
mov byte [ebp + 0xb], al
inc eax
mov dword [ebp - 4], eax
cmp eax, 0x13
jb 0x456461
movzx eax, byte [ebp + 0xb]
push 0
push eax
push 0x14e
push 0x5e9
push esi
call edi
mov ecx, dword [0x50b3a0]
add ecx, 0xf42
push ecx
push 0x6a1
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0xf2d64]
push 1
push 0x97a
push eax
call ebx
mov ecx, dword [ebp - 8]
call fcn.0044e780
mov ecx, dword [0x50b3a0]
movzx edx, byte [ecx + 0x114a]
push edx
lea eax, [ebp - 0x418]
push 0x4c0818
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
push 0
push 3
push 0xc5
push 0x6a2
push esi
call edi
lea ecx, [ebp - 0x418]
push ecx
push 0x6a2
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
push 0xff0000
push 1
push 0x406
push 0x8ed
push esi
call edi
mov edx, dword [0x50b3a0]
movzx eax, byte [edx + 0x114a]
push eax
push 1
push 0x405
push 0x8ed
push esi
call edi
mov ecx, dword [0x50b3a0]
movzx edx, byte [ecx + 0x1150]
push 0
lea eax, [ebp + 8]
push eax
push 0x4d8fd4
push 0x4ec240
push 6
push 0x923
push esi
mov dword [ebp + 8], edx
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call fcn.00451280
mov ecx, dword [0x50b3a0]
movzx edx, byte [ecx + 0x1151]
add esp, 0x18
and edx, 3
push edx
push 0x6c6
push esi
call ebx
mov eax, dword [0x50b3a0]
movzx ecx, byte [eax + 0xf41]
and ecx, 3
push ecx
push 0x6a3
push esi
call ebx
mov ecx, dword [0x50b3a0]
mov edx, 0x6a1
mov word [ebp - 4], dx
movzx edx, byte [ecx + 0xf41]
mov eax, 0x8f3
mov word [ebp - 2], ax
mov dword [ebp - 0xc], edx
mov dword [ebp + 8], 2
lea edi, [ebp - 4]
movzx eax, word [edi]
dec dword [ebp + 8]
test ax, ax
je 0x45661b
mov ecx, dword [ebp - 0xc]
movzx edx, ax
push ecx
push edx
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
add edi, 2
cmp dword [ebp + 8], 0
jne 0x4565f1
mov edi, dword [ebp - 8]
mov al, byte [edi + 0x12286]
cmp al, 6
jne 0x45662f
mov eax, 0x4b4
jmp 0x45663e
xor ecx, ecx
cmp al, 4
sete cl
add ecx, 0x4b2
mov eax, ecx
push eax
push 0x4b4
push 0x4b2
push esi
call dword [sym.imp.USER32.dll_CheckRadioButton]
mov edx, dword [0x50b3a0]
movzx eax, byte [edx + 0x1127b]
and eax, 3
push eax
push 0x8eb
push esi
call ebx
xor ecx, ecx
cmp dword [edi + 0x1227c], 0x2bc
sete cl
push ecx
push 0x8e6
push esi
call ebx
xor edx, edx
cmp byte [edi + 0x12280], dl
setne dl
push edx
push 0x8e8
push esi
call ebx
mov eax, dword [0x50b3a0]
movzx ecx, byte [eax + 0x1238]
and ecx, 3
push ecx
push 0x4b7
push esi
call ebx
xor edx, edx
mov word [edi + 0xf38a8], dx
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 4