Function at 0x401230
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x27c
push ebx
push ebp
push esi
push edi
mov ecx, 0x1f
xor eax, eax
lea edi, [esp + 0x65]
mov byte [esp + 0x64], 0
rep stosd dword es:[edi], eax
mov ebp, dword [esp + 0x290]
push 0xfffffffffffffffa
stosw word es:[edi], ax
push ebp
mov dword [esp + 0x20], 0
stosb byte es:[edi], al
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov eax, dword [0x43cf34]
test eax, eax
je 0x40129b
push 0
push eax
call fcn.00413ad0
cmp eax, 0x102
jne 0x40129b
push 0x40
push 0x412
push ebp
call fcn.00401100
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x27c
ret 0x10
push str.PolicyNoCheckPatchRotten
call fcn.004072c0
test eax, eax
jne 0x4012d4
mov eax, dword [0x43cfe8]
mov ecx, dword [0x43cfec]
cmp eax, ecx
je 0x4012d4
push 0x10
push 0x415
push ebp
call fcn.00401100
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x27c
ret 0x10
test byte [esp + 0x294], 1
je 0x4012e6
mov dword [esp + 0x18], 1
mov ecx, dword [esp + 0x298]
lea edx, [esp + 0x188]
push ecx
push 0x104
push edx
call fcn.00409a20
push str.PolicyNoCredentials
call fcn.004072c0
test eax, eax
jne 0x401760
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
lea eax, [esp + 0x4c]
push 0x18
push eax
push 0x65
push ebp
call esi
mov ebx, dword [sym.imp.USER32.dll_GetWindowTextA]
push eax
call ebx
lea edi, [esp + 0x4c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 4
jae 0x401369
mov bl, byte [esp + 0x4c]
xor ecx, ecx
test bl, bl
setne cl
add ecx, 0x3ef
push 0x40
push ecx
push ebp
call fcn.00401100
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x27c
ret 0x10
lea edx, [esp + 0x34]
push 0x18
push edx
push 0x66
push ebp
call esi
push eax
call ebx
lea edi, [esp + 0x34]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 4
jae 0x4013b1
mov bl, byte [esp + 0x34]
push 0x40
test bl, bl
setne al
add eax, 0x3f1
push eax
push ebp
call fcn.00401100
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x27c
ret 0x10
push str.PolicyNoSessionPassword
call fcn.004072c0
test eax, eax
je 0x4013d0
push 0x4304a8
push 0x66
push ebp
call esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0
push 0
push 0xf0
push 0x67
push ebp
call esi
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov esi, eax
dec esi
neg esi
sbb esi, esi
inc esi
push esi
push str.CheckSave
call fcn.00407210
push str.CheckSavePassword
mov byte [esp + 0x10c], 0
call fcn.004072c0
test eax, eax
je 0x40143d
push str.ConfigID
call fcn.004072a0
cmp byte [eax], 0
je 0x40143d
push eax
push str.Ai4rei_AN_ROCred_
push 0x430460
lea ecx, [esp + 0x114]
push 0x80
push ecx
call fcn.00409970
add esp, 0x14
test esi, esi
je 0x401476
lea edx, [esp + 0x4c]
push edx
push str.UserName
call fcn.00407180
mov al, byte [esp + 0x108]
test al, al
je 0x40149f
lea eax, [esp + 0x34]
push 2
lea ecx, [esp + 0x50]
push eax
lea edx, [esp + 0x110]
push ecx
push edx
call fcn.004145c0
jmp 0x40149f
push 0
push str.UserName
call fcn.00407180
mov al, byte [esp + 0x108]
test al, al
je 0x40149f
push 0
lea eax, [esp + 0x10c]
push 1
push eax
call dword [0x43a058]
push str.MiscInfo
call fcn.004072c0
test eax, eax
je 0x401571
push ebp
call fcn.004017a0
test al, al
je 0x4016d4
push str.MiscInfo
call fcn.004072c0
test al, 1
je 0x401554
lea ecx, [esp + 0x24]
push 0
push ecx
call fcn.0041cfa0
lea edi, [esp + 0x64]
mov edx, dword [esp + 0x29]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x27]
and edx, 0xff
and eax, 0xff
push edx
mov edx, dword [esp + 0x2a]
and ecx, 0xff
push eax
mov eax, dword [esp + 0x2d]
push ecx
mov ecx, dword [esp + 0x30]
and edx, 0xff
and eax, 0xff
push edx
and ecx, 0xff
push eax
push ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edx, 0x80
sub edx, ecx
lea edi, [esp + 0x7c]
or ecx, 0xffffffff
push str.mac_02X_02X_02X_02X_02X_02X
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
lea eax, [esp + ecx + 0x84]
push eax
call fcn.00409970
add esp, 0x24
lea edi, [esp + 0x64]
or ecx, 0xffffffff
xor eax, eax
mov dl, byte [0x430424]
repne scasb al, byte es:[edi]
mov ecx, dword [str.key]
dec edi
mov dword [edi], ecx
mov byte [edi + 4], dl
push str.HashMD5
call fcn.004072c0
test eax, eax
je 0x401711
push str.HashMD5Salt
call fcn.004072a0
mov ebx, eax
cmp byte [ebx], 0
je 0x4016e3
push str.password
push ebx
call fcn.00426210
add esp, 8
test eax, eax
je 0x4016c7
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x1c], ecx
lea eax, [ecx + 1]
push eax
call fcn.0041db00
mov esi, eax
xor edi, edi
cmp esi, edi
je 0x4016ab
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x1c]
push eax
inc ecx
push edi
push ecx
push esi
push edi
push ebx
mov byte [esp + 0x2b], 0
call fcn.0041f2f0
test al, al
je 0x401681
lea edx, [esp + 0x14]
lea eax, [esp + 0x20]
push edx
mov dword [esp + 0x18], edi
mov dword [esp + 0x24], edi
push eax
lea edi, [esp + 0x3c]
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x24]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str.password
push ecx
lea ecx, [esp + 0x40]
push ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.password
push edx
push esi
call fcn.0041f1a0
test al, al
je 0x401678
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x24]
push eax
push ecx
push edx
call fcn.0041dab0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
push eax
push ecx
call fcn.004099a0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], 0
push eax
call fcn.0041dfb0
mov byte [esp + 0x13], 1
jmp 0x40168e
push 0x10
push 0x3fc
jmp 0x401688
push 0x10
push 0x3fb
push ebp
call fcn.00401100
push esi
call fcn.0041dfb0
mov al, byte [esp + 0x13]
test al, al
jne 0x4016f2
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x27c
ret 0x10
push 0x10
push 0x3fc
push ebp
call fcn.00401100
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x27c
ret 0x10
push 0x10
push 0x3fa
push ebp
call fcn.00401100
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x27c
ret 0x10
lea edx, [esp + 0x24]
lea eax, [esp + 0x34]
push edx
push eax
call fcn.0041da70
lea ecx, [esp + 0x24]
push 0x10
push ecx
lea edx, [esp + 0xec]
push 0x21
push edx
call fcn.00417fc0
lea edx, [esp + 0xe4]
jmp 0x401715
lea edx, [esp + 0x34]
mov eax, dword [esp + 0x29c]
lea ecx, [esp + 0x4c]
push eax
push ecx
lea eax, [esp + 0x6c]
push edx
mov edx, dword [esp + 0x24]
push eax
lea ecx, [esp + 0x198]
push str._t:_s_s__s__s
push ecx
push edx
push ebp
call fcn.00409bf0
add esp, 0x20
mov bl, al
lea eax, [esp + 0x34]
push 0x18
push eax
call fcn.004099a0
pop edi
pop esi
mov al, bl
pop ebp
pop ebx
add esp, 0x27c
ret 0x10
mov ecx, dword [esp + 0x29c]
mov eax, dword [esp + 0x18]
push ecx
lea edx, [esp + 0x18c]
push 0x4303ec
push edx
push eax
push ebp
call fcn.00409bf0
add esp, 0x14
mov bl, al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x27c
ret 0x10