Function at 0x416ede
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0xdc
mov eax, dword [0x517490]
xor eax, esp
mov dword [esp + 0xd4], eax
push ebx
push ebp
push esi
push edi
xor eax, eax
mov byte [esp + 0x17], dl
push 0x7e
push eax
mov word [esp + 0x68], ax
mov ebx, ecx
lea eax, [esp + 0x6a]
mov dword [esp + 0x20], ebx
push eax
call fcn.004bea90
add esp, 0xc
push 0x33
push ebx
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebx, eax
mov edx, 0x3bb6295a
push 0xf62bfdbd
mov ecx, 0x6e7502e8
mov dword [0x529bec], ebx
call fcn.0040180b
pop ecx
mov edx, eax
mov ecx, ebx
call fcn.00414850
call fcn.0040a8ad
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
push eax
push 1
push 0x1003
push ebx
call ebp
push 0x10030
xor ecx, ecx
push ecx
push 0x1036
push ebx
call ebp
mov ecx, dword [0x529a90]
lea eax, [esp + 0x60]
push 0x40
push eax
push 0x4a
call fcn.00420e3f
test eax, eax
jne 0x416fa4
movzx edx, word [0x51efe0]
lea eax, [esp + 0x60]
push 0x40
push eax
xor edx, 0x2525
mov ecx, 0x51efe2
call fcn.00412531
pop ecx
pop ecx
push 0x5c8fa5c4
mov edx, 0x91127128
mov ecx, 0xc4d15a8e
call fcn.0040180b
pop ecx
mov edx, eax
xor ecx, ecx
mov esi, edx
mov ax, word [edx]
add edx, 2
cmp ax, cx
jne 0x416fbf
lea edi, [esp + 0x60]
sub edx, esi
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, cx
jne 0x416fd3
mov ecx, edx
lea eax, [esp + 0x60]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push eax
mov ecx, edx
push 0xa
push dword [esp + 0x20]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov ecx, dword [0x529a90]
lea eax, [esp + 0x60]
push 0x40
push eax
push 0x50
call fcn.00420e3f
test eax, eax
jne 0x417036
movzx edx, word [0x51f032]
lea eax, [esp + 0x60]
push 0x40
push eax
xor edx, 0x2525
mov ecx, 0x51f034
call fcn.00412531
pop ecx
pop ecx
push 0xa9e161b5
mov edx, 0x647cb559
mov ecx, 0x31bf9ef1
call fcn.0040180b
pop ecx
mov edx, eax
xor ecx, ecx
mov esi, edx
mov ax, word [edx]
add edx, 2
cmp ax, cx
jne 0x417051
lea edi, [esp + 0x60]
sub edx, esi
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, cx
jne 0x417065
mov ecx, edx
lea eax, [esp + 0x60]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push eax
mov ecx, edx
push 0x11
push dword [esp + 0x20]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov ecx, dword [0x529a90]
lea eax, [esp + 0x60]
push 0x40
push eax
push 0x4c
call fcn.00420e3f
test eax, eax
jne 0x4170c8
movzx edx, word [0x51eff8]
lea eax, [esp + 0x60]
push 0x40
push eax
xor edx, 0x2525
mov ecx, 0x51effa
call fcn.00412531
pop ecx
pop ecx
push 0x4ab2c376
mov edx, 0x872f179a
mov ecx, 0xd2ec3cc8
call fcn.0040180b
pop ecx
mov edx, eax
xor ecx, ecx
mov esi, edx
mov ax, word [edx]
add edx, 2
cmp ax, cx
jne 0x4170e3
lea edi, [esp + 0x60]
sub edx, esi
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, cx
jne 0x4170f7
mov ecx, edx
lea eax, [esp + 0x60]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x1c]
push 0xc
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
cmp byte [esp + 0x17], 0
je 0x41723e
xor eax, eax
lea edi, [esp + 0x49]
xor ecx, ecx
mov byte [esp + 0x48], cl
stosd dword es:[edi], eax
push ecx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [esp + 0x4c]
push eax
call fcn.0040e659
mov edi, eax
test edi, edi
jle 0x4171b0
xor eax, eax
mov ecx, eax
and dword [ecx + 0x522da0], 0xffffefff
add ecx, 4
cmp ecx, 0x54
jb 0x417154
or dword [0x522da0], 0x1000
mov esi, eax
or dword [0x522da8], 0x1000
test edi, edi
jle 0x4171b0
mov al, byte [esp + esi + 0x48]
cmp al, 0x15
jae 0x4171ab
movzx edx, al
mov ecx, esi
and ecx, 0x3f
or ecx, 0x40
shl ecx, 6
mov eax, dword [edx*4 + 0x522da0]
and eax, 0xfffff03f
or ecx, eax
mov dword [edx*4 + 0x522da0], ecx
inc esi
cmp esi, edi
jl 0x417180
push 0xa
xor eax, eax
lea edi, [esp + 0x24]
pop ecx
rep stosd dword es:[edi], eax
lea eax, [esp + 0x60]
mov dword [esp + 0x1c], 0x26
mov dword [esp + 0x28], eax
xor eax, eax
mov esi, eax
test dword [esi*4 + 0x522da0], 0x1000
je 0x417234
push 0x40
lea edx, [esp + 0x64]
mov ecx, esi
call fcn.004163b0
pop ecx
lea eax, [esp + 0x60]
push eax
xor eax, eax
push eax
push 0x1057
push ebx
call ebp
mov edx, dword [esi*4 + 0x522da0]
mov ecx, edx
shr ecx, 0xd
and ecx, 0x1ffff
cmp eax, ecx
cmovg ecx, eax
lea eax, [esp + 0x1c]
push eax
push esi
shr edx, 6
push 0x1061
and edx, 0x3f
mov dword [esi*4 + 0x529ac0], ecx
push ebx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x48], edx
call ebp
inc esi
cmp esi, 0x15
jb 0x4171cf
mov esi, dword [esp + 0x18]
mov eax, dword [0x529a98]
xor ecx, ecx
cmp dword [eax + 0x28], ecx
jne 0x417292
mov ecx, dword [0x529a90]
lea eax, [esp + 0x60]
push 0x40
push eax
push 0x5f
call fcn.00420e3f
test eax, eax
jne 0x417282
movzx edx, word [0x51f1aa]
lea eax, [esp + 0x60]
push 0x40
push eax
xor edx, 0x2525
mov ecx, 0x51f1ac
call fcn.00412531
pop ecx
pop ecx
lea eax, [esp + 0x60]
push eax
push 0x32
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
jmp 0x4172e9
mov edx, ebx
mov ecx, esi
call fcn.00416d45
xor eax, eax
mov edi, eax
mov esi, eax
test dword [esi + 0x522da0], 0x1000
je 0x4172e1
push 0xffff
push edi
push 0x101e
push ebx
call ebp
xor eax, eax
push eax
push edi
push 0x101d
push ebx
call ebp
cmp eax, dword [esi + 0x529ac0]
jge 0x4172e0
movzx eax, word [esi + 0x529ac0]
push eax
push edi
push 0x101e
push ebx
call ebp
inc edi
add esi, 4
cmp esi, 0x54
jb 0x4172a1
mov ecx, dword [esp + 0xe4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004b94b6
add esp, 0xdc
ret