Function at 0x10018820
Capabilities:
Get graphical window text

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x920
mov eax, dword [0x1003f6e4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [edx + 4]
mov eax, ecx
push esi
push edi
push 0x76
push eax
mov dword [ebp - 0x920], edx
mov dword [ebp - 0x91c], eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, eax
test edi, edi
je 0x1001892c
push 0x12c
lea eax, [ebp - 0x25c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
push 0xa
lea eax, [ebp - 0x918]
push eax
lea eax, [ebp - 0x25c]
push eax
call dword [sym.imp.msvcrt.dll_wcstol]
mov ecx, dword [ebp - 0x918]
add esp, 0xc
mov esi, eax
movzx edx, word [ecx]
test dx, dx
je 0x100188bf
cmp dx, 0x20
je 0x100188a4
cmp dx, 9
jne 0x100188b9
add ecx, 2
mov dword [ebp - 0x918], ecx
movzx eax, word [ecx]
mov edx, eax
test ax, ax
jne 0x10018898
jmp 0x100188bf
cmp word [ecx], 0
jne 0x100188cb
test esi, esi
jle 0x100188cb
cmp esi, 0xffff
jle 0x1001892c
xor eax, eax
push 0x12c
mov word [ebp - 0x4b4], ax
lea eax, [ebp - 0x4b4]
push eax
push 0xae22
push dword [0x10041578]
call dword [sym.imp.USER32.dll_LoadStringW]
cmp word [ebp - 0x4b4], 0
jne 0x10018ac7
push 0x12c
lea eax, [ebp - 0x4b4]
push eax
push 0xae22
mov esi, dword [0x1004138c]
mov ecx, esi
call dword [0x10042350]
call esi
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
jmp 0x10018ac7
push 0xa4
push dword [ebp - 0x91c]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, eax
test edi, edi
je 0x10018a12
push 0x12c
lea eax, [ebp - 0x25c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
push 0xa
lea eax, [ebp - 0x918]
push eax
lea eax, [ebp - 0x25c]
push eax
call dword [sym.imp.msvcrt.dll_wcstol]
mov ecx, dword [ebp - 0x918]
add esp, 0xc
mov esi, eax
movzx edx, word [ecx]
test dx, dx
je 0x100189aa
cmp dx, 0x20
je 0x1001898f
cmp dx, 9
jne 0x100189a4
add ecx, 2
mov dword [ebp - 0x918], ecx
movzx eax, word [ecx]
mov edx, eax
test ax, ax
jne 0x10018983
jmp 0x100189aa
cmp word [ecx], 0
jne 0x100189c8
test esi, esi
js 0x100189c8
mov eax, esi
and eax, 0x800000ff
jns 0x100189be
dec eax
or eax, 0xffffff00
inc eax
jne 0x100189c8
cmp esi, 0xfffffff
jle 0x10018a12
xor eax, eax
push 0x12c
mov word [ebp - 0x4b4], ax
lea eax, [ebp - 0x4b4]
push eax
push 0xae23
push dword [0x10041578]
call dword [sym.imp.USER32.dll_LoadStringW]
cmp word [ebp - 0x4b4], 0
jne 0x10018ac7
push 0x12c
lea eax, [ebp - 0x4b4]
push eax
push 0xae23
jmp 0x10018910
push 0x81
push dword [ebp - 0x91c]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, eax
test edi, edi
je 0x10018ae6
push 0x12c
lea eax, [ebp - 0x25c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
push 0xa
lea eax, [ebp - 0x918]
push eax
lea eax, [ebp - 0x25c]
push eax
call dword [sym.imp.msvcrt.dll_wcstol]
mov ecx, dword [ebp - 0x918]
add esp, 0xc
mov esi, eax
movzx edx, word [ecx]
test dx, dx
je 0x10018a97
lea esp, [esp]
cmp dx, 0x20
je 0x10018a7c
cmp dx, 9
jne 0x10018a91
add ecx, 2
mov dword [ebp - 0x918], ecx
movzx eax, word [ecx]
mov edx, eax
test ax, ax
jne 0x10018a70
jmp 0x10018a97
cmp word [ecx], 0
jne 0x10018ab2
test esi, esi
jle 0x10018ab2
mov eax, dword [ebp - 0x920]
mov eax, dword [eax + 4]
cmp byte [eax + 0xa8], 0x16
jne 0x10018ae6
cmp esi, 0x10
jle 0x10018ae6
push 0x12c
lea edx, [ebp - 0x4b4]
mov ecx, 0xae24
call fcn.10032910
push edi
call dword [sym.imp.USER32.dll_SetFocus]
push 0xffff0000
push 0
push 0xb1
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x10018bd0
cmp byte [ebx + 0xa8], 0x19
jne 0x10018b0c
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 0x2c]
test ecx, ecx
jne 0x10018b22
test eax, eax
je 0x10018b0c
mov ecx, eax
call fcn.10031af0
test eax, eax
je 0x10018bbb
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1003a750
mov esp, ebp
pop ebp
ret
test eax, eax
je 0x10018bab
push 0x100021ac
push ecx
call dword [sym.imp.msvcrt.dll_wcspbrk]
add esp, 8
test eax, eax
jne 0x10018bab
mov edx, dword [ebx + 0x2c]
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10018b45
sub ecx, esi
sar ecx, 1
lea eax, [ecx - 1]
test eax, eax
je 0x10018b72
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10018b60
sub ecx, esi
sar ecx, 1
dec ecx
jmp 0x10018b74
xor ecx, ecx
movzx eax, word [edx + ecx*2]
cmp eax, 0x5c
je 0x10018b8d
cmp eax, 0x2f
je 0x10018b8d
push dword [ebx + 0x10]
push edx
push 0x100021b4
jmp 0x10018b96
push dword [ebx + 0x10]
push edx
push 0x100021c0
lea eax, [ebp - 0x6bc]
push 0x104
push eax
call dword [sym.imp.msvcrt.dll_swprintf_s]
add esp, 0x14
mov ecx, dword [ebx + 0x10]
call fcn.10031e30
test eax, eax
jne 0x10018b0c
push 0x12c
lea edx, [ebp - 0x4b4]
mov ecx, 0xae13
call fcn.10032910
mov eax, dword [ebp - 0x920]
push 0x12c
mov eax, dword [eax + 4]
mov eax, dword [eax + 0xac]
mov esi, dword [eax + 8]
xor eax, eax
mov word [ebp - 0x25c], ax
lea eax, [ebp - 0x25c]
push eax
push esi
push dword [0x10041578]
call dword [sym.imp.USER32.dll_LoadStringW]
cmp word [ebp - 0x25c], 0
jne 0x10018c32
push 0x12c
lea eax, [ebp - 0x25c]
push eax
push esi
mov esi, dword [0x1004138c]
mov ecx, esi
call dword [0x10042350]
call esi
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
xor eax, eax
push 0x104
mov word [ebp - 0x6bc], ax
lea eax, [ebp - 0x6bc]
push eax
push 0xadd9
push dword [0x10041578]
call dword [sym.imp.USER32.dll_LoadStringW]
cmp word [ebp - 0x6bc], 0
jne 0x10018c8a
mov esi, dword [0x1004138c]
lea eax, [ebp - 0x6bc]
push 0x104
push eax
push 0xadd9
mov ecx, esi
call dword [0x10042350]
call esi
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x6bc]
push eax
lea eax, [ebp - 0x914]
push 0x12c
push eax
call dword [sym.imp.msvcrt.dll_swprintf_s]
add esp, 0x10
lea eax, [ebp - 0x914]
push 0x30
push eax
lea eax, [ebp - 0x4b4]
push eax
push dword [ebp - 0x91c]
call dword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1003a750
mov esp, ebp
pop ebp
ret