Function at 0x51e72a
Capabilities:
Hide graphical window

Disassembly:
push 0x88
mov eax, 0x6c855a
call fcn.00648b1c
mov ebx, ecx
mov dword [ebp - 0x1c], ebx
call fcn.0051f59e
mov ecx, eax
call fcn.006c2b83
mov dword [ebx + 0x5c], eax
call fcn.00518160
push 0x406
push dword [ebx + 4]
cmp dword [eax + 0x38], 0
sete al
mov byte [ebx + 0x60], al
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
call fcn.0051f59e
xor edi, edi
mov dword [ebp - 0x20], edi
mov ecx, dword [eax + 8]
sub ecx, dword [eax + 4]
sar ecx, 3
mov dword [ebp - 0x10], ecx
test ecx, ecx
je 0x51e802
push edi
lea eax, [ebp - 0x24]
push eax
call fcn.0051f59e
mov ecx, eax
call fcn.006c2b9b
and dword [ebp - 4], 0
call fcn.0051f59e
push edi
lea ecx, [eax + 4]
call fcn.0052ed93
mov edi, dword [ebp - 0x24]
push edi
push 0
mov ebx, dword [eax]
push 0x143
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push eax
push 0x151
push esi
mov dword [ebp - 0x28], eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0x5c], ebx
jne 0x51e7e7
push 0
push dword [ebp - 0x28]
push 0x14e
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
or dword [ebp - 4], 0xffffffff
lea ecx, [edi - 0x10]
call fcn.00515ed6
mov edi, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x20], edi
cmp edi, dword [ebp - 0x10]
jne 0x51e786
mov ebx, dword [ebp - 0x1c]
xor eax, eax
mov ecx, 0x40a
cmp byte [ebx + 0x60], al
sete al
add eax, ecx
push eax
push 0x40b
push ecx
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_CheckRadioButton]
mov eax, dword [ebx + 4]
sub esp, 0x20
mov dword [ebx + 0x70], eax
mov ecx, esp
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x5340c7
mov esi, 0x8577de
push eax
and dword [ecx], 0
mov dword [ebp - 0x10], esi
call fcn.00520770
add esp, 4
test al, al
jne 0x51e86c
lea edx, [ecx + 8]
test edx, edx
je 0x51e860
mov eax, dword [ebp - 0x14]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov dword [edx + 4], eax
mov eax, 0x74c204
or eax, 1
mov dword [ecx], eax
jmp 0x51e86f
and dword [ecx], 0
sub esp, 0x20
mov ecx, esp
push ecx
push esi
push 0x5340bf
call fcn.0051fd26
push 0x6f3
lea edi, [ebx + 0x64]
push 0x40e
mov ecx, edi
call fcn.005399a8
sub esp, 0x20
mov dword [ebp - 0x14], 0x533f34
mov ecx, esp
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x14]
push eax
and dword [ecx], 0
call fcn.00520770
add esp, 4
test al, al
jne 0x51e8d4
lea edx, [ecx + 8]
test edx, edx
je 0x51e8c8
mov eax, dword [ebp - 0x14]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov dword [edx + 4], eax
mov eax, 0x74c1fc
or eax, 1
mov dword [ecx], eax
jmp 0x51e8d7
and dword [ecx], 0
sub esp, 0x20
mov ecx, esp
push ecx
push esi
push 0x5340bb
call fcn.0051fd26
push 0x616
push 0x408
mov ecx, edi
call fcn.005399a8
call fcn.00517e4a
test al, al
je 0x51e99d
sub esp, 0x20
mov dword [ebp - 0x14], 0x5343bb
mov ecx, esp
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x14]
xor ebx, ebx
push eax
mov dword [ecx], ebx
call fcn.00520770
add esp, 4
test al, al
jne 0x51e947
lea edx, [ecx + 8]
test edx, edx
je 0x51e93b
mov eax, dword [ebp - 0x14]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov dword [edx + 4], eax
mov eax, 0x74c1ec
or eax, 1
mov dword [ecx], eax
jmp 0x51e949
mov dword [ecx], ebx
sub esp, 0x20
mov dword [ebp - 0x14], 0x5345bf
mov ecx, esp
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x14]
push eax
mov dword [ecx], ebx
call fcn.00520770
add esp, 4
test al, al
jne 0x51e988
lea edx, [ecx + 8]
test edx, edx
je 0x51e97c
mov eax, dword [ebp - 0x14]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov dword [edx + 4], eax
mov eax, 0x74c1f4
or eax, 1
mov dword [ecx], eax
jmp 0x51e98a
mov dword [ecx], ebx
push 0x878
push 0x435
mov ecx, edi
call fcn.005399a8
jmp 0x51e9b4
push 0x435
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov esi, dword [edi]
mov ebx, dword [edi + 4]
cmp esi, ebx
je 0x51ea44
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x51ea21
and ecx, 0xfffffffe
lea eax, [esi + 0x48]
push eax
call dword [ecx + 4]
pop ecx
push dword [esi + 0x80]
movzx eax, al
mov dword [esi + 0x8c], eax
push dword [edi + 0xc]
call dword [sym.imp.USER32.dll_GetDlgItem]
xor edx, edx
mov dword [esi + 0x88], eax
cmp dword [esi], edx
jne 0x51ea12
xor ecx, ecx
cmp dword [esi + 0x8c], edx
push edx
setne cl
push ecx
push 0xf1
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x51ea19
mov ecx, esi
call fcn.0051c4cb
add esi, 0x90
jmp 0x51e9b9
push str.call_to_empty_boost::function
lea ecx, [ebp - 0x18]
call fcn.00517192
mov dword [ebp - 0x18], vtable.boost::bad_function_call.0
lea ecx, [ebp - 0x18]
mov dword [ebp - 4], 1
call fcn.0051c498
mov ecx, edi
call fcn.00539a48
call fcn.00518160
mov esi, dword [edi]
mov edi, dword [edi + 4]
mov bl, byte [eax + 0x36]
cmp esi, edi
je 0x51ea84
cmp dword [esi + 0x80], 0x408
jne 0x51ea7c
xor eax, eax
test bl, bl
sete al
push eax
push dword [esi + 0x88]
call dword [sym.imp.USER32.dll_EnableWindow]
add esi, 0x90
jmp 0x51ea58
mov ebx, dword [ebp - 0x1c]
push 0x40f
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
call fcn.005185fb
mov edi, eax
mov dword [ebp - 0x10], edi
call fcn.00518160
mov cl, byte [eax + 0x68]
test cl, cl
je 0x51eadd
mov ecx, edi
call fcn.00519b47
test al, al
je 0x51eadd
push 5
push esi
mov byte [ebx + 0x61], 1
call dword [sym.imp.USER32.dll_ShowWindow]
call fcn.00518160
mov ecx, ebx
cmp dword [eax + 0x10], 0
setne al
mov byte [ebx + 0x62], al
call fcn.0051f471
jmp 0x51eaea
push 0
push esi
mov byte [ebx + 0x61], 0
call dword [sym.imp.USER32.dll_ShowWindow]
xor ecx, ecx
mov dword [ebp - 0x34], fcn.005151d0
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 4], 2
mov dword [ebp - 0x64], ecx
lea esi, [ebp - 0x34]
lea edi, [ebp - 0x44]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x44]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00520770
add esp, 4
test al, al
jne 0x51eb43
lea esi, [ebp - 0x44]
mov eax, 0x74c1b4
lea edi, [ebp - 0x8c]
or eax, 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x94], eax
jmp 0x51eb49
mov dword [ebp - 0x94], ecx
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x94]
call fcn.005201fd
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 5
call fcn.0051f634
push ecx
lea eax, [ebp - 0x74]
mov dword [ebp - 4], 6
mov ecx, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x2c]
add ecx, 0xc
push eax
call fcn.0051f51e
lea ecx, [ebp - 0x28]
call fcn.00520941
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 7
call fcn.0051f634
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.0051f65b
mov ecx, ebx
call fcn.0051ec0c
xor eax, eax
mov byte [ebx + 0x63], 1
inc eax
call fcn.00648ae5
ret 8