Function at 0x140048940
Capabilities:
Identify system language via api

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xe0
mov qword [rsp + 0xd0], 0xfffffffffffffffe
mov qword [rsp + 0x120], rbx
mov rsi, rdx
mov r14, rcx
call fcn.14009d5e8
mov rcx, rax
xor r15d, r15d
mov eax, r15d
test rcx, rcx
setne al
test eax, eax
jne 0x140048990
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x70], rax
lea r9, [0x140101820]
lea r8, [0x140100878]
lea rdx, str._s_s
lea rcx, [rsp + 0x70]
call fcn.14000a800
lea rdi, [0x14010087c]
or r12, 0xffffffffffffffff
mov ebp, 0x7fffffff
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x140048b04
mov rcx, qword [rsi]
cmp dword [rcx - 0x10], 0
jl 0x140048b04
mov rdx, rbx
call fcn.1400cec00
mov r13, rax
test rax, rax
je 0x140048b04
sub r13, qword [rsi]
sar r13, 1
test r13d, r13d
js 0x140048b04
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140048a2c
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x38], rax
test rdi, 0xffffffffffff0000
jne 0x140048a68
movzx edi, di
mov ecx, edi
call fcn.1400a1868
test rax, rax
je 0x140048a89
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.14000a990
jmp 0x140048a89
xor eax, eax
mov rcx, r12
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x14010087c]
lea rcx, [rsp + 0x38]
call fcn.140003940
nop
mov r8, qword [r14 + 0x30]
lea rdx, [0x140100888]
lea rcx, [rsp + 0x38]
call fcn.1400037a0
mov rdx, rbp
cmp word [rbx], 0
je 0x140048ab3
add rbx, 2
sub rdx, 1
jne 0x140048aa1
jmp 0x140048ac8
test rdx, rdx
je 0x140048ac8
mov rax, rbp
sub rax, rdx
mov qword [rsp + 0xc8], rax
jmp 0x140048ad3
mov rax, r15
mov qword [rsp + 0xc8], rax
lea edx, [rax + r13]
mov rdi, qword [rsp + 0x38]
mov r8, rdi
mov rcx, rsi
call fcn.1400157c0
nop
lea rdx, [rdi - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140048b04
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140048b24
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x60], rax
lea r9, [0x140100870]
lea r8, [0x140100878]
lea rdx, str._s_s
lea rcx, [rsp + 0x60]
call fcn.14000a800
mov rdi, qword [rsp + 0x60]
test rdi, rdi
je 0x140048d7c
mov rcx, qword [rsi]
cmp dword [rcx - 0x10], 0
jl 0x140048d7c
mov rdx, rdi
call fcn.1400cec00
mov r11, rax
test rax, rax
je 0x140048d7c
sub r11, qword [rsi]
sar r11, 1
test r11d, r11d
js 0x140048d7c
mov rcx, rbp
cmp word [rdi], 0
je 0x140048ba8
add rdi, 2
sub rcx, 1
jne 0x140048b96
jmp 0x140048bbd
test rcx, rcx
je 0x140048bbd
mov rax, rbp
sub rax, rcx
mov qword [rsp + 0xb8], rax
jmp 0x140048bc8
mov rax, r15
mov qword [rsp + 0xb8], rax
lea ebx, [rax + r11]
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140048bec
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x138], rax
mov r8d, ebx
lea rdx, [rsp + 0xa8]
mov rcx, rsi
call fcn.14000a4c0
nop
mov dword [rsp + 0x28], r15d
mov word [rsp + 0x20], 0x22
mov r9w, 0x20
lea r8, [rsp + 0x138]
mov rdx, qword [rax]
mov rcx, qword [r14 + 8]
call fcn.140010a90
mov edi, eax
mov rdx, qword [rsp + 0xa8]
add rdx, 0xffffffffffffffe8
mov ecx, r12d
lock xadd dword [rdx + 0x10], ecx
add ecx, 0xffffffff
test ecx, ecx
jg 0x140048c60
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test edi, edi
je 0x140048cd6
mov rax, qword [rsp + 0x138]
test rax, rax
je 0x140048cb3
mov rcx, rbp
mov edx, r15d
cmp word [rax], dx
je 0x140048c88
add rax, 2
sub rcx, 1
jne 0x140048c77
jmp 0x140048c8d
test rcx, rcx
jne 0x140048c9f
mov edx, 0x80070057
mov rax, r15
mov qword [rsp + 0x80], rax
jmp 0x140048cad
mov rax, rbp
sub rax, rcx
mov qword [rsp + 0x80], rax
test edx, edx
jns 0x140048cc9
jmp 0x140048cb8
mov edx, 0x80070057
mov rax, r15
test edx, edx
cmovs rax, r15
mov qword [rsp + 0x80], rax
mov r8d, eax
mov edx, ebx
mov rcx, rsi
call fcn.1400156a0
xor eax, eax
mov rcx, r12
lea rdi, [0x14010087c]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x14010087c]
lea rcx, [rsp + 0x138]
call fcn.140003940
mov rcx, r14
call fcn.14004a6a0
mov r8, qword [r14 + 0x60]
cmp dword [r8 - 0x10], 0
jne 0x140048d36
mov r8, qword [r14 + 0x58]
cmp dword [r8 - 0x10], 0
cmove r8, r15
lea rdx, [0x140100888]
lea rcx, [rsp + 0x138]
call fcn.1400037a0
jmp 0x140048d4a
lea rdx, [0x140100888]
lea rcx, [rsp + 0x138]
call fcn.1400037a0
mov rdi, qword [rsp + 0x138]
mov r8, rdi
mov edx, ebx
mov rcx, rsi
call fcn.1400157c0
nop
lea rdx, [rdi - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140048d7c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140048d9c
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x58], rax
lea r9, [0x140101828]
lea r8, [0x140100878]
lea rdx, str._s_s
lea rcx, [rsp + 0x58]
call fcn.14000a800
mov rbx, qword [rsp + 0x58]
test rbx, rbx
je 0x140048f13
mov rcx, qword [rsi]
cmp dword [rcx - 0x10], 0
jl 0x140048f13
mov rdx, rbx
call fcn.1400cec00
mov r13, rax
test rax, rax
je 0x140048f13
sub r13, qword [rsi]
sar r13, 1
test r13d, r13d
js 0x140048f13
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140048e2b
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x40], rax
lea rdx, [0x14010087c]
test rdx, 0xffffffffffff0000
jne 0x140048e6e
movzx edi, dx
mov ecx, edi
call fcn.1400a1868
test rax, rax
je 0x140048e8b
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14000a990
jmp 0x140048e8b
xor eax, eax
mov rcx, r12
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rcx, [rsp + 0x40]
call fcn.140003940
nop
mov rcx, r14
call fcn.14003d6a0
mov r8, rax
lea rdx, [0x140100888]
lea rcx, [rsp + 0x40]
call fcn.1400037a0
mov rdx, rbp
nop
nop
cmp word [rbx], 0
je 0x140048ec2
add rbx, 2
sub rdx, 1
jne 0x140048eb0
jmp 0x140048ed7
test rdx, rdx
je 0x140048ed7
mov rax, rbp
sub rax, rdx
mov qword [rsp + 0x90], rax
jmp 0x140048ee2
mov rax, r15
mov qword [rsp + 0x90], rax
lea edx, [rax + r13]
mov rdi, qword [rsp + 0x40]
mov r8, rdi
mov rcx, rsi
call fcn.1400157c0
nop
lea rdx, [rdi - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140048f13
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140048f33
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x68], rax
lea r9, str.LANG
lea r8, [0x140100878]
lea rdx, str._s_s
lea rcx, [rsp + 0x68]
call fcn.14000a800
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x1400490b6
mov rcx, qword [rsi]
cmp dword [rcx - 0x10], 0
jl 0x1400490b6
mov rdx, rbx
call fcn.1400cec00
mov r13, rax
test rax, rax
je 0x1400490b6
sub r13, qword [rsi]
sar r13, 1
test r13d, r13d
js 0x1400490b6
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140048fc2
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rdx, [0x14010087c]
test rdx, 0xffffffffffff0000
jne 0x140049005
movzx edi, dx
mov ecx, edi
call fcn.1400a1868
test rax, rax
je 0x140049022
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.14000a990
jmp 0x140049022
xor eax, eax
mov rcx, r12
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rcx, [rsp + 0x48]
call fcn.140003940
nop
mov rcx, qword [r14 + 0x10]
mov eax, dword [rcx]
bt rax, 0xe
jae 0x140049035
movzx eax, word [rcx + 0x40]
jmp 0x14004903b
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx r8d, ax
lea rdx, [0x1400facf8]
lea rcx, [rsp + 0x48]
call fcn.1400037a0
mov rdx, rbp
cmp word [rbx], 0
je 0x140049065
add rbx, 2
sub rdx, 1
jne 0x140049053
jmp 0x14004907a
test rdx, rdx
je 0x14004907a
mov rax, rbp
sub rax, rdx
mov qword [rsp + 0x98], rax
jmp 0x140049085
mov rax, r15
mov qword [rsp + 0x98], rax
lea edx, [rax + r13]
mov rdi, qword [rsp + 0x48]
mov r8, rdi
mov rcx, rsi
call fcn.1400157c0
nop
lea rdx, [rdi - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400490b6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400490d6
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x50], rax
lea r9, [0x1401011b0]
lea r8, [0x140100878]
lea rdx, str._s_s
lea rcx, [rsp + 0x50]
call fcn.14000a800
mov rdi, qword [rsp + 0x50]
test rdi, rdi
je 0x14004930c
mov rcx, qword [rsi]
cmp dword [rcx - 0x10], 0
jl 0x14004930c
mov rdx, rdi
call fcn.1400cec00
mov r11, rax
test rax, rax
je 0x14004930c
sub r11, qword [rsi]
sar r11, 1
test r11d, r11d
js 0x14004930c
mov rcx, rbp
cmp word [rdi], 0
je 0x14004915a
add rdi, 2
sub rcx, 1
jne 0x140049148
jmp 0x14004916f
test rcx, rcx
je 0x14004916f
mov rax, rbp
sub rax, rcx
mov qword [rsp + 0xa0], rax
jmp 0x14004917a
mov rax, r15
mov qword [rsp + 0xa0], rax
lea ebx, [rax + r11]
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x14004919e
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x30], rax
mov r8d, ebx
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.14000a4c0
nop
mov dword [rsp + 0x28], r15d
mov word [rsp + 0x20], 0x22
mov r9w, 0x20
lea r8, [rsp + 0x30]
mov rdx, qword [rax]
mov rcx, qword [r14 + 8]
call fcn.140010a90
mov edi, eax
mov rdx, qword [rsp + 0xb0]
add rdx, 0xffffffffffffffe8
mov ecx, r12d
lock xadd dword [rdx + 0x10], ecx
add ecx, 0xffffffff
test ecx, ecx
jg 0x14004920c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test edi, edi
je 0x140049276
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x140049256
mov rcx, rbp
mov edx, r15d
cmp word [rax], dx
je 0x140049231
add rax, 2
sub rcx, 1
jne 0x140049220
jmp 0x140049236
test rcx, rcx
jne 0x140049245
mov edx, 0x80070057
mov rax, r15
mov qword [rsp + 0x78], rax
jmp 0x140049250
mov rax, rbp
sub rax, rcx
mov qword [rsp + 0x78], rax
test edx, edx
jns 0x140049269
jmp 0x14004925b
mov edx, 0x80070057
mov rax, r15
test edx, edx
cmovs rax, r15
mov qword [rsp + 0x78], rax
mov r8d, eax
mov edx, ebx
mov rcx, rsi
call fcn.1400156a0
xor eax, eax
mov rcx, r12
lea rdx, [0x14010087c]
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rcx, [rsp + 0x30]
call fcn.140003940
call fcn.1400a0754
test rax, rax
je 0x1400492b1
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + pe_nt_image_headers64]
jmp 0x1400492b4
mov rax, r15
xor r9d, r9d
xor r8d, r8d
mov edx, 0x2b3f
mov rcx, qword [rax + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r8, rax
lea rdx, [0x1400facf8]
lea rcx, [rsp + 0x30]
call fcn.1400037a0
mov rdi, qword [rsp + 0x30]
mov r8, rdi
mov edx, ebx
mov rcx, rsi
call fcn.1400157c0
nop
lea rdx, [rdi - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004930c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.14009d5e8
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x14004932c
mov ecx, 0x80004005
call fcn.1400034f0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x88], rax
lea r9, [0x140101840]
lea r8, [0x140100878]
lea rdx, str._s_s
lea rcx, [rsp + 0x88]
call fcn.14000a800
mov rbx, qword [rsp + 0x88]
test rbx, rbx
je 0x1400493ef
mov rcx, qword [rsi]
cmp dword [rcx - 0x10], 0
jl 0x1400493ef
mov rdx, rbx
call fcn.1400cec00
mov rdx, rax
test rax, rax
je 0x1400493ef
sub rdx, qword [rsi]
sar rdx, 1
test edx, edx
js 0x1400493ef
mov rcx, qword [r14 + 0x10]
movabs rdi, 0x2000000000
test qword [rcx], rdi
je 0x14004953d
mov rcx, rbp
mov rax, rbx
cmp word [rax], 0
je 0x1400493c2
add rax, 2
sub rcx, 1
jne 0x1400493b0
jmp 0x1400493d4
test rcx, rcx
je 0x1400493d4
sub rbp, rcx
mov qword [rsp + 0xc0], rbp
jmp 0x1400493df
mov rbp, r15
mov qword [rsp + 0xc0], r15
mov r8d, ebp
mov rcx, rsi
call fcn.1400156a0
jmp 0x14004953d
mov rax, qword [r14 + 0x10]
movabs rdi, 0x2000000000
test qword [rax], rdi
jne 0x14004953d
xor eax, eax
mov rcx, r12
lea r13, [0x1400fc5dc]
mov rdi, r13
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
mov r8, rcx
mov qword [rsp + 0x130], rcx
mov rax, qword [rsi]
mov rbp, r13
sub rbp, rax
sar rbp, 1
mov r15d, dword [rax - 0x10]
lea edi, [r15 + rcx]
mov r14d, 1
mov edx, r14d
sub edx, dword [rax - 8]
mov eax, dword [rax - 0xc]
sub eax, edi
or eax, edx
jge 0x140049465
mov edx, edi
mov rcx, rsi
call fcn.140003510
mov r8, qword [rsp + 0x130]
mov rax, qword [rsi]
cmp rbp, r15
ja 0x140049471
lea r13, [rax + rbp*2]
movsxd rdx, r8d
add rdx, rdx
lea rcx, [rax + r15*2]
mov r9, rdx
mov r8, r13
call fcn.1400cd500
test edi, edi
js 0x140049532
mov rax, qword [rsi]
cmp edi, dword [rax - 0xc]
jg 0x140049532
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rsi]
mov word [rax + rcx*2], 0
mov edx, dword [rbx - 0x10]
mov dword [rsp + 0x130], edx
mov r13, rbx
mov rax, qword [rsi]
mov rbp, rbx
sub rbp, rax
sar rbp, 1
mov r15d, dword [rax - 0x10]
lea edi, [r15 + rdx]
sub r14d, dword [rax - 8]
mov eax, dword [rax - 0xc]
sub eax, edi
or eax, r14d
jge 0x1400494e9
mov edx, edi
mov rcx, rsi
call fcn.140003510
mov edx, dword [rsp + 0x130]
mov rax, qword [rsi]
cmp rbp, r15
ja 0x1400494f5
lea r13, [rax + rbp*2]
movsxd rdx, edx
add rdx, rdx
lea rcx, [rax + r15*2]
mov r9, rdx
mov r8, r13
call fcn.1400cd500
test edi, edi
js 0x140049527
mov rax, qword [rsi]
cmp edi, dword [rax - 0xc]
jg 0x140049527
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rsi]
mov word [rax + rcx*2], 0
jmp 0x14004953d
mov ecx, 0x80070057
call fcn.1400034f0
int3
mov ecx, 0x80070057
call fcn.1400034f0
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004955a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004957c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004959e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400495c0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400495e2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
add r12d, 0xffffffff
test r12d, r12d
jg 0x140049603
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x120]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret