Function at 0x10008e70
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x24
mov eax, dword [ebp + 0xc]
cmp eax, 0x4e
je 0x10008ec0
xor ebx, ebx
cmp eax, 0x110
jne 0x10008eab
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x1c]
mov dword [esp + 4], 8
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.user32.dll_SetWindowLongW]
sub esp, 0xc
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 8]
cmp eax, 0xffffff31
je 0x10008f20
xor ebx, ebx
cmp eax, 0xffffff38
jne 0x10008eab
mov eax, dword [ebp + 8]
mov ebx, 1
mov dword [esp], eax
call dword [sym.imp.user32.dll_GetParent]
sub esp, 4
mov dword [esp + 0xc], 3
mov dword [esp + 8], 0
mov dword [esp + 4], 0x470
mov dword [esp], eax
call dword [sym.imp.user32.dll_PostMessageW]
mov eax, ebx
sub esp, 0x10
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
mov eax, dword [ebp + 8]
mov ebx, dword [sym.imp.user32.dll_GetDlgItem]
mov dword [esp + 4], 0xb63
mov dword [esp], eax
call ebx
mov esi, eax
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp + 4], 0xb64
mov dword [esp], eax
call ebx
mov edi, dword [sym.imp.user32.dll_SendMessageW]
sub esp, 8
mov ebx, eax
mov dword [ebp - 0x14], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xe
mov dword [esp], esi
call edi
sub esp, 0x10
mov dword [ebp - 0x10], eax
mov dword [esp], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xe
call edi
mov ebx, eax
mov eax, dword [ebp + 8]
sub esp, 0x10
mov dword [esp + 4], 8
mov dword [esp], eax
call dword [sym.imp.user32.dll_GetWindowLongW]
mov edx, dword [ebp - 0x10]
mov ecx, eax
sub esp, 8
mov eax, edx
or eax, ebx
jne 0x10008fd0
mov dword [ecx + 0x34], 0
xor ebx, ebx
jmp 0x10008eab
cmp edx, ebx
je 0x10009010
mov edx, dword [ecx + 8]
mov eax, dword [ebp + 8]
mov ebx, 1
call sym._export_password_mismatch.isra.0
mov eax, dword [ebp + 8]
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [sym.imp.user32.dll_SetWindowLongW]
sub esp, 0xc
jmp 0x10008eab
lea eax, [edx + 1]
mov ebx, dword [sym.imp.ucrtbase.dll_malloc]
mov dword [ebp - 0x20], ecx
lea edx, [eax + eax]
mov dword [ebp - 0x18], eax
mov dword [esp], edx
mov dword [ebp - 0x10], edx
call ebx
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x1c], eax
mov dword [esp], edx
call ebx
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x10], eax
test ebx, ebx
je 0x100090ff
test eax, eax
je 0x100090ff
mov ecx, dword [ebp - 0x18]
mov dword [esp + 0xc], ebx
mov dword [esp], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], 0xd
call edi
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
sub esp, 0x10
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 4], 0xd
mov dword [esp], eax
call edi
sub esp, 0x10
mov dword [esp], ebx
mov dword [esp + 4], esi
call dword [sym.imp.kernel32.dll_lstrcmpW]
mov ecx, dword [ebp - 0x20]
sub esp, 8
test eax, eax
mov ebx, eax
jne 0x100090c0
mov eax, dword [ebp - 0x1c]
mov dword [ecx + 0x3c], 1
mov esi, dword [sym.imp.ucrtbase.dll_free]
mov dword [ecx + 0x34], eax
mov eax, dword [ebp - 0x10]
mov dword [esp], eax
call esi
jmp 0x10008eab
mov edx, dword [ecx + 8]
mov eax, dword [ebp + 8]
mov ebx, 1
call sym._export_password_mismatch.isra.0
mov eax, dword [ebp + 8]
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [sym.imp.user32.dll_SetWindowLongW]
sub esp, 0xc
mov eax, dword [ebp - 0x1c]
mov esi, dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], eax
call esi
jmp 0x100090b3
xor ebx, ebx
jmp 0x100090ef