Function at 0x14005d4e0
Capabilities:
Resume thread

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x9a0]
sub rsp, 0xaa0
mov qword [rbp + 0x18], 0xfffffffffffffffe
mov qword [rsp + 0xaf0], rbx
mov rax, qword [0x140398250]
xor rax, rsp
mov qword [rbp + 0x990], rax
mov dword [rbp - 0x70], r8d
mov dword [rbp - 0x6c], edx
mov r15, rcx
mov qword [rbp - 0x60], rcx
xor r8d, r8d
lea rdx, str.CBaseFuncMgr::FN_RegisterWSDPrinter
lea rcx, [rsp + 0x58]
call fcn.1400075a0
nop
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x160]
call fcn.14024b970
xor edi, edi
mov qword [rbp - 0x80], rdi
lea ecx, [rdi + 0x70]
call fcn.1401026a0
test rax, rax
je 0x14005e0be
mov qword [rsp + 0x78], rax
mov qword [rax], rax
mov rax, qword [rsp + 0x78]
mov qword [rax + 8], rax
mov rax, qword [rsp + 0x78]
mov qword [rax + 0x10], rax
mov rax, qword [rsp + 0x78]
mov byte [rax + 0x68], 1
mov rax, qword [rsp + 0x78]
mov byte [rax + 0x69], 1
mov word [rbp + 0x580], di
xor edx, edx
mov r8d, 0x40e
lea rcx, [rbp + 0x582]
call fcn.14024b970
mov dword [rbp - 0x68], 0x208
test r15, r15
jne 0x14005d5f6
mov r8, qword [rsp + 0x78]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x70]
call fcn.140028330
nop
mov rcx, qword [rsp + 0x78]
call fcn.1401026ec
nop
lea rcx, [rsp + 0x58]
call fcn.140007730
mov eax, 0x80010001
jmp 0x14005e0eb
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x580]
call qword [sym.imp.WINSPOOL.DRV_Ordinal_203]
or r13, 0xffffffffffffffff
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xf0]
mov r14d, eax
mov word [rbp + 0x370], di
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0x372]
call fcn.14024b970
mov rcx, qword [0x1403b9750]
mov rdx, qword [rcx]
call qword [rdx + 0x50]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xc0]
mov ebx, 4
mov ecx, 2
test eax, eax
cmovne ebx, ecx
mov esi, r13d
test r14d, r14d
cmovne esi, edi
lea rax, [r15 + 8]
mov r15, rax
nop word [rax + rax]
mov rcx, qword [0x1403b9758]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rdi, qword [rax]
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], esi
lea rcx, [rbp + 0x370]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x160]
mov r8d, ebx
mov rdx, r15
mov rcx, rax
call qword [rdi + 0x328]
mov r12d, eax
test r14d, r14d
je 0x14005d6e4
lea rdx, [0x1402dc4e0]
lea rcx, [rbp + 0x160]
call fcn.140247088
test eax, eax
jne 0x14005d6e4
inc esi
cmp esi, 2
jl 0x14005d680
test r12d, r12d
mov r15, qword [rbp - 0x60]
jne 0x14005dedd
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x50]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x108]
mov rdx, rax
mov qword [rbp + 0x148], 7
xor ebx, ebx
mov qword [rbp + 0x140], rbx
mov word [rbp + 0x130], bx
xor eax, eax
mov rcx, r13
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rbp + 0x130]
call fcn.140001f40
nop
xor edx, edx
mov r8d, reloc.OLEAUT32.dll_VariantTimeToSystemTime
lea rcx, [rbp + 0x70]
call fcn.14024b970
lea r14, [r15 + 8]
mov qword [rbp + 0x78], r14
lea rax, [rbp + 0x130]
cmp qword [rbp + 0x148], 8
cmovae rax, qword [rbp + 0x130]
mov qword [rbp + 0x80], rax
mov eax, dword [r15 + 0x3c8c]
mov dword [rbp + 0x70], eax
mov rcx, qword [0x1403b9758]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov rdi, rax
mov rsi, qword [rax]
call fcn.1400234c0
mov r9d, eax
mov dword [rsp + 0x20], 1
lea r8, [rbp + 0x70]
lea rdx, [rbp + 0x160]
mov rcx, rdi
call qword [rsi + 0x48]
mov r12d, eax
cmp qword [rbp + 0x148], 8
jb 0x14005d7d5
mov rcx, qword [rbp + 0x130]
call fcn.1401026ec
mov qword [rbp + 0x148], 7
mov qword [rbp + 0x140], rbx
mov word [rbp + 0x130], bx
test r12d, r12d
jne 0x14005dee4
xor edx, edx
lea r8d, [r12 + 0x30]
lea rcx, [rbp + 0x20]
call fcn.14024b970
lea rdx, [r15 + 0x828]
lea rcx, [rsp + 0x68]
call fcn.140005900
nop
lea rdx, [0x1402e9678]
lea rcx, [rsp + 0x68]
call fcn.140064bf0
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov rdi, qword [rsp + 0x68]
add rdi, 0xffffffffffffffe8
cmp rcx, rdi
je 0x14005d888
cmp dword [rdi + 0x10], r12d
jl 0x14005d87a
mov rax, qword [rdi]
cmp qword [rcx], rax
jne 0x14005d87a
call fcn.140006190
mov rsi, rax
mov ecx, r13d
lock xadd dword [rdi + 0x10], ecx
dec ecx
test ecx, ecx
jg 0x14005d86f
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rax, [rsi + 0x18]
mov qword [rsp + 0x68], rax
jmp 0x14005d888
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x68]
call fcn.140005d50
call fcn.140102a14
mov rdx, rax
mov ecx, ebx
test rax, rax
setne cl
test ecx, ecx
jne 0x14005d8a7
mov ecx, 0x80004005
call fcn.140005210
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
lea rsi, [rax + 0x18]
mov qword [rbp + 0x10], rsi
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x68]
mov rdi, qword [rax]
lea rdx, [rsp + 0x70]
mov rcx, rax
call qword [rdi + 0xc0]
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x78]
test eax, eax
je 0x14005d933
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x68]
mov rdi, qword [rax]
mov r8d, dword [rbp - 0x6c]
mov rdx, r14
mov rcx, rax
call qword [rdi + VarBstrFromDisp]
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x68]
mov rdi, qword [rax]
lea rdx, [r15 + 0x418]
mov r9d, 1
mov r8, r14
mov rcx, rax
call qword [rdi + 0x78]
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 4
xor r9d, r9d
xor r8d, r8d
mov rdx, r15
lea rcx, [0x14005bb70]
call fcn.14010a520
mov rbx, rax
test rax, rax
je 0x14005d9e3
mov dword [rax + 0x50], 0
mov rcx, qword [rax + 0x58]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
xor edx, edx
mov rcx, qword [rbx + 0x58]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x14005d9d5
nop word [rax + rax]
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x14005d9c2
lea rcx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0x20]
call qword [sym.imp.USER32.dll_DispatchMessageW]
xor edx, edx
mov rcx, qword [rbx + 0x58]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x14005d990
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
mov rcx, r13
lea rdi, [r15 + 0x828]
repne scasw ax, word [rdi]
not rcx
dec rcx
jne 0x14005da17
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x50]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xd0]
test eax, eax
je 0x14005da3a
cmp dword [rsi - 0x10], 0
jne 0x14005da7b
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x50]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xd0]
test eax, eax
je 0x14005da7b
mov rcx, qword [0x1403b9758]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rdi, qword [rax]
mov rdx, qword [rsp + 0x68]
mov rcx, rax
call qword [rdi + 0x500]
test eax, eax
jne 0x14005da7b
mov r9, qword [rsp + 0x68]
lea r8, str.Failed_Adding_printer_with_uuid___s_.
lea edx, [rax + 7]
lea rcx, [rsp + 0x58]
call fcn.140007780
mov r12d, 0x8001003c
lea rdx, [rsi - 0x18]
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14005da97
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, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14005dab7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test r12d, r12d
jne 0x14005dee4
call fcn.140102a14
mov rdx, rax
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
jne 0x14005dadf
mov ecx, 0x80004005
call fcn.140005210
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rax, [0x1402dc4e0]
test rax, 0xffffffffffff0000
jne 0x14005db21
movzx edi, ax
mov ecx, edi
call fcn.1401027e8
test rax, rax
je 0x14005db32
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.140005b00
jmp 0x14005db32
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.140005d50
nop
xor ebx, ebx
lea r15, [0x1402dc4e0]
nop dword [rax + rax]
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [0x1403b9758]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rdi, rax
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x50]
call fcn.1400282f0
mov rax, qword [rdi]
lea r9, [rsp + 0x48]
mov r8, r14
lea rdx, [rbp + 0x50]
mov rcx, rdi
call qword [rax + 0x4f8]
xor r11d, r11d
mov rdi, r15
mov r9, qword [rsp + 0x48]
mov rsi, r9
mov ecx, 1
repe cmpsw word [rsi], word [rdi]
je 0x14005dba0
sbb r11d, r11d
sbb r11d, 0xffffffff
test r11d, r11d
setne al
test al, al
jne 0x14005dbb4
inc ebx
cmp ebx, 0xbb8
jl 0x14005db40
xor eax, eax
mov rdi, r15
mov rsi, r9
mov ecx, 1
repe cmpsw word [rsi], word [rdi]
mov r15, qword [rbp - 0x60]
je 0x14005dbcf
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
setne al
mov edx, 7
lea rcx, [rsp + 0x58]
test al, al
je 0x14005dea9
lea r8, str.Added_WSD_printer_is___s_
call fcn.140007780
xor eax, eax
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x50], rax
mov ebx, eax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rax
mov dword [rbp - 0x40], 0xf000c
mov edi, eax
nop dword [rax]
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
lea r8, [rbp - 0x50]
lea rdx, [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WINSPOOL.DRV_OpenPrinterW]
mov esi, eax
test eax, eax
jne 0x14005dc5a
inc edi
cmp edi, 0x12c
jl 0x14005dc20
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x14005ddf7
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 2]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.WINSPOOL.DRV_GetPrinterW]
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x14005ddef
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x14005ddef
mov edx, eax
lea rcx, [rbp - 0x38]
call 0x140005a10
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
mov r9d, dword [rsp + 0x40]
mov rbx, qword [rbp - 0x38]
mov r8, rbx
mov edx, 2
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.WINSPOOL.DRV_GetPrinterW]
mov esi, eax
test eax, eax
jne 0x14005dcef
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9, qword [rsp + 0x48]
lea r8, str.GetPrinter__s__Failed.
lea edx, [rsi + 7]
lea rcx, [rsp + 0x58]
call fcn.140007780
jmp 0x14005ddf7
lea rax, [r15 + 0x418]
mov qword [rbx + 8], rax
lea rdx, [r15 + 0xc38]
xor eax, eax
mov rcx, r13
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
dec rcx
je 0x14005dd1c
or dword [rbx + 0x68], 8
mov qword [rbx + 0x10], rdx
xor r9d, r9d
mov r8, rbx
lea edx, [r9 + 2]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.WINSPOOL.DRV_SetPrinterW]
test eax, eax
jne 0x14005dd7a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov dword [rsp + 0x20], 0
mov r9, qword [rbx + 8]
lea r8, str.SetPrinter__s__Failed
mov edx, 7
lea rcx, [rsp + 0x58]
call fcn.140007780
mov r9d, edi
lea r8, str.GetLastError___08x
mov edx, 7
lea rcx, [rsp + 0x58]
call fcn.140007780
jmp 0x14005ddcd
cmp dword [rbp - 0x70], 0
je 0x14005ddcd
mov rcx, qword [rbx + 8]
call qword [sym.imp.WINSPOOL.DRV_Ordinal_204]
mov esi, eax
test eax, eax
jne 0x14005ddf7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9, qword [rbx + 8]
mov edi, eax
lea r8, str.SetDefaultPrinter__s__Failed.
mov edx, 7
lea rcx, [rsp + 0x58]
call fcn.140007780
mov r9d, edi
lea r8, str.GetLastError___08x
mov edx, 7
lea rcx, [rsp + 0x58]
call fcn.140007780
jmp 0x14005ddf7
lea rcx, [rbp + 0x580]
call qword [sym.imp.WINSPOOL.DRV_Ordinal_204]
mov esi, eax
test eax, eax
jne 0x14005ddf7
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, [rbp + 0x580]
jmp 0x14005dd9a
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14005de10
call qword [sym.imp.WINSPOOL.DRV_ClosePrinter]
mov qword [rsp + 0x50], 0
test esi, esi
je 0x14005de79
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x78]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
test eax, eax
je 0x14005de9a
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x78]
mov rdi, qword [rax]
lea r8, [r15 + 0x418]
xor r9d, r9d
mov rdx, r14
mov rcx, rax
call qword [rdi + 0x40]
mov r12d, eax
test eax, eax
jns 0x14005de9a
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x48]
lea r8, str.RegistAfterCustomDriver__s__Failed__08x_.
mov edx, 7
lea rcx, [rsp + 0x58]
call fcn.140007780
jmp 0x14005de9a
mov r9, qword [rsp + 0x48]
lea r8, str.Failed_setting_printer_info_to___s_.
mov edx, 7
lea rcx, [rsp + 0x58]
call fcn.140007780
mov r12d, 0x8001003c
test rbx, rbx
je 0x14005debb
mov rcx, rbx
call fcn.1401026ec
jmp 0x14005debb
lea r8, str.Failed_getting_new_WSD_printer.
call fcn.140007780
mov r12d, 0x8001003c
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r13d
dec r13d
test r13d, r13d
jg 0x14005dee1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14005dee1
lea r14, [r15 + 8]
test r12d, r12d
jns 0x14005df71
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x78]
test eax, eax
je 0x14005df27
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x68]
mov rdi, qword [rax]
lea rdx, [r15 + 0x418]
xor r9d, r9d
mov r8, r14
mov rcx, rax
call qword [rdi + 0x78]
mov rcx, qword [0x1403b9770]
mov rax, qword [rcx]
lea r8, [r15 + 0x418]
mov edx, 0x22
call qword [rax + 0x18]
mov edx, 7
lea rcx, [rsp + 0x58]
cmp eax, 6
jne 0x14005df5d
lea r8, str._t_t_tRegister_WSD_printer_ABORT_YES
call fcn.140007780
jmp 0x14005df71
lea r8, str._t_t_tRegister_WSD_printer_ABORT_NO
call fcn.140007780
xor r13d, r13d
mov r12d, r13d
jmp 0x14005df74
xor r13d, r13d
mov r9d, r12d
lea r8, str.return__08x
mov edx, 2
lea rcx, [rsp + 0x58]
call fcn.140007780
nop
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsi]
cmp rdi, rdi
jne 0x14005e034
mov rdi, qword [rsi + 8]
mov rbx, rdi
cmp byte [rdi + 0x69], 0
jne 0x14005e019
nop dword [rax]
mov rdx, qword [rbx + 0x10]
lea rcx, [rsp + 0x70]
call fcn.140028950
mov rbx, qword [rbx]
cmp qword [rdi + 0x58], 8
jb 0x14005dfd1
mov rcx, qword [rdi + 0x40]
call fcn.1401026ec
mov qword [rdi + 0x58], 7
mov qword [rdi + 0x50], r13
mov word [rdi + 0x40], r13w
cmp qword [rdi + 0x30], 8
jb 0x14005dff2
mov rcx, qword [rdi + 0x18]
call fcn.1401026ec
mov qword [rdi + 0x30], 7
mov qword [rdi + 0x28], r13
mov word [rdi + 0x18], r13w
mov rcx, rdi
call fcn.1401026ec
mov rdi, rbx
cmp byte [rbx + 0x69], 0
je 0x14005dfb0
mov rsi, qword [rsp + 0x78]
mov qword [rsi + 8], rsi
mov rax, qword [rsp + 0x78]
mov qword [rax], rax
mov rax, qword [rsp + 0x78]
mov qword [rax + 0x10], rax
mov qword [rbp - 0x80], r13
jmp 0x14005e0a1
cmp rdi, rsi
je 0x14005e0a6
nop dword [rax]
mov r8, rdi
cmp byte [rdi + 0x69], 0
jne 0x14005e08e
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x69], 0
jne 0x14005e06e
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x69], 0
jne 0x14005e08e
nop
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x69], 0
je 0x14005e060
jmp 0x14005e08e
mov rax, qword [rdi + 8]
cmp byte [rax + 0x69], 0
jne 0x14005e08b
cmp rdi, qword [rax + 0x10]
jne 0x14005e08b
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x69], 0
je 0x14005e078
mov rdi, rax
lea rdx, [rbp - 0x18]
lea rcx, [rsp + 0x70]
call fcn.1400284e0
cmp rdi, rsi
jne 0x14005e040
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
call fcn.1401026ec
nop
lea rcx, [rsp + 0x58]
call fcn.140007730
mov eax, r12d
jmp 0x14005e0eb
mov qword [rbp - 0x58], rdi
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 8]
call fcn.140246874
lea rdx, vtable.std::bad_alloc.0
mov qword [rbp - 8], rdx
lea rdx, [0x14038c720]
lea rcx, [rbp - 8]
call fcn.14024b7b0
nop
mov rcx, qword [rbp + 0x990]
xor rcx, rsp
call fcn.140245660
mov rbx, qword [rsp + 0xaf0]
add rsp, 0xaa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret