Function at 0x4020be
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x458
mov eax, dword [0x41fc78]
and byte [ebp - 1], 0
and byte [ebp - 2], 0
push ebx
push esi
mov esi, ecx
mov dword [ebp - 0x458], eax
push edi
xor eax, eax
mov ecx, 0x81
cmp dword [ebp + 8], eax
lea edi, [ebp - 0x454]
rep stosd dword es:[edi], eax
je 0x402108
lea eax, [ebp - 0x458]
push 0x104
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [ebp - 9]
lea ecx, [ebp - 0x30]
push eax
lea eax, [ebp - 0x458]
push eax
call fcn.00401abd
push str.The_new_and_confirm_password_do_not_match__please_try_again.
lea eax, [ebp - 0x3c]
push 0x1388
push eax
call fcn.004123b9
push str.Please_do_NOT_use_the_default_PIN_as_new_PIN_
lea eax, [ebp - 0x24]
push 0x138f
push eax
call fcn.004123b9
mov eax, dword [esi]
add esp, 0x18
mov ecx, esi
push 1
call dword [eax + 0x24]
test eax, eax
jne 0x402168
lea ecx, [ebp - 0x24]
call fcn.00403592
lea ecx, [ebp - 0x3c]
call fcn.00403592
xor esi, esi
jmp 0x402351
mov ebx, 0x7e5
mov ecx, esi
push ebx
call fcn.0041579d
mov edi, 0x7e1
push eax
push edi
mov ecx, esi
call fcn.0041579d
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x4021e0
push edi
mov ecx, esi
call fcn.004157d4
push ebx
mov ecx, esi
call fcn.004157d4
push edi
mov ecx, esi
call fcn.0041556e
mov ecx, eax
call sub.MFC42u.DLL_CWnd::GetDlgItem
mov ecx, eax
call sub.MFC42u.DLL_CWnd::SetFocus
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x24]
push 0x40040
push dword [ebp - 0x30]
push dword [ebp - 0x3c]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x24]
call fcn.00403592
xor esi, esi
jmp 0x402349
push 0x41b3e8
push edi
mov ecx, esi
call fcn.0041579d
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
push edi
mov ecx, esi
jne 0x402240
call fcn.004157d4
push ebx
mov ecx, esi
call fcn.004157d4
push edi
mov ecx, esi
call fcn.0041556e
mov ecx, eax
call sub.MFC42u.DLL_CWnd::GetDlgItem
mov ecx, eax
call sub.MFC42u.DLL_CWnd::SetFocus
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x24]
push 0x40040
push dword [ebp - 0x30]
push dword [ebp - 0x24]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x402151
call fcn.0041579d
mov dword [ebp - 8], eax
lea eax, [ebp - 9]
push eax
lea ecx, [ebp - 0x18]
call fcn.004035dd
push dword [ebp - 8]
call dword [sym.imp.MSVCRT.dll_wcslen]
pop ecx
mov ecx, dword [ebp - 8]
lea eax, [ecx + eax*2]
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.0040fd06
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x18]
sar eax, 1
cmp eax, dword [esi + 0x98]
jb 0x4023fd
cmp eax, dword [esi + 0x9c]
ja 0x4023fd
and dword [ebp - 8], 0
test eax, eax
jbe 0x402360
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x18]
movzx eax, word [ecx + eax*2]
push eax
call dword [sym.imp.MSVCRT.dll_isdigit]
test eax, eax
pop ecx
je 0x4022b6
mov byte [ebp - 2], 1
jmp 0x4022d0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 8]
movzx eax, word [eax + ecx*2]
push eax
call dword [sym.imp.MSVCRT.dll_isalpha]
test eax, eax
pop ecx
je 0x4022d0
mov byte [ebp - 1], 1
mov eax, dword [ebp - 0x14]
inc dword [ebp - 8]
sub eax, dword [ebp - 0x18]
sar eax, 1
cmp dword [ebp - 8], eax
jb 0x40229a
cmp byte [ebp - 2], 0
je 0x402360
cmp byte [ebp - 1], 0
je 0x402360
lea ecx, [ebp - 0x18]
call fcn.00403592
push 0x7e0
mov ecx, esi
call fcn.0041579d
mov ebx, dword [sym.imp.MSVCRT.dll_wcslen]
push eax
mov dword [ebp + 8], eax
call ebx
pop ecx
mov ecx, dword [ebp + 8]
lea eax, [ecx + eax*2]
push eax
push ecx
lea ecx, [esi + 0x80]
call fcn.00403495
push edi
mov ecx, esi
call fcn.0041579d
mov edi, eax
push edi
call ebx
pop ecx
lea eax, [edi + eax*2]
push eax
push edi
lea ecx, [esi + 0x8c]
call fcn.00403495
lea ecx, [ebp - 0x24]
call fcn.00403592
push 1
pop esi
lea ecx, [ebp - 0x3c]
call fcn.00403592
lea ecx, [ebp - 0x30]
call fcn.00403592
mov eax, esi
jmp 0x4024bc
push edi
mov ecx, esi
call fcn.004157d4
push ebx
mov ecx, esi
call fcn.004157d4
push edi
mov ecx, esi
call fcn.0041556e
mov ecx, eax
call sub.MFC42u.DLL_CWnd::GetDlgItem
mov ecx, eax
call sub.MFC42u.DLL_CWnd::SetFocus
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x24]
push str.For_ensuring_that_the_HUAXIA_DUN_safety._pleases_to_become_the_PIN_code_setup_6_16_to_be_combined_by_the_figure_or_the_letter_of_alphabet_to_classify_big_small_letter
lea eax, [ebp - 0x48]
push 0x1392
push eax
call fcn.004123b9
and word [ebp - 0x250], 0
add esp, 0xc
mov ecx, 0x81
xor eax, eax
push dword [0x41e240]
lea edi, [ebp - 0x24e]
rep stosd dword es:[edi], eax
push dword [0x41e23c]
stosw word es:[edi], ax
push dword [ebp - 0x48]
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x250]
push 0x40040
push dword [ebp - 0x30]
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x48]
jmp 0x402495
push edi
mov ecx, esi
call fcn.004157d4
push ebx
mov ecx, esi
call fcn.004157d4
push edi
mov ecx, esi
call fcn.0041556e
mov ecx, eax
call sub.MFC42u.DLL_CWnd::GetDlgItem
mov ecx, eax
call sub.MFC42u.DLL_CWnd::SetFocus
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x24]
push str.For_ensuring_that_the_HUAXIA_DUN_safety._pleases_to_become_the_PIN_code_setup__d__d_to_be_combined_by_the_figure_or_the_letter_of_alphabet_to_classify_big_small_letter
lea eax, [ebp - 0x48]
push 0x1392
push eax
call fcn.004123b9
and word [ebp - 0x250], 0
add esp, 0xc
mov ecx, 0x81
xor eax, eax
push dword [0x41e240]
lea edi, [ebp - 0x24e]
rep stosd dword es:[edi], eax
push dword [0x41e23c]
stosw word es:[edi], ax
push dword [ebp - 0x48]
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x250]
push 0x40040
push dword [ebp - 0x30]
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxW]
lea ecx, [ebp - 0x48]
call fcn.00403592
lea ecx, [ebp - 0x18]
call fcn.00403592
lea ecx, [ebp - 0x24]
call fcn.00403592
lea ecx, [ebp - 0x3c]
call fcn.00403592
lea ecx, [ebp - 0x30]
call fcn.00403592
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 4