Function at 0x140074570
Capabilities:
Read file via mapping

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x88]
sub rsp, 0x188
mov rsi, rcx
mov dword [rbp + 0xe0], 0
xor al, al
mov byte [rbp + 0xd0], al
mov byte [rbp + 0xd8], 1
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r15, 0xffffffffffffffff
mov r9d, r15d
mov r8d, r15d
lea rdx, str.UNZIPDIR
mov rcx, rax
call qword [r10 + 0x28]
mov r13, rax
mov qword [rbp + 0x20], rax
xor edi, edi
movsxd rax, dword [rsi + 0x50]
test eax, eax
jg 0x1400745f0
mov edi, r15d
jmp 0x14007464a
mov qword [rsp + 0x50], rax
test rax, rax
jle 0x14007464a
xor r14d, r14d
mov r15, rax
mov rax, qword [rsi + 0x60]
mov r12, qword [rax + r14*8]
cmp r12, r13
je 0x14007463c
lea rbx, [0x1400c5494]
test r13, r13
cmovne rbx, r13
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, r12
call fcn.140001f10
test eax, eax
je 0x14007463c
inc edi
inc r14
cmp r14, r15
jl 0x140074600
cmp edi, r15d
mov r15, 0xffffffffffffffff
cmovge edi, r15d
shr edi, 0x1f
xor dil, 1
lea rdx, [r13 - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14007467e
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140074674
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14007467e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
test dil, dil
je 0x1400746a4
mov rcx, rsi
call fcn.1400751c0
mov byte [rbp + 0xd0], al
mov edi, dword [rbp + 0xe0]
cmp al, 1
jne 0x1400749e9
jmp 0x140074d90
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.INSTALLSKIN
mov rcx, rax
call qword [r10 + 0x28]
mov qword [rsp + 0x70], rax
mov edi, 1
mov dword [rbp + 0xe0], edi
xor r12d, r12d
movsxd rax, dword [rsi + 0x50]
test eax, eax
jle 0x14007475f
mov qword [rsp + 0x40], rax
test rax, rax
jle 0x140074754
xor r14d, r14d
mov r15, rax
mov rdi, qword [rsp + 0x70]
nop
mov rax, qword [rsi + 0x60]
mov r13, qword [rax + r14*8]
cmp r13, rdi
je 0x14007473d
lea rbx, [0x1400c5494]
test rdi, rdi
cmovne rbx, rdi
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, r13
call fcn.140001f10
test eax, eax
je 0x14007473d
inc r12d
inc r14
cmp r14, r15
jl 0x140074700
cmp r12d, r15d
mov edi, dword [rbp + 0xe0]
mov r15, 0xffffffffffffffff
jge 0x14007475f
test r12d, r12d
js 0x14007475f
mov r13, qword [rbp - 0x60]
mov bl, 1
jmp 0x14007481b
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.INSTALLMINISKIN
mov rcx, rax
call qword [r10 + 0x28]
mov r13, rax
mov qword [rbp - 0x60], rax
mov edi, 3
mov dword [rbp + 0xe0], edi
xor r12d, r12d
movsxd rax, dword [rsi + 0x50]
test eax, eax
jle 0x140074819
mov qword [rsp + 0x40], rax
test rax, rax
jle 0x140074815
xor r14d, r14d
mov r15, rax
nop word [rax + rax]
mov rax, qword [rsi + 0x60]
mov rax, qword [rax + r14*8]
mov qword [rsp + 0x40], rax
cmp rax, r13
je 0x140074804
lea rbx, [0x1400c5494]
test r13, r13
cmovne rbx, r13
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, qword [rsp + 0x40]
call fcn.140001f10
test eax, eax
je 0x140074804
inc r12d
inc r14
cmp r14, r15
jl 0x1400747c0
cmp r12d, r15d
mov r15, 0xffffffffffffffff
jge 0x140074819
test r12d, r12d
js 0x140074819
mov bl, 1
jmp 0x14007481b
xor bl, bl
test dil, 2
je 0x14007485d
and edi, 0xfffffffd
mov dword [rbp + 0xe0], edi
lea rdx, [r13 - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140074857
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14007484d
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140074857
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov edi, dword [rbp + 0xe0]
test dil, 1
je 0x1400748a4
and edi, 0xfffffffe
mov dword [rbp + 0xe0], edi
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14007489e
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140074894
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14007489e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov edi, dword [rbp + 0xe0]
test bl, bl
je 0x1400748d9
mov rcx, rsi
call fcn.1400754f0
mov byte [rbp + 0xd0], al
test al, al
jne 0x140074697
lea rcx, [rsi + 0xa0]
xor r9d, r9d
lea rdx, str.INSTALLSKIN_action_failed.
call fcn.140014540
jmp 0x1400749e9
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.INSTALLTRACKINFO
mov rcx, rax
call qword [r10 + 0x28]
mov r13, rax
mov qword [rbp + 0x28], rax
xor edi, edi
movsxd rax, dword [rsi + 0x50]
test eax, eax
jg 0x14007491a
mov edi, r15d
jmp 0x14007497a
mov qword [rsp + 0x40], rax
test rax, rax
jle 0x14007497a
xor r14d, r14d
mov r15, rax
nop word [rax + rax]
mov rax, qword [rsi + 0x60]
mov r12, qword [rax + r14*8]
cmp r12, r13
je 0x14007496c
lea rbx, [0x1400c5494]
test r13, r13
cmovne rbx, r13
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, r12
call fcn.140001f10
test eax, eax
je 0x14007496c
inc edi
inc r14
cmp r14, r15
jl 0x140074930
cmp edi, r15d
mov r15, 0xffffffffffffffff
cmovge edi, r15d
shr edi, 0x1f
xor dil, 1
lea rdx, [r13 - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400749ae
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400749a4
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400749ae
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
test dil, dil
je 0x140074a3e
mov rcx, rsi
call fcn.1400760e0
mov byte [rbp + 0xd0], al
test al, al
jne 0x140074691
lea rcx, [rsi + 0xa0]
xor r9d, r9d
lea rdx, str.INSTALLTRACKINFO_action_failed.
call fcn.140014540
mov edi, dword [rbp + 0xe0]
cmp byte [rsi + 0x88], 0
jne 0x140074e51
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.DONT_CLEANUP
mov rcx, rax
call qword [r10 + 0x28]
mov r13, rax
mov qword [rbp + 0x38], rax
xor edi, edi
movsxd rax, dword [rsi + 0x50]
test eax, eax
jg 0x140074db0
mov edi, r15d
jmp 0x140074e0a
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.INSTALLMEDIA
mov rcx, rax
call qword [r10 + 0x28]
mov qword [rsp + 0x78], rax
mov edi, dword [rbp + 0xe0]
or edi, 4
mov dword [rbp + 0xe0], edi
xor r12d, r12d
movsxd rax, dword [rsi + 0x50]
test eax, eax
jle 0x140074aff
mov qword [rbp + 0xe8], rax
test rax, rax
jle 0x140074af4
xor r14d, r14d
mov r15, qword [rsp + 0x78]
mov rdi, rax
nop
mov rax, qword [rsi + 0x60]
mov r13, qword [rax + r14*8]
cmp r13, r15
je 0x140074add
lea rbx, [0x1400c5494]
test r15, r15
cmovne rbx, r15
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, r13
call fcn.140001f10
test eax, eax
je 0x140074add
inc r12d
inc r14
cmp r14, rdi
jl 0x140074aa0
cmp r12d, edi
mov edi, dword [rbp + 0xe0]
mov r15, 0xffffffffffffffff
jge 0x140074aff
test r12d, r12d
js 0x140074aff
mov r13, qword [rbp - 0x58]
mov bl, 1
jmp 0x140074bbf
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.PREVIEWMEDIA
mov rcx, rax
call qword [r10 + 0x28]
mov r13, rax
mov qword [rbp - 0x58], rax
or edi, 8
mov dword [rbp + 0xe0], edi
xor r12d, r12d
movsxd rax, dword [rsi + 0x50]
test eax, eax
jle 0x140074bbd
mov qword [rbp + 0xe8], rax
test rax, rax
jle 0x140074bb9
xor r14d, r14d
mov r15, rax
nop word [rax + rax]
mov rax, qword [rsi + 0x60]
mov rax, qword [rax + r14*8]
mov qword [rbp + 0xe8], rax
cmp rax, r13
je 0x140074ba8
lea rbx, [0x1400c5494]
test r13, r13
cmovne rbx, r13
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, qword [rbp + 0xe8]
call fcn.140001f10
test eax, eax
je 0x140074ba8
inc r12d
inc r14
cmp r14, r15
jl 0x140074b60
cmp r12d, r15d
mov r15, 0xffffffffffffffff
jge 0x140074bbd
test r12d, r12d
js 0x140074bbd
mov bl, 1
jmp 0x140074bbf
xor bl, bl
test dil, 8
je 0x140074c01
and edi, 0xfffffff7
mov dword [rbp + 0xe0], edi
lea rdx, [r13 - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140074bfb
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140074bf1
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140074bfb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov edi, dword [rbp + 0xe0]
test dil, 4
je 0x140074c48
and edi, 0xfffffffb
mov dword [rbp + 0xe0], edi
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140074c42
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140074c38
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140074c42
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov edi, dword [rbp + 0xe0]
test bl, bl
je 0x140074c58
mov byte [rbp + 0xd8], 0
jmp 0x140074d90
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.NONE
mov rcx, rax
call qword [r10 + 0x28]
mov r13, rax
mov qword [rbp + 0x30], rax
xor edi, edi
movsxd rax, dword [rsi + 0x50]
test eax, eax
jg 0x140074c99
mov edi, r15d
jmp 0x140074cfa
test rax, rax
jle 0x140074cfa
xor r14d, r14d
mov r15, rax
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rsi + 0x60]
mov r12, qword [rax + r14*8]
cmp r12, r13
je 0x140074cec
lea rbx, [0x1400c5494]
test r13, r13
cmovne rbx, r13
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, r12
call fcn.140001f10
test eax, eax
je 0x140074cec
inc edi
inc r14
cmp r14, r15
jl 0x140074cb0
cmp edi, r15d
mov r15, 0xffffffffffffffff
cmovge edi, r15d
shr edi, 0x1f
xor dil, 1
lea rdx, [r13 - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140074d2e
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140074d24
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140074d2e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
test dil, dil
je 0x1400749e3
mov byte [rbp + 0xd8], 0
mov rdx, qword [rsi + 0x28]
lea rcx, [rbp - 0x50]
call fcn.14001cd10
nop
lea rcx, [rsi + 0x78]
mov rdx, rax
call fcn.1400103b0
nop
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140074d8a
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140074d80
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140074d8a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov edi, dword [rbp + 0xe0]
mov rcx, rsi
call fcn.14007b080
mov byte [rbp + 0xd0], al
cmp byte [rbp + 0xd8], 0
je 0x140074e51
jmp 0x1400749e9
test rax, rax
jle 0x140074e0a
xor r14d, r14d
mov r15, rax
nop dword [rax + rax]
mov rax, qword [rsi + 0x60]
mov r12, qword [rax + r14*8]
cmp r12, r13
je 0x140074dfc
lea rbx, [0x1400c5494]
test r13, r13
cmovne rbx, r13
call fcn.140002000
mov rcx, rax
mov r8, rbx
mov rdx, r12
call fcn.140001f10
test eax, eax
je 0x140074dfc
inc edi
inc r14
cmp r14, r15
jl 0x140074dc0
cmp edi, r15d
mov r15, 0xffffffffffffffff
cmovge edi, r15d
shr edi, 0x1f
lea rdx, [r13 - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140074e3a
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140074e30
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140074e3a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
test dil, dil
je 0x140074e4b
lea rcx, [rsi + 0x80]
call fcn.14002ddb0
mov edi, dword [rbp + 0xe0]
movzx r12d, byte [rbp + 0xd0]
test r12b, r12b
jne 0x14007519e
lea rax, vtable.JRSharedMemory.0
mov qword [rbp - 0x80], rax
call fcn.140002000
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rbp - 0x78], rax
xor r13d, r13d
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x70], r13
xor r9d, r9d
lea rbx, str.InstallPackageError
mov rdx, rbx
lea rcx, [rbp - 0x78]
call fcn.140014540
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 4
xor r9d, r9d
xor edx, edx
lea r8d, [r13 + 4]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov r14, rax
mov qword [rbp - 0x70], rax
test rax, rax
je 0x140074eec
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
lea edx, [r13 + 6]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov rbx, rax
mov qword [rbp - 0x68], rax
jmp 0x140074ef0
mov rbx, qword [rbp - 0x68]
test rbx, rbx
jne 0x140074f07
test r14, r14
je 0x140074f07
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x70], r13
mov dword [rbx], 1
cmp byte [rsi + 0x8a], 1
jne 0x140075195
lea rax, [rsp + 0x50]
mov qword [rbp + 0xd0], rax
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, [0x1400c5494]
mov rcx, rax
call qword [r10 + 0x28]
mov qword [rsp + 0x50], rax
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.Information
mov rcx, rax
call qword [r10 + 0x28]
mov qword [rsp + 0x68], rax
or edi, 0x10
mov dword [rbp + 0xe0], edi
lea rbx, vtable.JRDllString.0
cmp dword [rax - 0x10], 0
jle 0x140074fd0
mov rcx, qword [0x1400fac38]
test rcx, rcx
je 0x140074fd0
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x38]
test rax, rax
je 0x140074fd0
mov qword [rbp - 0x48], rbx
lea rcx, [rsp + 0x68]
mov qword [rbp - 0x40], rcx
mov r8, qword [rax]
lea rdx, [rbp - 0x48]
mov rcx, rax
call qword [r8 + 8]
mov dword [rsp + 0x40], r13d
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x70], xmm0
mov dword [rsp + 0x40], r13d
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x60], xmm1
mov dword [rbp - 0x30], 3
lea rax, [rsi + 0x38]
mov qword [rbp - 0x28], rax
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp + 0x50], xmm0
mov dword [rbp - 0x20], 3
lea rax, [rsi + 0xa0]
mov qword [rbp - 0x18], rax
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp + 0x40], xmm0
call fcn.140002000
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.Failed_to_install_package._r_n_r_nMore_Info:__s_r_nURL:__s
mov rcx, rax
call qword [r10 + 0x28]
mov qword [rsp + 0x60], rax
or edi, 0x20
mov dword [rbp + 0xe0], edi
cmp dword [rax - 0x10], 0
jle 0x140075094
mov rcx, qword [0x1400fac38]
test rcx, rcx
je 0x140075094
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x38]
test rax, rax
je 0x140075094
mov qword [rbp - 0x10], rbx
lea rcx, [rsp + 0x60]
mov qword [rbp - 8], rcx
mov r8, qword [rax]
lea rdx, [rbp - 0x10]
mov rcx, rax
call qword [r8 + 8]
mov rbx, qword [rsp + 0x60]
call fcn.140002000
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x40]
mov qword [rbp], rax
lea rax, [rbp + 0x50]
mov qword [rbp + 8], rax
lea rax, [rbp + 0x60]
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0x70]
mov qword [rbp + 0x18], rax
lea r9, [rsp + 0x58]
mov r8d, 4
lea rdx, [rbp]
mov rcx, rbx
call fcn.140044c50
nop
lea r8, [rsp + 0x50]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
call fcn.14000f930
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x14007512b
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x140075121
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14007512b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
and dword [rbp + 0xe0], 0xffffffdf
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140075164
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14007515a
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140075164
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x140075195
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x14007518b
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x140075195
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rbp - 0x80]
call fcn.1400447a0
movzx eax, r12b
add rsp, 0x188
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret