Function at 0x1800966d0
Capabilities:
Authenticate hmac

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x378]
sub rsp, 0x478
mov rax, qword [0x1800e72b8]
xor rax, rsp
mov qword [rbp + 0x360], rax
mov r13d, dword [rbp + 0x3e0]
mov r10, r9
mov rax, qword [rbp + 0x3e8]
mov r11, r8
mov qword [rsp + 0x50], r9
mov r14, rcx
mov qword [rsp + 0x58], rax
xor r9d, r9d
mov rbx, qword [rsp + 0x58]
lea r15d, [r13 + 0x1c]
mov qword [rsp + 0x40], r8
mov r8, rdx
mov qword [rsp + 0x68], rdx
mov esi, r13d
mov qword [rsp + 0x60], rbx
cmp r13d, r15d
jae 0x180096d79
mov r12, qword [rsp + 0x58]
lea edi, [r13 - 0x23]
mov r13, qword [rsp + 0x58]
lea rdx, [0x180000000]
nop dword [rax]
cmp edi, 0x8c
ja case.default.0x180096785
movzx ecx, byte [rdx + rdi + 0x97dfc]
mov edx, dword [rdx + rcx*4 + 0x97d8c]
lea rcx, [0x180000000]
add rdx, rcx
jmp rdx
inc dword [r11 + 0x3c]
jmp case.0x180096785.27
mov qword [rsp + 0x20], r9
lea rcx, [rsp + 0x70]
xor r9d, r9d
mov r8d, 0xe6
mov rdx, r11
call fcn.18000d4f0
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rax + 0x10]
movq rax, xmm1
movups xmmword [rbp - 0x80], xmm0
test rax, rax
je 0x180096d1e
mov r9, qword [rsp + 0x40]
lea r8, str.name
mov edx, 3
mov dword [rsp + 0x20], 6
mov ecx, edx
call fcn.180043fd0
jmp case.0x180096785.12
cmp dword [r11], 6
mov r10d, r9d
je case.0x180096785.27
mov rax, r11
nop dword [rax]
mov rax, qword [rax + 8]
mov r8, qword [rsp + 0x50]
sub r8, rax
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180096823
inc rax
test ecx, ecx
jne 0x180096810
test edx, edx
je 0x180096d50
inc r9
inc r10d
lea rax, [r9 + r9*2]
cmp dword [r11 + rax*8], 6
lea rax, [r11 + rax*8]
jne 0x180096800
jmp case.0x180096785.27
lea r9, [rsp + 0x48]
mov qword [rsp + 0x48], 0x80
mov r8d, 0x5e
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x2e0]
call fcn.1800a6190
mov rcx, qword [rsp + 0x68]
lea r9, [rsp + 0x48]
mov r8d, 0x5e
lea rdx, [rbp + 0x110]
mov eax, dword [rcx]
mov rcx, r14
mov qword [rsp + 0x48], rax
call fcn.1800a6190
jmp 0x180096d1e
mov qword [rsp + 0x38], r9
lea rax, [rbp - 0x38]
mov qword [rsp + 0x30], r9
mov r8, r10
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
jmp 0x180096d1e
mov r9d, 0x29
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x38]
mov rcx, r10
call fcn.1800961a0
jmp 0x180096d1e
mov r9d, 0x29
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x68]
mov rcx, r10
call fcn.1800961a0
jmp 0x180096d1e
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 0xc8]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
jmp 0x180096d1e
mov qword [rsp + 0x38], r9
lea rax, [rbp - 0x58]
mov qword [rsp + 0x30], r9
lea r8, [rbp - 0x38]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
mov rcx, qword [rsp + 0x50]
lea r8, [rbp - 0x58]
mov r9d, 0x29
lea rdx, [rbp - 0x58]
call fcn.1800961a0
jmp 0x180096d1e
test r11, r11
je case.0x180096785.27
mov r8, qword [r11 + 8]
test r8, r8
je case.0x180096785.27
mov rdx, qword [r11]
mov rcx, r9
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x60], rbx
nop dword [rax]
cmp qword [rdx], r10
jne 0x1800969d6
mov eax, 0x2d
nop word [rax + rax]
cmp eax, 0x2d
je 0x1800969c2
cmp eax, 0xd6
je case.0x180096785.12
jmp 0x1800969ca
mov rbx, rcx
mov qword [rsp + 0x60], rcx
add eax, 0xa9
cmp eax, 0x17f
jb 0x1800969b0
inc rcx
add rdx, 8
cmp rcx, r8
jb 0x1800969a0
jmp case.0x180096785.27
mov r8d, pe_nt_image_headers64
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x1e0]
call fcn.180063400
jmp 0x180096d1e
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x30], r9
lea r8, [rbp - 0x58]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
jmp 0x180096d1e
mov dword [rsp + 0x28], 0xd7
lea rcx, [rbp - 0x70]
mov qword [rsp + 0x20], r9
xor r8d, r8d
xor r9d, r9d
xor edx, edx
call fcn.18004cc60
movsd xmm0, qword [rax + 0x10]
mov r12, qword [rax]
movsd qword [rbp - 0x80], xmm0
jmp 0x180096d1e
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], r9
mov dword [rsp + 0x28], 0x17
lea r8, [rbp + 0x48]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
xor ecx, ecx
call fcn.1800393b0
jmp 0x180096d1e
movsxd rax, dword [r11 + 0x3c]
mov rcx, qword [r11 + 0x30]
lea rdx, [rax + rax*2]
mov eax, dword [r8]
mov dword [rcx + rdx*8 + 4], eax
movsxd rax, dword [r11 + 0x3c]
mov rcx, qword [r11 + 0x30]
lea rdx, [rax + rax*2]
mov rax, qword [r10]
mov qword [rcx + rdx*8 + 8], rax
jmp case.0x180096785.27
mov ecx, dword [r11 + 0x3c]
mov eax, dword [r11 + 0x38]
cmp ecx, eax
jl 0x180096aff
mov rcx, qword [r11 + 0x30]
add eax, eax
mov dword [r11 + 0x38], eax
cdqe
lea rdx, [rax + rax*2]
shl rdx, 3
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov r11, qword [rsp + 0x40]
mov qword [r11 + 0x30], rax
mov ecx, dword [r11 + 0x3c]
mov eax, dword [r11 + 0x38]
cmp ecx, eax
jge 0x180096ad0
movsxd rax, ecx
mov rcx, qword [r11 + 0x30]
lea rdx, [rax + rax*2]
mov eax, dword [r14]
mov dword [rcx + rdx*8], eax
jmp case.0x180096785.27
xor r9d, r9d
lea rdx, [rbp + 0x110]
xor r8d, r8d
lea ecx, [r9 + 0x70]
call fcn.1800a5ae0
lea r9, [rsp + 0x48]
mov qword [rsp + 0x48], 0x80
mov r8d, 0x5e
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x260]
call fcn.1800a6190
jmp 0x180096d1e
mov rax, qword [r12 + 0x18]
mov qword [r13 + 0x20], rax
mov qword [r12 + 0x18], r13
jmp case.0x180096785.27
mov r9d, 0x29
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
lea rcx, [rbp - 0x38]
call fcn.1800961a0
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x68]
jmp 0x180096a76
xorps xmm0, xmm0
movups xmmword [rbp + 0x1e0], xmm0
movups xmmword [rbp + 0x1f0], xmm0
movups xmmword [rbp + 0x200], xmm0
movups xmmword [rbp + 0x210], xmm0
movups xmmword [rbp + 0x220], xmm0
movups xmmword [rbp + 0x230], xmm0
movups xmmword [rbp + 0x240], xmm0
movups xmmword [rbp + 0x250], xmm0
jmp case.0x180096785.27
mov dword [rsp + 0x48], r9d
lea rcx, [rsp + 0x48]
mov r9, r14
mov dword [rsp + 0x28], 0x106
xor r8d, r8d
mov qword [rsp + 0x20], r10
mov rdx, r11
call fcn.1800139a0
mov r13, rax
jmp 0x180096d1e
mov r8, r9
nop word [rax + rax]
mov edx, 0x10f
cmp edx, 0x10f
jne 0x180096c3e
movzx ecx, byte [rbp + r8 + 0x1e0]
movzx eax, cl
xor al, 0x5c
xor cl, 0x36
mov byte [rbp + r8 + 0x260], al
mov byte [rbp + r8 + 0x2e0], cl
add edx, 0x35
cmp edx, 0x144
jb 0x180096c15
inc r8
cmp r8, 0x80
jl 0x180096c10
xor r9d, r9d
lea rdx, [rbp + 0x110]
xor r8d, r8d
lea ecx, [r9 + 0x70]
call fcn.1800a5ae0
jmp 0x180096d1e
mov r9d, 0x29
lea r8, [rbp + 0xc8]
lea rdx, [rbp + 0xc8]
mov rcx, r10
call fcn.1800961a0
jmp 0x180096d1e
lea r9, [rsp + 0x48]
mov qword [rsp + 0x48], 0x40
mov r8d, 0x5e
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x1e0]
call fcn.1800a6190
mov rcx, qword [rsp + 0x58]
lea rdx, [rbp + 0x110]
mov r8d, pe_nt_image_headers64
call fcn.180063400
jmp 0x180096d1e
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x60], rbx
jmp case.0x180096785.27
mov eax, dword [r10]
mov rdx, r11
cmp eax, 0x80
jbe 0x180096d0f
mov qword [rsp + 0x20], r9
lea r8, [rbp + 0x1e0]
mov r9d, 0x48
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x48]
call fcn.180062e00
jmp 0x180096d1e
mov r8, rax
lea rcx, [rbp + 0x1e0]
call sub.VCRUNTIME140.dll_memcpy
mov r11, qword [rsp + 0x40]
lea rdx, [0x180000000]
mov r10, qword [rsp + 0x50]
inc esi
inc edi
xor r9d, r9d
cmp esi, r15d
jae 0x180096d72
mov r8, qword [rsp + 0x68]
jmp 0x180096760
movsxd rax, r10d
lea rcx, [rax + rax*2]
movups xmm0, xmmword [r11 + rcx*8]
movups xmmword [r14], xmm0
movsd xmm1, qword [r11 + rcx*8 + 0x10]
movsd qword [r14 + 0x10], xmm1
jmp case.0x180096785.12
mov r13d, dword [rbp + 0x3e0]
mov rdi, qword [rsp + 0x58]
mov r14d, r13d
imul r15d, r13d, 0x230
cmp r13d, r15d
ja 0x1800972c9
lea r12d, [r13*4]
add r12d, r13d
shl r12d, 2
jmp 0x180096db8
mov r10, qword [rsp + 0x50]
xor r9d, r9d
cmp r14d, 0x829f
ja 0x180097260
je 0x1800972a9
cmp r14d, 0x418b
ja 0x18009707e
je 0x180097008
cmp r14d, 0x1c5b
ja 0x180096f11
je 0x180096ee1
cmp r14d, 0x77
je 0x180096e9b
cmp r14d, 0x9c3
je 0x180096e68
cmp r14d, 0x130f
jne 0x1800972bd
mov esi, 6
nop word [rax + rax]
mov qword [rsp + 0x38], r9
lea rax, [rbp + 8]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 8]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180096e20
lea r8, [rbp + 8]
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x68]
jmp 0x1800972b2
mov qword [rsp + 0x38], r9
lea rax, [rbp + 8]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 0xe8]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
jmp 0x1800972bd
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 0x68]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
mov rcx, qword [rsp + 0x50]
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0xe8]
jmp 0x1800972b2
mov qword [rsp + 0x38], r9
lea rax, [rbp - 0x18]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 8]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
jmp 0x1800972bd
cmp r14d, 0x25a7
je 0x180096fb8
cmp r14d, 0x2ef3
je 0x180096f88
cmp r14d, 0x383f
jne 0x1800972bd
mov esi, 0x1d
nop dword [rax]
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0x28]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 0x28]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180096f40
lea r8, [rbp + 0x28]
lea rdx, [rbp + 0x28]
lea rcx, [rbp - 0x18]
jmp 0x1800972b2
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0x28]
mov qword [rsp + 0x30], r9
lea r8, [rbp - 0x18]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
jmp 0x1800972bd
mov esi, 0xe
nop dword [rax]
mov qword [rsp + 0x38], r9
lea rax, [rbp - 0x18]
mov qword [rsp + 0x30], r9
lea r8, [rbp - 0x18]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180096fc0
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 8]
jmp 0x1800972b2
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 0x28]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
mov esi, 0x3b
nop dword [rax + rax]
xor eax, eax
lea r8, [rbp + 0xa8]
mov qword [rsp + 0x38], rax
xor r9d, r9d
mov qword [rsp + 0x30], rax
xor edx, edx
lea rax, [rbp + 0xa8]
mov dword [rsp + 0x28], 0x17
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.1800393b0
sub rsi, 1
jne 0x180097040
jmp 0x1800972bd
cmp r14d, 0x66bb
ja 0x1800971a7
je 0x18009716a
cmp r14d, 0x4ad7
je 0x180097115
cmp r14d, 0x5423
je 0x1800970bc
cmp r14d, 0x5d6f
jne 0x1800972bd
lea rdi, [rbp + 0x88]
jmp 0x1800972bd
mov esi, 6
mov qword [rsp + 0x38], r9
lea rax, [rbp + 0x88]
mov qword [rsp + 0x30], r9
lea r8, [rbp + 0x88]
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x1800970c1
lea r8, [rbp + 0x88]
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x68]
jmp 0x1800972b2
mov r9d, 0x29
lea r8, [rbp + 0xa8]
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x28]
call fcn.1800961a0
xor eax, eax
lea r8, [rbp + 0xa8]
mov qword [rsp + 0x38], rax
xor r9d, r9d
mov qword [rsp + 0x30], rax
xor edx, edx
lea rax, [rbp + 0x88]
mov dword [rsp + 0x28], 0x17
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.1800393b0
jmp 0x1800972bd
mov esi, 2
nop
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180097170
jmp 0x1800972bd
cmp r14d, 0x7007
je 0x180097213
cmp r14d, 0x7953
jne 0x1800972bd
mov r9d, 0x29
lea rcx, [rbp - 0x58]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
mov esi, 2
nop word [rax + rax]
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov r8, rdi
mov qword [rsp + 0x30], rax
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x1800971e0
jmp 0x1800972bd
mov r9d, 0x29
mov r8, rdi
mov rdx, rdi
mov rcx, r10
call fcn.1800961a0
mov esi, 4
nop dword [rax]
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov r8, rdi
mov qword [rsp + 0x30], rax
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097230
jmp 0x1800972bd
cmp r14d, 0xc3b3
ja 0x18009750b
je 0x1800974c4
cmp r14d, 0xa7cf
ja 0x180097458
je 0x18009741c
cmp r14d, 0x8beb
je 0x1800973d7
cmp r14d, 0x9537
je 0x180097391
cmp r14d, 0x9e83
jne 0x1800972bd
mov rcx, r10
mov r8, rdi
mov rdx, rdi
mov r9d, 0x29
call fcn.1800961a0
add r14d, r12d
cmp r14d, r15d
jbe 0x180096db0
lea r14d, [r13 + 0x1148]
cmp r13d, r14d
jae case.0x180096785.12
mov r15, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
cmp r13d, 0x91b
ja 0x1800979a1
je 0x180097d3c
cmp r13d, 0x4c9
ja 0x1800977e1
je 0x180097791
cmp r13d, 0x251
ja 0x1800976ed
je 0x180097d3c
cmp r13d, 0x77
je 0x1800976e1
cmp r13d, 0x115
je 0x1800976a7
cmp r13d, 0x1b3
jne 0x180097d50
mov r9d, 0x29
mov r8, rdi
mov rdx, rdi
mov rcx, rbx
call fcn.1800961a0
xor r12d, r12d
mov esi, 3
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097360
jmp 0x180097d50
mov esi, 2
nop word [rax + rax]
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x1800973a0
jmp 0x1800972bd
mov esi, 2
nop dword [rax]
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x1800973e0
mov rcx, qword [rsp + 0x50]
jmp 0x1800972ac
mov esi, 4
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180097421
jmp 0x1800972bd
cmp r14d, 0xb11b
je 0x180097477
cmp r14d, 0xba67
jne 0x1800972bd
lea rcx, [rbp - 0x38]
jmp 0x1800972ac
mov r9d, 0x29
lea rcx, [rbp - 0x58]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
mov esi, 3
xor eax, eax
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov r8, rdi
mov qword [rsp + 0x30], rax
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097491
jmp 0x1800972bd
mov esi, 4
nop dword [rax]
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x1800974d0
lea rcx, [rbp - 0x58]
jmp 0x1800972ac
cmp r14d, 0xe8e3
ja 0x180097648
je 0x18009760c
cmp r14d, 0xccff
je 0x1800975cc
cmp r14d, 0xd64b
je 0x18009758c
cmp r14d, 0xdf97
jne 0x1800972bd
mov esi, 2
nop word [rax + rax]
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180097550
mov rcx, qword [rsp + 0x50]
jmp 0x1800972ac
mov esi, 4
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180097591
lea rcx, [rbp - 0x38]
jmp 0x1800972ac
mov esi, 5
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x1800975d1
lea rcx, [rbp - 0x58]
jmp 0x1800972ac
mov esi, 2
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180097611
jmp 0x1800972bd
cmp r14d, 0xf22f
je 0x1800972a9
cmp r14d, 0xfb7b
jne 0x1800972bd
mov esi, 5
nop word [rax + rax]
mov qword [rsp + 0x38], r9
mov r8, rdi
mov qword [rsp + 0x30], r9
xor edx, edx
mov dword [rsp + 0x28], 0x17
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
mov r9d, 0
sub rsi, 1
jne 0x180097670
jmp 0x1800972bd
mov esi, 2
xor r12d, r12d
nop
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x1800976b0
jmp 0x180097d50
lea rcx, [rbp + 0xc8]
jmp 0x180097d3f
cmp r13d, 0x2ef
je 0x180097751
cmp r13d, 0x38d
je 0x180097d3c
cmp r13d, 0x42b
jne 0x180097d50
mov esi, 2
xor r12d, r12d
nop dword [rax + rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097720
jmp 0x180097d50
mov esi, 4
xor r12d, r12d
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097760
jmp 0x180097d50
mov r9d, 0x29
mov r8, rdi
mov rdx, rdi
mov rcx, rbx
call fcn.1800961a0
xor r12d, r12d
mov esi, 0xa
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x1800977b0
jmp 0x180097d50
cmp r13d, 0x741
ja 0x180097911
je 0x180097d3c
cmp r13d, 0x567
je 0x1800978c1
cmp r13d, 0x605
je 0x180097871
cmp r13d, 0x6a3
jne 0x180097d50
mov r9d, 0x29
lea rcx, [rbp + 0xe8]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
xor r12d, r12d
mov esi, 2
nop word [rax + rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097840
jmp 0x180097d50
mov r9d, 0x29
lea rcx, [rbp - 0x58]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
xor r12d, r12d
mov esi, 9
nop
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097890
jmp 0x180097d50
mov r9d, 0x29
lea rcx, [rbp - 0x58]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
xor r12d, r12d
mov esi, 4
nop
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x1800978e0
jmp 0x180097d50
cmp r13d, 0x7df
je 0x180097961
cmp r13d, 0x87d
jne 0x180097d50
mov esi, 3
xor r12d, r12d
nop
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097930
jmp 0x180097d50
mov esi, 3
xor r12d, r12d
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097970
jmp 0x180097d3c
cmp r13d, 0xd6d
ja 0x180097be1
je 0x180097b91
cmp r13d, 0xb93
ja 0x180097ae1
je 0x180097c51
cmp r13d, 0x9b9
je 0x180097aa1
cmp r13d, 0xa57
je 0x180097a41
cmp r13d, 0xaf5
jne 0x180097d50
mov r9d, 0x29
mov r8, rdi
mov rdx, rdi
mov rcx, rbx
call fcn.1800961a0
xor r12d, r12d
mov esi, 5
nop word [rax + rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097a10
jmp 0x180097d50
mov r9d, 0x29
lea rcx, [rbp + 0xc8]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
xor r12d, r12d
mov esi, 2
nop dword [rax]
nop word [rax + rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097a70
jmp 0x180097d50
mov esi, 5
xor r12d, r12d
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097ab0
jmp 0x180097d50
cmp r13d, 0xc31
je 0x180097b51
cmp r13d, 0xccf
jne 0x180097d50
mov r9d, 0x29
lea rcx, [rbp - 0x38]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
xor r12d, r12d
mov esi, 2
nop dword [rax]
nop dword [rax + rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097b20
jmp 0x180097d50
mov esi, 4
xor r12d, r12d
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097b60
jmp 0x180097d50
mov r9d, 0x29
mov r8, rdi
mov rdx, rdi
mov rcx, rbx
call fcn.1800961a0
xor r12d, r12d
mov esi, 8
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097bb0
jmp 0x180097d50
cmp r13d, 0xfe5
ja 0x180097cb1
je 0x180097d3c
cmp r13d, 0xe0b
je 0x180097c5a
cmp r13d, 0xea9
je 0x180097c51
cmp r13d, 0xf47
jne 0x180097d50
mov esi, 3
xor r12d, r12d
nop dword [rax + rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097c20
jmp 0x180097d50
lea rcx, [rbp - 0x38]
jmp 0x180097d3f
mov r9d, 0x29
lea rcx, [rbp - 0x38]
mov r8, rdi
mov rdx, rdi
call fcn.1800961a0
xor r12d, r12d
mov esi, 3
nop word [rax + rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097c80
jmp 0x180097d50
cmp r13d, 0x1083
je 0x180097d05
cmp r13d, 0x1121
jne 0x180097d50
mov esi, 8
xor r12d, r12d
nop
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097cd0
mov rdx, r15
lea rcx, [rbp + 0x48]
jmp 0x180097d42
mov esi, 6
xor r12d, r12d
nop dword [rax]
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov r8, rdi
mov dword [rsp + 0x28], 0x17
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1800393b0
sub rsi, 1
jne 0x180097d10
mov rcx, rbx
mov rdx, rdi
mov r9d, 0x29
mov r8, rdi
call fcn.1800961a0
add r13d, 0x9e
cmp r13d, r14d
jb 0x1800972e3
mov rbx, qword [rsp + 0x60]
mov rax, rbx
mov rcx, qword [rbp + 0x360]
xor rcx, rsp
call fcn.1800bcd70
add rsp, 0x478
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret