Function at 0x34b375aa0
Capabilities:
Get graphical window text

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x868
mov r12, rcx
cmp edx, 0x110
je 0x34b375e60
cmp edx, 0x111
je 0x34b375bc0
cmp edx, 0x4e
je 0x34b375af0
xor eax, eax
add rsp, 0x868
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [r9 + 0x10]
cmp eax, 0xffffff32
je 0x34b375ee0
cmp eax, 0xffffff38
je 0x34b375eb0
cmp eax, 0xffffff31
jne 0x34b375ad3
mov edx, 0xb5d
call qword [sym.imp.user32.dll_GetDlgItem]
xor r9d, r9d
xor r8d, r8d
mov edx, 0xe
mov rcx, rax
mov r14, qword [sym.imp.user32.dll_SendMessageW]
mov r13, rax
call r14
mov edx, 0x10
mov rcx, r12
mov rbx, rax
call qword [sym.imp.user32.dll_GetWindowLongPtrW]
mov rdi, rax
test ebx, ebx
jne 0x34b375f10
mov rsi, qword [rax + 0x10]
mov rbx, qword [sym.imp.user32.dll_LoadStringW]
test rsi, rsi
je 0x34b376167
lea r13, [rsp + 0x460]
mov r9d, 0x200
mov edx, 0x420
mov rcx, qword [0x34b393008]
mov r8, r13
call rbx
mov r9d, 0x10
mov r8, rsi
mov rdx, r13
mov rcx, r12
call qword [sym.imp.user32.dll_MessageBoxW]
mov r8d, 1
xor edx, edx
mov rcx, r12
call qword [sym.imp.user32.dll_SetWindowLongPtrW]
mov eax, 1
jmp 0x34b375ad5
cmp r8, 0xb5e
jne 0x34b375ad3
mov edx, 0x10
lea r13, [rsp + 0x60]
call qword [sym.imp.user32.dll_GetWindowLongPtrW]
mov rdi, r13
mov ecx, 0x13
mov rdx, rax
xor eax, eax
rep stosq qword [rdi], rax
mov dword [rsp + 0x60], 0x98
mov qword [rsp + 0x68], r12
mov eax, dword [rdx + 0x4c]
mov ecx, dword [rdx + 0x28]
cmp eax, 3
je 0x34b376120
mov edx, 0x4b7
lea r14, str..cer
cmp eax, 4
je 0x34b375c70
mov edx, 0x4bb
lea r14, str..pfx
cmp eax, 2
je 0x34b375c70
cmp ecx, 3
je 0x34b3763df
mov edx, 0x4bc
lea r14, [0x34b385870]
cmp ecx, 4
je 0x34b375c70
xor edx, edx
lea r14, str..cer
lea rax, [0x34b3858a0]
cmp ecx, 2
sete dl
cmove r14, rax
lea edx, [rdx + rdx*2 + 0x4b6]
nop word cs:[rax + rax]
mov rcx, qword [0x34b393008]
xor r9d, r9d
lea r8, [rsp + 0x58]
mov rbp, r14
mov rbx, qword [sym.imp.user32.dll_LoadStringW]
call rbx
movsxd r15, eax
nop
add rbp, 2
cmp word [rbp], 0
jne 0x34b375c90
lea rdi, [rsp + 0x460]
mov edx, 0x41f
sub rbp, r14
xor r9d, r9d
mov rcx, qword [0x34b393008]
mov r8, rdi
lea rsi, [0x34b385950]
sar rbp, 1
call rbx
mov edx, 0x2e
movsxd rbx, eax
mov rax, rsi
jmp 0x34b375cdc
movzx edx, word [rax + 2]
add rax, 2
test dx, dx
jne 0x34b375cd8
lea r8d, [r15 + rbp + 6]
sub rax, rsi
add r8d, ebx
sar rax, 1
add eax, r8d
movsxd r8, eax
mov rdx, qword gs:[0x30]
mov rax, qword [rdx + 0x60]
add r8, r8
xor edx, edx
mov rcx, qword [rax + 0x30]
call qword [sym.imp.kernel32.dll_HeapAlloc]
mov rbp, rax
test rax, rax
je 0x34b375e06
add r15, r15
mov rdx, qword [rsp + 0x58]
mov rcx, rax
mov r8, r15
call sym.memcpy
lea r8, [rbp + r15]
xor r9d, r9d
xor eax, eax
mov word [r8], r9w
nop word [rax + rax]
movzx edx, word [r14 + rax]
mov word [r8 + rax + 2], dx
add rax, 2
test dx, dx
jne 0x34b375d48
cmp word [r14], 0
je 0x34b3761d7
mov rax, r14
nop word [rax + rax]
add rax, 2
cmp word [rax], 0
jne 0x34b375d70
sub rax, r14
sar rax, 1
inc eax
cdqe
add rax, rax
mov rdx, qword [rsp + 0x460]
add rbx, rbx
lea rcx, [r8 + rax + 2]
mov r8, rbx
call sym.memcpy
xor ecx, ecx
lea rdx, [0x34b385950]
add rbx, rax
lea r8, [rbx + 2]
mov word [rbx], cx
mov ecx, 0x2a
mov rax, r8
jmp 0x34b375dc3
movzx ecx, word [rdx]
add rax, 2
add rdx, 2
mov word [rax - 2], cx
test cx, cx
jne 0x34b375dc0
mov edx, 0x2e
lea rax, [0x34b385950]
jmp 0x34b375dec
movzx edx, word [rax + 2]
add rax, 2
test dx, dx
jne 0x34b375de8
sub rax, rsi
xor edx, edx
sar rax, 1
inc eax
cdqe
mov word [r8 + rax*2], dx
xor eax, eax
mov qword [rsp + 0x78], rbp
mov rcx, r13
mov qword [rsp + 0x90], rdi
mov dword [rsp + 0x98], 0x104
mov word [rsp + 0x460], ax
call qword [sym.imp.comdlg32.dll_GetSaveFileNameW]
test eax, eax
jne 0x34b376138
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov r8, qword [rsp + 0x78]
xor edx, edx
mov rcx, qword [rax + 0x30]
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x34b375ad3
mov rbx, qword [r9 + 0x30]
mov edx, 0x10
mov r8, rbx
call qword [sym.imp.user32.dll_SetWindowLongPtrW]
mov rbx, qword [rbx + 0x20]
test rbx, rbx
je 0x34b375ad3
mov edx, 0xb5d
mov rcx, r12
call qword [sym.imp.user32.dll_GetDlgItem]
mov r9, rbx
xor r8d, r8d
mov edx, 0xc
mov rcx, rax
call qword [sym.imp.user32.dll_SendMessageW]
xor eax, eax
jmp 0x34b375ad5
call qword [sym.imp.user32.dll_GetParent]
mov r9d, 3
xor r8d, r8d
mov edx, 0x470
mov rcx, rax
call qword [sym.imp.user32.dll_PostMessageW]
mov eax, 1
jmp 0x34b375ad5
mov edx, 0x10
call qword [sym.imp.user32.dll_GetWindowLongPtrW]
cmp dword [rax + 0x4c], 2
je 0x34b375ad3
mov r8d, 0x74
xor edx, edx
mov rcx, r12
call qword [sym.imp.user32.dll_SetWindowLongPtrW]
mov eax, 1
jmp 0x34b375ad5
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
inc ebx
mov rsi, qword [sym.imp.kernel32.dll_HeapAlloc]
xor edx, edx
lea r8, [rbx + rbx]
mov rcx, qword [rax + 0x30]
call rsi
mov rbp, rax
test rax, rax
je 0x34b375ad3
mov r8, rbx
mov r9, rax
mov edx, 0xd
mov rcx, r13
call r14
mov eax, dword [rdi + 0x4c]
lea rbx, [0x34b385470]
cmp eax, 2
je 0x34b375f9a
lea rbx, [0x34b385480]
cmp eax, 3
je 0x34b375f9a
mov eax, dword [rdi + 0x28]
lea rbx, [0x34b385460]
cmp eax, 3
je 0x34b375f9a
lea rbx, [0x34b385440]
cmp eax, 4
je 0x34b375f9a
cmp eax, 2
lea rbx, [0x34b385430]
lea rax, str..ctl
cmove rbx, rax
mov rcx, rbp
mov edx, 0x2e
call qword [sym.imp.ucrtbase.dll_wcsrchr]
mov rcx, rax
test rax, rax
je 0x34b375fc1
mov rdx, rbx
call qword [sym.imp.ucrtbase.dll__wcsicmp]
test eax, eax
je 0x34b376059
cmp word [rbp], 0
mov rax, rbp
je 0x34b376414
nop
add rax, 2
cmp word [rax], 0
jne 0x34b375fd0
sub rax, rbp
sar rax, 1
inc eax
cmp word [rbx], 0
je 0x34b376002
mov rdx, rbx
nop dword [rax + rax]
add rdx, 2
cmp word [rdx], 0
jne 0x34b375ff0
sub rdx, rbx
sar rdx, 1
add eax, edx
mov rdx, qword gs:[0x30]
mov rdx, qword [rdx + 0x60]
cdqe
mov r8, rbp
lea r9, [rax + rax]
mov rcx, qword [rdx + 0x30]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapReAlloc]
mov rbp, rax
test rax, rax
je 0x34b376059
cmp word [rax], 0
mov rdx, rax
je 0x34b376042
nop dword [rax]
add rdx, 2
cmp word [rdx], 0
jne 0x34b376038
xor eax, eax
nop dword [rax]
movzx ecx, word [rbx + rax]
mov word [rdx + rax], cx
add rax, 2
test cx, cx
jne 0x34b376048
mov qword [rsp + 0x30], 0
xor r9d, r9d
mov rcx, rbp
mov r15, qword [sym.imp.kernel32.dll_CreateFileW]
mov dword [rsp + 0x28], 0
mov r8d, 3
mov edx, 0x40000000
mov dword [rsp + 0x20], 3
call r15
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x34b3761e1
mov r14, qword [rdi + 0x10]
mov rbx, qword [sym.imp.user32.dll_LoadStringW]
test r14, r14
je 0x34b3763f0
lea r10, [rsp + 0x60]
mov r9d, 0x200
mov edx, 0x4b5
mov rcx, qword [0x34b393008]
mov r8, r10
mov qword [rsp + 0x48], r10
call rbx
mov r10, qword [rsp + 0x48]
mov rcx, r12
mov r9d, 4
mov r8, r14
mov rdx, r10
call qword [sym.imp.user32.dll_MessageBoxW]
mov rcx, r13
cmp eax, 6
je 0x34b376188
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rbx, qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov r8, rbp
xor edx, edx
mov rcx, qword [rax + 0x30]
call rbx
jmp 0x34b375b9b
mov edx, 0x4ba
lea r14, str..p7b
jmp 0x34b375c70
mov rbx, qword [rsp + 0x90]
mov rcx, r12
mov edx, 0xb5d
call qword [sym.imp.user32.dll_GetDlgItem]
xor r8d, r8d
mov edx, 0xc
mov rcx, rax
mov r9, rbx
call qword [sym.imp.user32.dll_SendMessageW]
jmp 0x34b375e39
lea rsi, [rsp + 0x60]
mov r9d, 0x200
mov edx, 0x4b0
mov rcx, qword [0x34b393008]
mov r8, rsi
call rbx
jmp 0x34b375b67
call qword [sym.imp.kernel32.dll_CloseHandle]
mov eax, 2
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov r8d, 3
mov rcx, rbp
mov qword [rsp + 0x30], 0
mov edx, 0x40000000
mov dword [rsp + 0x28], 0
call r15
cmp rax, 0xffffffffffffffff
je 0x34b3761e8
mov qword [rdi + 0x88], rax
xor eax, eax
mov qword [rdi + 0x80], rbp
jmp 0x34b375ad5
mov eax, 2
jmp 0x34b375d87
mov eax, 1
jmp 0x34b376193
mov r13, qword [rdi + 0x10]
mov rbx, qword [sym.imp.user32.dll_LoadStringW]
test r13, r13
je 0x34b37641e
lea rdi, [rsp + 0x460]
mov r9d, 0x200
mov edx, 0x422
mov rcx, qword [0x34b393008]
mov r8, rdi
call rbx
xor r9d, r9d
xor edx, edx
mov ecx, 0x1100
mov rax, qword gs:[0x30]
mov r8d, dword [rax + 0x68]
lea rax, [rsp + 0x58]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
call qword [sym.imp.kernel32.dll_FormatMessageW]
mov rax, rdi
cmp word [rsp + 0x460], 0
je 0x34b376272
nop dword [rax]
add rax, 2
cmp word [rax], 0
jne 0x34b376268
sub rax, rdi
mov r8, rax
mov rax, rbp
sar r8, 1
cmp word [rbp], 0
je 0x34b376292
nop dword [rax]
add rax, 2
cmp word [rax], 0
jne 0x34b376288
mov rcx, qword [rsp + 0x58]
sub rax, rbp
add r8d, 3
sar rax, 1
cmp word [rcx], 0
mov rdx, rax
mov rax, rcx
je 0x34b3762ba
nop dword [rax]
add rax, 2
cmp word [rax], 0
jne 0x34b3762b0
sub rax, rcx
add r8d, edx
xor edx, edx
sar rax, 1
add r8d, eax
mov r9, qword gs:[0x30]
mov rax, qword [r9 + 0x60]
movsxd r8, r8d
add r8, r8
mov rcx, qword [rax + 0x30]
call rsi
mov rbx, rax
test rax, rax
je 0x34b37643f
mov rdx, rax
mov rax, rdi
nop dword [rax + rax]
movzx ecx, word [rax]
add rax, 2
add rdx, 2
mov word [rdx - 2], cx
test cx, cx
jne 0x34b3762f8
cmp word [rsp + 0x460], 0
mov rax, rdi
je 0x34b37632a
nop word [rax + rax]
add rax, 2
cmp word [rax], 0
jne 0x34b376320
sub rax, rdi
sar rax, 1
cdqe
lea rcx, [rbx + rax*2]
xor eax, eax
nop dword [rax + rax]
movzx edx, word [rbp + rax]
mov word [rcx + rax], dx
add rax, 2
test dx, dx
jne 0x34b376340
cmp word [rbp], 0
mov rax, rbp
je 0x34b37636a
nop dword [rax]
add rax, 2
cmp word [rax], 0
jne 0x34b376360
sub rax, rbp
mov r8, qword [rsp + 0x58]
sar rax, 1
cdqe
lea rcx, [rcx + rax*2]
xor eax, eax
mov dword [rcx], 0xa003a
nop dword [rax + rax]
movzx edx, word [r8 + rax]
mov word [rcx + rax + 4], dx
add rax, 2
test dx, dx
jne 0x34b376388
mov rdx, rbx
mov r8, r13
mov rcx, r12
mov r9d, 0x10
call qword [sym.imp.user32.dll_MessageBoxW]
mov r8, rbx
xor edx, edx
mov rbx, qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov rcx, qword [rax + 0x30]
call rbx
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.kernel32.dll_LocalFree]
jmp 0x34b376102
mov edx, 0x4b8
lea r14, [0x34b3858b0]
jmp 0x34b375c70
lea r14, [rsp + 0x460]
mov r9d, 0x200
mov edx, 0x4b0
mov rcx, qword [0x34b393008]
mov r8, r14
call rbx
jmp 0x34b3760ae
mov eax, 1
jmp 0x34b375fe2
lea r13, [rsp + 0x60]
mov r9d, 0x200
mov edx, 0x4b0
mov rcx, qword [0x34b393008]
mov r8, r13
call rbx
jmp 0x34b3761fc
mov rbx, qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x34b3763cf