Function at 0x53a260
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5acd60
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x310
push ebx
mov ebx, ecx
push esi
xor esi, esi
mov eax, dword [ebx + 0x740]
push edi
cmp eax, esi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x44], ebx
mov dword [ebp - 4], esi
je 0x53a2af
mov eax, dword [ebx + 0x400]
push esi
push esi
push eax
lea ecx, [ebx + 0x20]
call fcn.00548f10
mov dword [ebx + 0x740], esi
cmp dword [ebx + 0x87c], esi
je 0x53a2c1
mov dword [ebx + 0x86c], 0x7540
cmp dword [ebx + 0x86c], 0x7573
jne 0x53a2f4
push 3
mov ecx, ebx
call fcn.0053ccf0
lea ecx, [ebx + 0x42c]
call fcn.004fa5d0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push esi
mov ecx, ebx
call fcn.0053ccf0
cmp dword [ebx + 0x87c], esi
je 0x53a346
mov ecx, dword [ebx + 0x400]
mov edx, dword [0x66235c]
mov eax, dword [ebx + 0x86c]
push 1
push ecx
push edx
push eax
lea ecx, [ebx + 0x20]
call fcn.005461d0
push str.Cancel_by_user._n
lea ecx, [ebx + 0x42c]
call fcn.004fa4e0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x14], esi
mov word [ebp - 0x18], si
mov eax, dword [ebx + 0x86c]
mov byte [ebp - 4], 1
cmp eax, 0x754c
jg 0x53a87a
je 0x53a866
cmp eax, 0x274c
jg 0x53a6b4
je 0x53a7a9
cmp eax, 0x271d
jg 0x53a614
je 0x53a5f8
cmp eax, 0xffffffff
jg 0x53a543
je 0x53a3c9
cmp eax, 0x80090304
je case.0x53a890.30030
cmp eax, 0x8009030e
je case.0x53a890.30030
cmp eax, 0xfffffffc
je case.0x53a890.30030
cmp dword [ebx + 0x44], 4
jne 0x53b09c
mov eax, dword [0x6625ac]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
cmp dword [ebx + 0x44], 4
jne 0x53a3e4
mov ecx, dword [0x6625ac]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
lea edx, [ebx + 0x430]
push esi
push edx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x20], esi
mov word [ebp - 0x24], si
call fcn.00402610
lea eax, [ebx + 0x8a0]
push esi
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x25
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x38], esi
mov word [ebp - 0x3c], si
call fcn.00402610
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 0x26
cmp eax, esi
mov edi, eax
jne 0x53a42c
lea edi, [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
test esi, esi
jne 0x53a436
lea esi, [ebp - 0x24]
mov eax, dword [0x6625b8]
test eax, eax
je 0x53a52b
test esi, esi
je 0x53a52b
test edi, edi
je 0x53a52b
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x2c], ecx
mov word [ebp - 0x30], cx
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.00402610
push esi
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x27
call fcn.004039c0
push edi
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x28
call fcn.004039c0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x29
call fcn.00401070
mov esi, dword [ebp - 0x2c]
lea ecx, [ebp - 0x7c]
call fcn.00403a70
lea ecx, [ebp - 0x64]
mov edi, eax
call fcn.00403a70
push eax
call fcn.0056aeae
mov edx, eax
push edi
mov dword [ebp + 0xc], edx
call fcn.0056aeae
mov ecx, dword [ebp + 0xc]
add esi, ecx
add eax, esi
lea edx, [eax + eax + 2]
push edx
call fcn.00582ecc
add esp, 0xc
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x53a507
lea ecx, [ebp - 0x64]
call fcn.00403a70
lea ecx, [ebp - 0x7c]
mov edi, eax
call fcn.00403a70
lea ecx, [ebp - 0x34]
mov esi, eax
call fcn.00403a70
push edi
push esi
push eax
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0056aef4
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.0056aeae
add esp, 0x14
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x28
call fcn.00401070
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x27
call fcn.00401070
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x26
call fcn.00401070
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x25
call fcn.00401070
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
jmp 0x53b17d
cmp eax, 5
je 0x53a5e3
cmp eax, 0x17
je 0x53a5cf
cmp eax, 0x70
jne case.0x53a890.30047
mov edx, dword [0x65ca8c]
mov dword [ebp + 0xc], edx
push esi
lea eax, [ebp - 0x48]
push esi
push eax
push 0x400
push 0x70
push esi
push 0x1100
mov byte [ebp - 4], 0x21
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
mov ecx, dword [ebp - 0x48]
lea edx, [ebp + 0xc]
push ecx
push 0x636fa0
push edx
call fcn.0057f8fb
mov eax, dword [ebp - 0x48]
add esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov ecx, dword [ebp + 0xc]
push ecx
lea ecx, [ebx + 0x42c]
call fcn.004fa710
mov edx, dword [0x6625ac]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 1
call fcn.00586b33
jmp 0x53b182
mov eax, dword [0x661ab8]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x661f2c]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x6625a0]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
mov byte [ebx + 0x2d9], 1
jmp 0x53b182
add eax, 0xffffd8da
cmp eax, 0x20
ja case.0x53a890.30047
xor ecx, ecx
mov cl, byte [eax + 0x53bd00]
jmp dword [ecx*4 + 0x53bce0]
mov edx, dword [0x6625ac]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
mov byte [ebx + 0x2d9], 1
jmp 0x53b182
mov eax, dword [0x66259c]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x662598]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x662588]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x662584]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x662580]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
cmp eax, 0x7539
jg 0x53a7be
je case.0x53a890.30030
cmp eax, 0x2af9
jg 0x53a730
je 0x53a714
sub eax, 0x274d
je 0x53a70a
sub eax, 3
je 0x53a6f6
dec eax
jne case.0x53a890.30047
mov edx, dword [0x66258c]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x662594]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x6625a4]
push esi
push ecx
jmp 0x53a71c
mov edx, dword [0x662590]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
mov byte [ebx + 0x2d9], 1
jmp 0x53b182
cmp eax, 0x2afc
jg 0x53a793
je 0x53a743
cmp eax, 0x2afa
jmp 0x53a3a9
mov eax, dword [0x65ca8c]
mov dword [ebp + 0xc], eax
mov ecx, dword [0x661e30]
mov edx, dword [0x66238c]
push ecx
push edx
lea eax, [ebp + 0xc]
push str._s_r_n_r_n_s
push eax
mov byte [ebp - 4], 0x17
call fcn.0057f8fb
mov ecx, dword [ebp + 0xc]
add esp, 0x10
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
lea ecx, [ebp + 0xc]
mov byte [ebx + 0x2d9], 1
mov byte [ebp - 4], 1
call fcn.00586b33
jmp 0x53b182
cmp eax, 0x7532
jl case.0x53a890.30047
cmp eax, 0x7533
jg case.0x53a890.30047
mov edx, dword [0x662340]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
add eax, 0xffff8ac5
cmp eax, 0x10
ja case.0x53a890.30047
xor ecx, ecx
mov cl, byte [eax + 0x53bd40]
jmp dword [ecx*4 + 0x53bd24]
push str.Cancel_by_user._n
lea ecx, [ebx + 0x42c]
call fcn.004fa4e0
push 2
mov ecx, ebx
call fcn.0053ccf0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0
call fcn.00401070
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x66257c]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x6625a8]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x6625b0]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x662514]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x662510]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
add eax, 0xffff8ab3
cmp eax, 0x30
ja case.0x53a890.30047
xor ecx, ecx
mov cl, byte [eax + 0x53bda0]
jmp dword [ecx*4 + 0x53bd54]
cmp dword [ebx + 8], esi
jne 0x53abb5
cmp dword [ebx + 4], esi
jne 0x53abb5
mov al, byte [ebp + 8]
test al, al
je 0x53abb5
mov eax, dword [ebx + 0x428]
cmp eax, esi
je 0x53a8df
mov edx, dword [eax + 0xc]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x53a8df
mov eax, dword [ebx + 0x428]
mov ecx, dword [eax + 0xc]
push ecx
call fcn.0058342f
mov edi, eax
jmp 0x53a8e1
xor edi, edi
mov eax, dword [ebx + 0x44]
cmp eax, 1
jne 0x53a8f0
mov eax, 0x63700c
jmp 0x53a916
cmp eax, 4
jne 0x53a8fc
mov eax, 0x636ff8
jmp 0x53a916
cmp eax, 2
jne 0x53a908
mov eax, 0x637000
jmp 0x53a916
cmp eax, esi
mov eax, 0x636fe8
je 0x53a916
mov eax, 0x636ff0
push eax
lea ecx, [ebp - 0x48]
call fcn.00586ba1
mov eax, dword [ebx + 0x194]
mov edx, dword [ebx + 0x20]
lea esi, [ebx + 0x20]
push edi
push eax
mov eax, dword [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 2
call fcn.004abca0
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 3
call fcn.00582ac6
cmp eax, 1
jne 0x53ab11
mov eax, dword [ebx + 0x14]
test eax, eax
je 0x53a973
push 0
push 0x138a
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xbc]
push ecx
push edx
mov ecx, ebx
mov dword [ebx + 0x14], 0
call fcn.0053cfe0
mov eax, dword [ebx + 0x400]
test eax, eax
je 0x53a9f9
mov ecx, dword [ebx + 0x3c0]
test ecx, ecx
jne 0x53a9ab
push eax
mov ecx, esi
call fcn.0054b0e0
mov edx, dword [ebx + 0x3c0]
test edx, edx
je 0x53a9f9
mov esi, dword [ebp - 0xbc]
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push ecx
push esi
push 1
push eax
push 0x647c30
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebx + 0x3c0]
push 0
push eax
push str.EncPassword
push 0x647c24
push ecx
call fcn.0053df80
add esp, 0x14
mov edx, dword [0x65ca8c]
mov dword [ebp + 8], edx
mov eax, dword [ebx + 0x86c]
mov ecx, dword [0x6625c0]
push eax
push ecx
lea edx, [ebp + 8]
push str._r_n_s_r_ndownlResult___ldsetting_new_login_r_n
push edx
mov byte [ebp - 4], 4
call fcn.0057f8fb
mov eax, dword [ebp + 8]
add esp, 0x10
lea ecx, [ebx + 0x42c]
push eax
call fcn.004fa4e0
mov al, byte [ebp + 0xc]
test al, al
je 0x53aa5e
mov ecx, dword [ebx + 0x18]
test ecx, ecx
je 0x53aa5e
mov eax, dword [ebx + 0x400]
test eax, eax
je 0x53aa5e
push eax
push 0x1431
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
lea ecx, [ebp + 8]
mov byte [ebp - 4], 3
call fcn.00586b33
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0xd
call fcn.00586b33
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0xc
call fcn.00586b33
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0xb
call fcn.00586b33
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0xa
call fcn.00586b33
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 9
call fcn.00586b33
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 8
call fcn.0058e803
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 7
call fcn.0058e869
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 6
call fcn.0058e953
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 5
call fcn.0058e7cb
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 2
call fcn.00582707
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 1
call fcn.00586b33
jmp case.0x53a890.30043
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x16
call fcn.00586b33
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x15
call fcn.00586b33
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x14
call fcn.00586b33
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x13
call fcn.00586b33
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x12
call fcn.00586b33
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x11
call fcn.0058e803
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 0x10
call fcn.0058e869
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0xf
call fcn.0058e953
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 0xe
call fcn.0058e7cb
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 2
call fcn.00582707
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 1
call fcn.00586b33
xor esi, esi
mov ecx, dword [0x6625c0]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x6625bc]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x662374]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x66250c]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x6625c4]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x6623a8]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x662354]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x662300]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x66234c]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [0x6622b8]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x662344]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov ecx, dword [ebx + 0x414]
mov edx, dword [ebx + 0x410]
lea eax, [ebp - 0xa8]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.0053f6b0
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x2c], esi
mov word [ebp - 0x30], si
lea eax, [ebp - 0x34]
mov ecx, ebx
push eax
mov byte [ebp - 4], 0x18
call fcn.00542740
lea ecx, [ebp - 0xa8]
push esi
push ecx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x38], esi
mov word [ebp - 0x3c], si
call fcn.00402610
mov edx, dword [0x65ca8c]
mov dword [ebp - 0x48], edx
mov eax, dword [ebx + 0x414]
mov ecx, dword [ebx + 0x410]
push eax
push ecx
lea edx, [ebp - 0x48]
push str._I64d
push edx
mov byte [ebp - 4], 0x1a
call fcn.0057f8fb
mov eax, dword [ebp - 0x48]
add esp, 0x10
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], esi
push esi
push eax
mov dword [ebp - 0x20], esi
mov word [ebp - 0x24], si
call fcn.00402610
mov ecx, dword [0x662388]
push str._I64d
push ecx
mov byte [ebp - 4], 0x1b
call fcn.0056ab30
add esp, 8
test eax, eax
je 0x53ad53
push 0x636fa0
push str._I64d
jmp 0x53ad75
mov edx, dword [0x662388]
push 0x6390c4
push edx
call fcn.0056ab30
add esp, 8
test eax, eax
je 0x53ad7f
push 0x636fa0
push 0x6390c4
mov ecx, 0x662388
call fcn.0057f31e
mov eax, dword [ebx + 0x54]
cmp eax, esi
je 0x53ad8b
mov dword [ebp + 0xc], eax
jmp 0x53ad91
add ebx, 0x58
mov dword [ebp + 0xc], ebx
mov eax, dword [ebp - 0x28]
cmp eax, esi
mov ebx, eax
jne 0x53ad9d
lea ebx, [ebp - 0x24]
mov eax, dword [ebp - 0x40]
test eax, eax
mov esi, eax
jne 0x53ada9
lea esi, [ebp - 0x3c]
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x53adb3
lea eax, [ebp - 0x30]
mov edi, dword [0x662388]
test edi, edi
je 0x53af43
test eax, eax
je 0x53af43
test esi, esi
je 0x53af43
test ebx, ebx
je 0x53af43
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x53af43
push eax
lea ecx, [ebp - 0x64]
call fcn.004039c0
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x1c
call fcn.004039c0
push ebx
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x1d
call fcn.004039c0
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x98]
push eax
mov byte [ebp - 4], 0x1e
call fcn.004039c0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x1f
call fcn.00401070
push edi
lea ecx, [ebp - 0x7c]
call fcn.004039f0
mov eax, dword [ebp - 0x64]
mov byte [ebp - 4], 0x20
test eax, eax
je 0x53ae42
mov dword [ebp + 0xc], eax
jmp 0x53ae48
lea ecx, [ebp - 0x60]
mov dword [ebp + 0xc], ecx
mov esi, dword [ebp - 0x74]
lea ecx, [ebp - 0x54]
call fcn.00403a70
lea ecx, [ebp - 0x8c]
mov edi, eax
call fcn.00403a70
lea ecx, [ebp - 0x98]
mov ebx, eax
call fcn.00403a70
push eax
call fcn.0056aeae
mov edx, eax
push ebx
mov ebx, edx
call fcn.0056aeae
push edi
add ebx, eax
call fcn.0056aeae
mov edx, dword [ebp + 0xc]
mov edi, eax
push edx
add edi, esi
call fcn.0056aeae
add edi, ebx
add eax, edi
lea eax, [eax + eax + 2]
push eax
call fcn.00582ecc
add esp, 0x14
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x53af01
lea ecx, [ebp - 0x98]
call fcn.00403a70
lea ecx, [ebp - 0x8c]
mov dword [ebp + 0xc], eax
call fcn.00403a70
lea ecx, [ebp - 0x54]
mov ebx, eax
call fcn.00403a70
lea ecx, [ebp - 0x64]
mov edi, eax
call fcn.00403a70
lea ecx, [ebp - 0x7c]
mov esi, eax
call fcn.00403a70
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x1c]
push ecx
push ebx
push edi
push esi
push eax
push edx
call fcn.0056aef4
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0056aeae
add esp, 0x1c
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x1f
call fcn.00401070
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x1e
call fcn.00401070
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x1d
call fcn.00401070
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x1c
call fcn.00401070
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x1b
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x1a
call fcn.00401070
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x19
call fcn.00586b33
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x18
call fcn.00401070
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 1
call fcn.00401070
mov ebx, dword [ebp - 0x44]
jmp 0x53b182
mov ecx, dword [0x6624d4]
push esi
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov edx, dword [0x661b14]
push esi
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
mov eax, dword [0x661a6c]
push esi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp 0x53b182
lea edx, [ebx + 0x430]
push esi
push edx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x38], esi
mov word [ebp - 0x3c], si
call fcn.00402610
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 0x22
cmp eax, esi
jne 0x53afe1
lea eax, [ebp - 0x3c]
mov esi, dword [0x661e24]
xor edi, edi
cmp esi, edi
je 0x53b090
cmp eax, edi
je 0x53b090
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x20], edi
mov word [ebp - 0x24], di
call fcn.00402e20
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x23
call fcn.00401070
push esi
lea ecx, [ebp - 0x54]
call fcn.004039f0
mov esi, dword [ebp - 0x4c]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x24
call fcn.00403a70
push eax
call fcn.0056aeae
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.00582ecc
add esp, 8
cmp eax, edi
mov dword [ebp - 0x1c], eax
je 0x53b078
lea ecx, [ebp - 0x28]
call fcn.00403a70
lea ecx, [ebp - 0x54]
mov esi, eax
call fcn.00403a70
mov ecx, dword [ebp - 0x1c]
push esi
push eax
push ecx
call fcn.0056aef4
mov edx, dword [ebp - 0x1c]
push edx
call fcn.0056aeae
add esp, 0x10
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x23
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x22
call fcn.00401070
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x40]
jmp 0x53b17d
lea ecx, [ebx + 0x430]
push esi
push ecx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x38], esi
mov word [ebp - 0x3c], si
call fcn.00402610
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 0x2a
cmp eax, esi
jne 0x53b0c4
lea eax, [ebp - 0x3c]
mov esi, dword [0x6625b4]
test esi, esi
je 0x53b176
test eax, eax
je 0x53b176
xor ecx, ecx
push eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], ecx
mov word [ebp - 0x24], cx
lea ecx, [ebp - 0x28]
call fcn.00402e20
mov bl, 0x2b
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], bl
call fcn.00401070
push esi
lea ecx, [ebp - 0x54]
call fcn.004039f0
mov esi, dword [ebp - 0x4c]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x2c
call fcn.00403a70
push eax
call fcn.0056aeae
add eax, esi
lea edx, [eax + eax + 2]
push edx
call fcn.00582ecc
add esp, 8
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x53b15c
lea ecx, [ebp - 0x28]
call fcn.00403a70
lea ecx, [ebp - 0x54]
mov esi, eax
call fcn.00403a70
push esi
push eax
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0056aef4
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.0056aeae
add esp, 0x10
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x2a
call fcn.00401070
mov ebx, dword [ebp - 0x44]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x40]
call fcn.00401070
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x53b19c
push 0
push 0x13c7
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebx + 0x86c]
add eax, 0xffff8abe
cmp eax, 0x38
ja case.0x53b1b8.30020
xor edx, edx
mov dl, byte [eax + 0x53bde0]
jmp dword [edx*4 + 0x53bdd4]
mov eax, dword [ebp - 0x44]
add eax, 0x140
mov ecx, dword [eax]
mov edx, dword [eax + 4]
or ecx, edx
je case.0x53b1b8.30020
mov edx, 0x654940
test edx, edx
je 0x53b26a
push edx
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b26a
mov eax, dword [ebp - 0x1c]
xor ebx, ebx
cmp eax, ebx
je 0x53b204
push eax
call fcn.0056aeae
add esp, 4
mov esi, eax
jmp 0x53b206
xor esi, esi
push 0x654940
call fcn.0056aeae
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.00582ecc
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x53b26c
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b243
push eax
push esi
call fcn.0056ae89
push 0x654940
push esi
call fcn.0056ae5f
add esp, 0x10
jmp 0x53b251
push 0x654940
push esi
call fcn.0056ae89
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push esi
mov dword [ebp - 0x1c], esi
call fcn.0056aeae
add esp, 4
mov dword [ebp - 0x14], eax
jmp 0x53b26c
xor ebx, ebx
mov ecx, dword [0x661a6c]
push ebx
push ecx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x24], bx
call fcn.00402610
mov edi, dword [ebp - 0x28]
mov byte [ebp - 4], 0x2d
cmp edi, ebx
jne 0x53b298
lea edi, [ebp - 0x24]
cmp edi, ebx
je 0x53b311
push edi
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b311
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b2b9
push eax
call fcn.0056aeae
add esp, 4
mov esi, eax
jmp 0x53b2bb
xor esi, esi
push edi
call fcn.0056aeae
add eax, esi
lea edx, [eax + eax + 2]
push edx
call fcn.00582ecc
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x53b311
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b2f0
push eax
push esi
call fcn.0056ae89
push edi
push esi
call fcn.0056ae5f
add esp, 0x10
jmp 0x53b2fa
push edi
push esi
call fcn.0056ae89
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push esi
mov dword [ebp - 0x1c], esi
call fcn.0056aeae
add esp, 4
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 1
call fcn.00401070
jmp 0x53b321
xor ebx, ebx
mov esi, dword [ebp - 0x44]
mov cl, byte [esi + 0x172]
test cl, cl
jne 0x53b4a5
mov eax, dword [esi + 0x148]
cmp eax, ebx
jle 0x53b34d
mov edx, dword [esi + 0x14c]
sub edx, eax
cmp edx, 0x3c
jl 0x53b490
mov eax, str._r_n_r_n
test eax, eax
je 0x53b3df
push eax
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b3df
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b37b
push eax
call fcn.0056aeae
add esp, 4
mov esi, eax
jmp 0x53b37d
xor esi, esi
push str._r_n_r_n
call fcn.0056aeae
add eax, esi
lea ecx, [eax + eax + 2]
push ecx
call fcn.00582ecc
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x53b3df
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b3ba
push eax
push esi
call fcn.0056ae89
push str._r_n_r_n
push esi
call fcn.0056ae5f
add esp, 0x10
jmp 0x53b3c8
push str._r_n_r_n
push esi
call fcn.0056ae89
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push esi
mov dword [ebp - 0x1c], esi
call fcn.0056aeae
add esp, 4
mov dword [ebp - 0x14], eax
mov edx, dword [0x661a4c]
push ebx
push edx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x24], bx
call fcn.00402610
mov edi, dword [ebp - 0x28]
mov byte [ebp - 4], 0x31
cmp edi, ebx
jne 0x53b40b
lea edi, [ebp - 0x24]
cmp edi, ebx
je 0x53b484
push edi
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b484
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b42c
push eax
call fcn.0056aeae
add esp, 4
mov esi, eax
jmp 0x53b42e
xor esi, esi
push edi
call fcn.0056aeae
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.00582ecc
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x53b484
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b463
push eax
push esi
call fcn.0056ae89
push edi
push esi
call fcn.0056ae5f
add esp, 0x10
jmp 0x53b46d
push edi
push esi
call fcn.0056ae89
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push esi
mov dword [ebp - 0x1c], esi
call fcn.0056aeae
add esp, 4
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
jmp 0x53b64f
test cl, cl
jne 0x53b4a5
mov ecx, dword [esi + 0x400]
push 1
push ecx
lea ecx, [esi + 0x20]
call fcn.00548c10
mov ecx, dword [esi + 0x414]
lea eax, [esi + 0x410]
cmp ecx, ebx
jl 0x53b4d0
jg 0x53b4bb
cmp dword [eax], ebx
jbe 0x53b4d0
mov edx, dword [0x661a48]
push ebx
push edx
lea ecx, [ebp - 0x1c]
call fcn.00402610
jmp case.0x53b1b8.30020
mov esi, dword [ebp - 0x44]
xor bl, bl
test byte [esi + 0x164], 0x70
je 0x53b4e0
mov bl, 1
xor edi, edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x2c], edi
mov word [ebp - 0x30], di
lea eax, [ebp - 0x34]
mov ecx, esi
push eax
mov byte [ebp - 4], 0x2e
call fcn.00542740
test bl, bl
je 0x53b61c
mov edx, dword [esi + 0xe8]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x53b524
push edx
mov ecx, 0x661968
call fcn.004e83f0
jmp 0x53b532
mov ecx, dword [esi + 0x20]
push ecx
mov ecx, 0x661968
call fcn.004e84b0
mov eax, dword [esi + 0x114]
xor edi, edi
cmp eax, edi
jne 0x53b544
lea eax, [esi + 0x118]
push eax
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b563
mov eax, dword [esi + 0x114]
cmp eax, edi
jne 0x53b56d
lea eax, [esi + 0x118]
jmp 0x53b56d
mov eax, dword [ebp - 0x34]
cmp eax, edi
jne 0x53b56d
lea eax, [ebp - 0x30]
mov esi, dword [0x661b68]
cmp esi, edi
je 0x53b648
cmp eax, edi
je 0x53b648
push eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x38], edi
mov word [ebp - 0x3c], di
call fcn.00402e20
mov bl, 0x2f
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], bl
call fcn.00401070
push esi
lea ecx, [ebp - 0x54]
call fcn.004039f0
mov esi, dword [ebp - 0x4c]
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x30
call fcn.00403a70
push eax
call fcn.0056aeae
add eax, esi
lea edx, [eax + eax + 2]
push edx
call fcn.00582ecc
add esp, 8
cmp eax, edi
mov dword [ebp - 0x1c], eax
je 0x53b603
lea ecx, [ebp - 0x40]
call fcn.00403a70
lea ecx, [ebp - 0x54]
mov esi, eax
call fcn.00403a70
push esi
push eax
mov eax, dword [ebp - 0x1c]
push eax
call fcn.0056aef4
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.0056aeae
add esp, 0x10
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x2e
call fcn.00401070
jmp 0x53b648
mov al, byte [esi + 0x170]
test al, al
je 0x53b639
mov al, byte [0x6615dc]
test al, al
jne 0x53b639
mov edx, dword [0x661b6c]
push edi
push edx
jmp 0x53b640
mov eax, dword [0x661a48]
push edi
push eax
lea ecx, [ebp - 0x1c]
call fcn.00402610
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x34]
call fcn.00401070
mov esi, dword [ebp - 0x44]
xor ebx, ebx
mov eax, dword [esi + 0x42c]
lea edi, [esi + 0x42c]
cmp eax, ebx
mov dword [ebp + 0xc], edi
je 0x53b866
mov ecx, str._r_n_r_n
test ecx, ecx
je 0x53b702
push ecx
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b702
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x53b69e
push eax
call fcn.0056aeae
add esp, 4
mov esi, eax
jmp 0x53b6a0
xor esi, esi
push str._r_n_r_n
call fcn.0056aeae
add eax, esi
lea edx, [eax + eax + 2]
push edx
call fcn.00582ecc
mov esi, eax
add esp, 8
test esi, esi
je 0x53b702
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x53b6dd
push eax
push esi
call fcn.0056ae89
push str._r_n_r_n
push esi
call fcn.0056ae5f
add esp, 0x10
jmp 0x53b6eb
push str._r_n_r_n
push esi
call fcn.0056ae89
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push esi
mov dword [ebp - 0x1c], esi
call fcn.0056aeae
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [0x662044]
xor esi, esi
push esi
push eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x38], esi
mov word [ebp - 0x3c], si
call fcn.00402610
mov edi, dword [ebp - 0x40]
mov bl, 0x32
cmp edi, esi
mov byte [ebp - 4], bl
jne 0x53b730
lea edi, [ebp - 0x3c]
cmp edi, esi
je 0x53b7a5
push edi
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b7a5
mov eax, dword [ebp - 0x1c]
cmp eax, esi
je 0x53b74f
push eax
call fcn.0056aeae
add esp, 4
mov esi, eax
push edi
call fcn.0056aeae
add eax, esi
lea ecx, [eax + eax + 2]
push ecx
call fcn.00582ecc
mov esi, eax
add esp, 8
test esi, esi
je 0x53b7a5
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x53b784
push eax
push esi
call fcn.0056ae89
push edi
push esi
call fcn.0056ae5f
add esp, 0x10
jmp 0x53b78e
push edi
push esi
call fcn.0056ae89
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push esi
mov dword [ebp - 0x1c], esi
call fcn.0056aeae
add esp, 4
mov dword [ebp - 0x14], eax
mov edx, dword [ebp + 0xc]
xor esi, esi
push esi
lea ecx, [ebp - 0x28]
mov eax, dword [edx]
mov dword [ebp - 0x28], esi
push eax
mov dword [ebp - 0x20], esi
mov word [ebp - 0x24], si
call fcn.00402610
mov edi, dword [ebp - 0x28]
mov byte [ebp - 4], 0x33
cmp edi, esi
jne 0x53b7d2
lea edi, [ebp - 0x24]
cmp edi, esi
je 0x53b847
push edi
call fcn.0056aeae
add esp, 4
test eax, eax
je 0x53b847
mov eax, dword [ebp - 0x1c]
cmp eax, esi
je 0x53b7f1
push eax
call fcn.0056aeae
add esp, 4
mov esi, eax
push edi
call fcn.0056aeae
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.00582ecc
mov esi, eax
add esp, 8
test esi, esi
je 0x53b847
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x53b826
push eax
push esi
call fcn.0056ae89
push edi
push esi
call fcn.0056ae5f
add esp, 0x10
jmp 0x53b830
push edi
push esi
call fcn.0056ae89
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.00401070
push esi
mov dword [ebp - 0x1c], esi
call fcn.0056aeae
add esp, 4
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
call fcn.00401070
mov esi, dword [ebp - 0x44]
mov edi, dword [ebp + 0xc]
xor ebx, ebx
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
jne 0x53b870
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x58]
call fcn.00586bf3
mov edx, dword [esi + 0x400]
mov eax, dword [ebp - 0x58]
push ebx
push edx
mov edx, dword [esi + 0x86c]
lea ecx, [esi + 0x20]
push eax
push edx
mov byte [ebp - 4], 0x34
mov dword [ebp + 0xc], ecx
call fcn.005461d0
mov eax, dword [ebp - 0x58]
mov ecx, edi
push eax
call fcn.004fa4e0
mov ecx, dword [esi + 0x86c]
lea edx, [ebp - 0x248]
push ecx
push str._r_ndownlResult___ld_r_n
push edx
call fcn.0056b4da
add esp, 0xc
lea eax, [ebp - 0x248]
mov ecx, edi
push eax
call fcn.004fa4e0
mov eax, dword [esi + 0x86c]
add eax, 0xffff8abe
cmp eax, 0x38
ja case.0x53b8e7.30020
xor ecx, ecx
mov cl, byte [eax + 0x53be28]
jmp dword [ecx*4 + 0x53be1c]
mov edx, dword [esi + 0x140]
mov eax, dword [esi + 0x144]
or edx, eax
je case.0x53b8e7.30020
cmp dword [esi + 8], ebx
jne case.0x53b8e7.30020
cmp dword [esi + 4], ebx
jne case.0x53b8e7.30020
mov al, byte [ebp + 8]
test al, al
je case.0x53b8e7.30020
mov ecx, dword [esi + 0x18]
cmp ecx, ebx
je case.0x53b8e7.30020
mov eax, dword [esi + 0x400]
cmp eax, ebx
je case.0x53b8e7.30020
mov dl, byte [esi + 0x172]
test dl, dl
jne case.0x53b8e7.30020
push eax
push 0x1463
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
lea ecx, [ebp - 0x58]
mov byte [esi + 0x2d9], 0
mov byte [ebp - 4], 1
call fcn.00586b33
jmp case.0x53a890.30043
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x68], ebx
mov word [ebp - 0x6c], bx
lea eax, [ebp - 0x70]
mov ecx, esi
push eax
mov byte [ebp - 4], 0x35
call fcn.00542740
cmp dword [esi + 8], ebx
jne 0x53badd
cmp dword [esi + 4], ebx
jne 0x53badd
mov al, byte [ebp + 8]
test al, al
je 0x53badd
cmp dword [esi + 0x400], ebx
je 0x53badd
cmp dword [esi + 0x86c], 0x7553
jne 0x53b9f5
mov ecx, dword [ebp - 0x70]
cmp ecx, ebx
jne 0x53b9ac
lea ecx, [ebp - 0x6c]
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
jne 0x53b9b6
lea eax, [ebp - 0x18]
push 0x10024
push ecx
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x53badd
mov eax, dword [esi + 0x18]
cmp eax, ebx
je 0x53badd
mov ecx, dword [esi + 0x400]
push ecx
push 0x13bb
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x53badd
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov word [ebp - 0x30], bx
mov esi, dword [ebp + 0x10]
mov byte [ebp - 4], 0x36
cmp esi, ebx
je 0x53ba61
lea ecx, [ebp - 0x34]
call fcn.00401070
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x53ba74
push ebx
push ebx
push 0xffffffffffffffff
push esi
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
cmp eax, ebx
mov dword [ebp - 0x2c], eax
je 0x53ba74
lea edx, [eax + eax + 2]
push edx
call fcn.00582ecc
mov ecx, eax
add esp, 4
cmp ecx, ebx
mov dword [ebp - 0x34], ecx
je 0x53ba77
mov eax, dword [ebp - 0x2c]
push eax
push ecx
push 0xffffffffffffffff
push esi
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x2c], eax
jmp 0x53ba74
mov eax, dword [ebp - 0x70]
cmp eax, ebx
jne 0x53ba6b
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x34]
call fcn.00402e20
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x44]
mov eax, dword [esi + 0x86c]
cmp eax, 0xffffffff
je 0x53ba91
cmp eax, 0x753b
mov eax, 0x30
jne 0x53ba96
mov eax, 0x10
cmp ecx, ebx
mov edx, ecx
jne 0x53ba9f
lea edx, [ebp - 0x30]
mov ecx, dword [ebp - 0x1c]
cmp ecx, ebx
jne 0x53baa9
lea ecx, [ebp - 0x18]
or eax, 0x50000
push eax
push edx
push ecx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp dword [esi + 0x86c], 0x757a
jne 0x53bacc
mov ecx, dword [ebp + 0xc]
call fcn.00546600
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x35
call fcn.00401070
mov esi, dword [ebp - 0x44]
xor ebx, ebx
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x53bca1
cmp eax, 3
jne 0x53bafd
cmp dword [esi + 0x86c], 0x756e
je 0x53bbe4
mov cl, byte [ebp + 8]
test cl, cl
je 0x53bbe4
cmp dword [esi + 0x86c], 0xffffffff
jne 0x53bb2e
mov ecx, dword [0x662358]
push 0x50010
push 0x6370c0
push ecx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x53bca8
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov word [ebp - 0x30], bx
call fcn.00401070
mov edx, 0x6370c0
test edx, edx
je 0x53bb98
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x53bb98
push ebx
push ebx
push 0xffffffffffffffff
push edx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
cmp eax, ebx
mov dword [ebp - 0x2c], eax
je 0x53bb98
lea eax, [eax + eax + 2]
push eax
call fcn.00582ecc
mov ecx, eax
add esp, 4
cmp ecx, ebx
mov dword [ebp - 0x34], ecx
je 0x53bb9b
mov edx, dword [ebp - 0x2c]
push edx
push ecx
push 0xffffffffffffffff
push 0x6370c0
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [esi + 0x86c]
cmp eax, 0xffffffff
je 0x53bbb2
cmp eax, 0x753b
mov eax, 0x30
jne 0x53bbb7
mov eax, 0x10
cmp ecx, ebx
jne 0x53bbbe
lea ecx, [ebp - 0x30]
mov edx, dword [ebp - 0x1c]
cmp edx, ebx
jne 0x53bbc8
lea edx, [ebp - 0x18]
or eax, 0x50000
push eax
push ecx
push edx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x34]
call fcn.00401070
jmp 0x53bca8
cmp eax, 4
jne 0x53bca8
mov al, byte [esi + 0x2d9]
test al, al
je 0x53bca8
lea eax, [ebp + 0x10]
lea ecx, [ebp + 0xc]
push eax
push ecx
mov byte [esi + 0x2d9], 0
mov edx, dword [0x6614e8]
push ebx
push ebx
push str.bHDIShwd
push edx
mov dword [ebp + 0x10], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
je 0x53bca8
mov ecx, dword [0x6614e8]
lea eax, [ebp + 0xc]
push 4
push eax
push 4
push ebx
push str.bHDIShwd
push ecx
mov dword [ebp + 0xc], 1
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call fcn.0058342f
push eax
lea ecx, [ebp - 0x31c]
call fcn.004d2030
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x37
call fcn.00582ac6
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x39
call fcn.004ab8e0
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0x38
call fcn.0058e7cb
lea ecx, [ebp - 0x31c]
mov byte [ebp - 4], 0x35
call fcn.00582707
jmp 0x53bca8
mov byte [esi + 0x2d9], 0
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x34
call fcn.00401070
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 1
call fcn.00586b33
jmp case.0x53a890.30043