Function at 0x4a4a70
Capabilities:
Get graphical window text
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4f56c4
mov eax, dword fs:[0]
push eax
sub esp, 0xb0
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0xa8], eax
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0xc0]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x18], esi
mov ecx, dword [esi + 4]
mov edx, 0x500a80
push 5
mov dword [esi + 8], 1
mov byte [esi + 0xc], 0
call fcn.004a1c70
xorps xmm0, xmm0
mov dword [esp + 0x8c], 0
movq qword [esp + 0x84], xmm0
push 8
mov dword [esp + 0x88], 0
call fcn.004df9b3
add esp, 4
test eax, eax
jne 0x4a4b13
mov byte [esp + 0x17], al
lea eax, [esp + 0x17]
push 0x51c2c8
push eax
call fcn.004ea58e
xor ecx, ecx
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 3
mov word [eax], cx
push 0x8fd
mov dword [esp + 0xcc], ecx
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [esp + 0x90], eax
lea ecx, [esp + 0x90]
lea eax, [esp + 0x84]
push eax
call fcn.0041ef30
xorps xmm0, xmm0
mov dword [esp + 0xa8], 0
mov edx, 0x411
movq qword [esp + 0xa0], xmm0
lea ecx, [esp + 0xa0]
call fcn.004a1ed0
mov byte [esp + 0xc8], 1
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x4a4bb1
push str.64_bit
lea ecx, [esp + 0xa4]
call fcn.00412a60
mov ebx, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
cmp ebx, esi
jne 0x4a4beb
mov eax, esi
lea ecx, [esp + 0x84]
shr eax, 1
add esi, 0x10
add eax, esi
and eax, 0xfffffff0
dec eax
push eax
call fcn.00412180
mov ebx, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x84]
mov eax, 0x20
mov word [edi + esi*2], ax
inc esi
xor eax, eax
mov dword [esp + 0x88], esi
mov word [edi + esi*2], ax
cmp ebx, esi
jne 0x4a4c3c
mov eax, esi
lea ecx, [esp + 0x84]
shr eax, 1
add esi, 0x10
add eax, esi
and eax, 0xfffffff0
dec eax
push eax
call fcn.00412180
mov ebx, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x84]
mov ecx, dword [esp + 0xa4]
mov eax, 0x28
mov word [edi + esi*2], ax
inc esi
xor eax, eax
mov dword [esp + 0x88], esi
mov word [edi + esi*2], ax
mov eax, ebx
sub eax, esi
cmp ecx, eax
jbe 0x4a4c93
add ecx, esi
mov eax, ecx
add ecx, 0x10
shr eax, 1
add eax, ecx
lea ecx, [esp + 0x84]
and eax, 0xfffffff0
dec eax
push eax
call fcn.00412180
mov ebx, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x84]
mov eax, dword [esp + 0xa4]
lea ecx, [edi + esi*2]
lea eax, [eax*2 + 2]
push eax
push dword [esp + 0xa4]
push ecx
call fcn.004e4930
add esi, dword [esp + 0xb0]
add esp, 0xc
mov dword [esp + 0x88], esi
cmp ebx, esi
jne 0x4a4cef
mov eax, esi
lea ecx, [esp + 0x84]
shr eax, 1
add esi, 0x10
add eax, esi
and eax, 0xfffffff0
dec eax
push eax
call fcn.00412180
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x84]
mov eax, 0x29
xor ecx, ecx
mov word [edi + esi*2], ax
lea eax, [esi + 1]
mov esi, dword [esp + 0x18]
push edi
push 0x906
mov word [edi + eax*2], cx
push dword [esi + 4]
mov dword [esp + 0x94], eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov byte [esp + 0xc8], 0
push dword [esp + 0xa0]
call fcn.004df97b
add esp, 4
mov dword [esp + 0xc8], 0xffffffff
push edi
call fcn.004df97b
add esp, 4
mov dword [esp + 0xb4], 0
xorps xmm0, xmm0
lea ecx, [esp + 0xac]
movq qword [esp + 0xac], xmm0
call fcn.00416d50
mov dword [esp + 0xc8], 2
lea ebx, [esi + 0x14]
mov edi, dword [sym.imp.USER32.dll_CheckDlgButton]
xor eax, eax
mov dword [esi + 0x20], 0x8fd
mov dword [esi + 0x38], 0x906
mov dword [esi + 0x24], 0
mov dword [esi + 0x3c], 0x100
mov dword [esp + 0x90], eax
jmp 0x4a4da8
mov esi, dword [esp + 0x18]
mov byte [ebx + 8], 0
test eax, eax
je 0x4a4dd5
cmp byte [0x523227], 0
jne 0x4a4dd5
push dword [ebx + 0xc]
push dword [esi + 4]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
call esi
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x4a4f06
lea ecx, [esp + 0xac]
push ecx
lea ecx, [ebx - 4]
call fcn.004128e0
cmp dword [esp + 0x90], 0
mov edi, 0x505b10
mov eax, str.FileExtr.actor64.dll
cmovne edi, eax
xor esi, esi
cmp byte [edi], 0
je 0x4a4e08
inc esi
cmp byte [esi + edi], 0
jne 0x4a4e01
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
sub eax, ecx
cmp esi, eax
jbe 0x4a4e2b
add ecx, esi
mov eax, ecx
add ecx, 0x10
shr eax, 1
add eax, ecx
lea ecx, [ebx - 4]
and eax, 0xfffffff0
dec eax
push eax
call fcn.00412180
mov ecx, dword [ebx]
mov eax, dword [ebx - 4]
lea edx, [eax + ecx*2]
xor ecx, ecx
test esi, esi
je 0x4a4e4d
lea esp, [esp]
movzx eax, byte [ecx + edi]
mov word [edx + ecx*2], ax
inc ecx
cmp ecx, esi
jb 0x4a4e40
xor eax, eax
lea ecx, [esp + 0x44]
mov word [edx + esi*2], ax
add dword [ebx], esi
mov esi, dword [ebx - 4]
call fcn.00417b20
push esi
lea ecx, [esp + 0x48]
mov byte [esp + 0xcc], 3
call fcn.00419180
test al, al
je 0x4a4e87
mov eax, dword [esp + 0x64]
shr eax, 4
mov byte [esp + 0x17], 1
test al, 1
je 0x4a4e8c
mov byte [esp + 0x17], 0
mov byte [esp + 0xc8], 2
push dword [esp + 0x6c]
call fcn.004df97b
add esp, 4
cmp byte [esp + 0x17], 0
jne 0x4a4ed8
mov eax, dword [ebx - 4]
xor ecx, ecx
mov esi, dword [esp + 0x18]
mov dword [ebx], 0
mov word [eax], cx
push dword [ebx + 0xc]
push dword [esi + 4]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
call esi
push 0
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov edi, dword [sym.imp.USER32.dll_CheckDlgButton]
jmp 0x4a4f06
mov edx, dword [ebx + 0x10]
lea ecx, [ebx - 4]
call fcn.00489590
mov esi, dword [esp + 0x18]
xor ecx, ecx
mov edi, dword [sym.imp.USER32.dll_CheckDlgButton]
test al, al
mov byte [ebx + 9], al
setne cl
push ecx
push dword [ebx + 0xc]
push dword [esi + 4]
call edi
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
mov eax, dword [esp + 0x90]
add ebx, 0x18
inc eax
mov dword [esp + 0x90], eax
cmp eax, 2
jb 0x4a4da4
lea ecx, [esp + 0xa0]
mov dword [esp + 0xa0], 0
mov word [esp + 0xa4], 0
call fcn.004866d0
mov ebx, dword [esp + 0x18]
xor eax, eax
cmp byte [esp + 0xa0], al
setne al
push eax
push 0x8fe
push dword [ebx + 4]
call edi
xor eax, eax
cmp byte [esp + 0xa2], al
setne al
push eax
push 0x900
push dword [ebx + 4]
call edi
xor eax, eax
cmp byte [esp + 0xa4], al
setne al
push eax
push 0xd66
push dword [ebx + 4]
call edi
push 0x64
push dword [ebx + 4]
call esi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0x24
push 0x24
push 0x1036
push eax
mov dword [ebx + 0x40], eax
call esi
lea eax, [esp + 0x44]
mov dword [esp + 0x44], 0xe
push eax
push 0
push 0x1061
push dword [ebx + 0x40]
mov dword [esp + 0x60], 0x501180
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0xc8
call esi
xor esi, esi
mov dword [esp + 0x90], esi
mov edx, dword [esi*8 + 0x500ab0]
lea ecx, [esp + 0x94]
xorps xmm0, xmm0
mov dword [esp + 0x9c], 0
movq qword [esp + 0x94], xmm0
call fcn.004a1ed0
mov byte [esp + 0xc8], 4
cmp dword [esi*8 + 0x500ab4], 0x80000000
jne 0x4a5031
push str.CRC_SHA
lea ecx, [esp + 0x98]
call fcn.00412a60
mov eax, dword [esi*8 + 0x500ab4]
cmp eax, 0x40
je 0x4a5050
cmp eax, 0x80000000
je 0x4a5050
mov edi, dword [esp + 0x94]
jmp 0x4a50ce
xor esi, esi
inc esi
cmp byte [esi + 0x505b3c], 0
jne 0x4a5052
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x98]
sub eax, edx
cmp esi, eax
jbe 0x4a5094
lea ecx, [edx + esi]
mov eax, ecx
add ecx, 0x10
shr eax, 1
add eax, ecx
lea ecx, [esp + 0x94]
and eax, 0xfffffff0
dec eax
push eax
call fcn.00412180
mov edx, dword [esp + 0x98]
mov edi, dword [esp + 0x94]
xor ecx, ecx
lea ebx, [edi + edx*2]
test esi, esi
je 0x4a50b4
movzx eax, byte [ecx + 0x505b3c]
mov word [ebx + ecx*2], ax
inc ecx
cmp ecx, esi
jb 0x4a50a4
xor eax, eax
add edx, esi
mov word [ebx + esi*2], ax
mov esi, dword [esp + 0x90]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x98], edx
mov eax, dword [esi*8 + 0x500ab0]
sub eax, 0x917
je 0x4a529b
dec eax
je 0x4a50ec
sub eax, 2
jne 0x4a5373
xorps xmm0, xmm0
mov dword [esp + 0x8c], 0
mov edx, 0x911
movq qword [esp + 0x84], xmm0
lea ecx, [esp + 0x84]
call fcn.004a1ed0
mov byte [esp + 0xc8], 7
mov eax, dword [esi*8 + 0x500ab4]
cmp eax, 0x1000
ja 0x4a5154
je 0x4a515b
cmp eax, 0x200
je 0x4a513e
cmp eax, 0x800
jne 0x4a51d1
push 0x50456c
lea ecx, [esp + 0x88]
call fcn.00412c30
jmp 0x4a51d1
cmp eax, 0x2000
jne 0x4a51d1
xor esi, esi
lea ecx, [ecx]
inc esi
cmp byte [esi + str..zip], 0
jne 0x4a5160
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
sub eax, edx
cmp esi, eax
jbe 0x4a51a2
lea ecx, [edx + esi]
mov eax, ecx
add ecx, 0x10
shr eax, 1
add eax, ecx
lea ecx, [esp + 0x84]
and eax, 0xfffffff0
dec eax
push eax
call fcn.00412180
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x84]
xor ecx, ecx
lea ebx, [eax + edx*2]
test esi, esi
je 0x4a51c2
movzx eax, byte [ecx + str..zip]
mov word [ebx + ecx*2], ax
inc ecx
cmp ecx, esi
jb 0x4a51b2
xor eax, eax
add edx, esi
mov word [ebx + esi*2], ax
mov dword [esp + 0x88], edx
lea eax, [esp + 0x84]
push eax
lea edx, [esp + 0x98]
lea ecx, [esp + 0x3c]
call fcn.0049b4b0
mov ebx, eax
lea eax, [esp + 0x94]
mov byte [esp + 0xc8], 8
cmp ebx, eax
je 0x4a5267
mov esi, dword [ebx + 4]
cmp esi, dword [esp + 0x9c]
jbe 0x4a524d
xor ecx, ecx
lea eax, [esi + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004df9b3
add esp, 4
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4a545b
push edi
call fcn.004df97b
mov edi, dword [esp + 0x20]
add esp, 4
mov dword [esp + 0x94], edi
mov dword [esp + 0x9c], esi
lea eax, [esi*2 + 2]
mov dword [esp + 0x98], esi
push eax
push dword [ebx]
push edi
call fcn.004e4930
add esp, 0xc
mov byte [esp + 0xc8], 7
push dword [esp + 0x38]
call fcn.004df97b
add esp, 4
mov byte [esp + 0xc8], 4
push dword [esp + 0x84]
call fcn.004df97b
mov esi, dword [esp + 0x94]
jmp 0x4a536c
mov edx, 0x910
lea ecx, [esp + 0x2c]
call fcn.004a1ed0
push eax
lea edx, [esp + 0x98]
mov byte [esp + 0xcc], 5
lea ecx, [esp + 0x24]
call fcn.0049b4b0
mov ebx, eax
lea eax, [esp + 0x94]
mov byte [esp + 0xc8], 6
cmp ebx, eax
je 0x4a5347
mov esi, dword [ebx + 4]
cmp esi, dword [esp + 0x9c]
jbe 0x4a5326
xor ecx, ecx
lea eax, [esi + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004df9b3
add esp, 4
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4a546f
push edi
call fcn.004df97b
mov edi, dword [esp + 0x20]
add esp, 4
mov dword [esp + 0x94], edi
mov dword [esp + 0x9c], esi
lea eax, [esi*2 + 2]
mov dword [esp + 0x98], esi
push eax
push dword [ebx]
push edi
call fcn.004e4930
mov esi, dword [esp + 0x9c]
add esp, 0xc
mov byte [esp + 0xc8], 5
push dword [esp + 0x20]
call fcn.004df97b
add esp, 4
mov byte [esp + 0xc8], 4
push dword [esp + 0x2c]
call fcn.004df97b
mov ebx, dword [esp + 0x1c]
add esp, 4
lea eax, [esp + 0x44]
mov dword [esp + 0x44], 5
push eax
push 0
push 0x104d
push dword [ebx + 0x40]
mov dword [esp + 0x58], esi
mov dword [esp + 0x74], esi
mov dword [esp + 0x68], edi
mov dword [esp + 0x5c], 0
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [esp + 0xa8]
test dword [esi*8 + 0x500ab4], ecx
mov dword [esp + 0x54], 0xf000
setne cl
xor edx, edx
test cl, cl
lea ecx, [esp + 0x44]
push ecx
setne dl
push eax
inc edx
push 0x102b
push dword [ebx + 0x40]
shl edx, 0xc
mov dword [esp + 0x60], edx
call dword [sym.imp.USER32.dll_SendMessageW]
push edi
mov byte [esp + 0xcc], 2
call fcn.004df97b
inc esi
add esp, 4
mov dword [esp + 0x90], esi
cmp esi, 0xd
jb 0x4a4fe1
push 0xffff
push 0
push 0x101e
push dword [ebx + 0x40]
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 0xc8], 0xffffffff
push dword [esp + 0xac]
mov byte [ebx + 8], 0
call fcn.004df97b
add esp, 4
mov al, 1
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xa8]
xor ecx, esp
call fcn.004df96c
mov esp, ebp
pop ebp
ret
push 0x51c2c8
lea eax, [esp + 0x1b]
mov byte [esp + 0x1b], 0
push eax
call fcn.004ea58e
push 0x51c2c8
lea eax, [esp + 0x1b]
mov byte [esp + 0x1b], 0
push eax
call fcn.004ea58e
int3