Function at 0x140071810
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 8], rbx
xchg rsi, rdi
mov qword [rsp + 0x18], rdi
xchg rsi, rdi
mov qword [rsp + 0x20], rdi
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r15
mov rbp, rsp
sub rsp, 0x60
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm7
xchg rdx, r14
mov rbx, r14
xchg rdx, r14
xchg r8, rcx
mov r14, r8
xchg r8, rcx
movzx eax, byte [rdx]
cmp eax, 8
ja case.default.0x140071883
lea rcx, [0x140000000]
mov r8d, dword [rcx + rax*4 + 0x731d3]
add r8, rcx
jmp r8
xchg r11, rcx
mov r11, qword [r14 + 8]
xchg rcx, r11
mov rax, qword [rcx]
mov dl, 0x1c
add dl, 0x21
sub dl, 0x35
sub dl, 5
add dl, 0x13
add dl, 0x10
sub dl, 0x24
xor dl, 0xf4
call qword [rax]
jmp case.default.0x140071883
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
cmp byte [rdx + 8], 0
setne dl
sub dl, 0x22
add dl, 0x16
call qword [rax]
jmp case.default.0x140071883
mov rax, qword [rdx + 8]
test rax, rax
js 0x140071b9f
cmp rax, 0x17
jg 0x1400718fc
xor r8d, r8d
movzx edx, al
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
call fcn.140048da0
jmp case.default.0x140071883
xchg rbp, rcx
mov rbp, qword [r14 + 8]
xchg rbp, rcx
cmp rax, 0xff
jg 0x1400719a4
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
mov dl, 0x4c
sub dl, 0x2a
xor dl, 0xa
xor dl, 0x7d
sub dl, 0x1a
sub dl, 0x25
add dl, 0x4b
sub dl, 0x49
call qword [rax]
movzx eax, byte [rbx + 8]
mov byte [rbp + 0x28], al
cmp byte [r14], 0
je 0x140071950
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg r15, rcx
mov r15, qword [r14 + 8]
xchg r15, rcx
xchg r13, rax
mov r13, qword [rcx]
xchg r13, rax
mov r8d, 0x36fe37ef
add r8d, 0x42f30a85
xor r8d, 0x35cd7c07
sub r8d, 0x2ffba7c5
xor r8d, 0x4c5f9ce8
xor r8d, 0x2b50040b
xor r8d, 0x12b26c4b
sub r8d, 0x69fd6205
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
cmp rax, 0xffff
jg 0x140071a47
xchg r15, rax
mov r15, qword [rcx]
xchg r15, rax
mov dl, 0x7d
sub dl, 0x25
add dl, 0x23
sub dl, 0xe
sub dl, 0x6c
add dl, 0x70
sub dl, 0x58
call qword [rax]
movzx eax, word [rbx + 8]
mov word [rbp + 0x28], ax
cmp byte [r14], 0
je 0x1400719ec
lea rdx, [rbp + 0x2a]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rdi, rcx
mov rdi, qword [r14 + 8]
xchg rdi, rcx
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
mov r8d, 0xf1d862a
add r8d, 0x5b609638
xor r8d, 0x7e7eab47
xor r8d, 0xb108a85
add r8d, 0x22f82e41
sub r8d, 0x27839925
add r8d, 0x23457f03
add r8d, 0x1d2fff0c
sub r8d, 0x5afa50c9
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
xchg r8, r10
mov r10, qword [rcx]
xchg r10, r8
mov esi, 0x6c8ffdf3
xor esi, 0x74a205d5
add esi, 0x504732d4
sub esi, 0x43691f83
add esi, 0x3400b678
sub esi, 0xa71eb77
add esi, 0xb1652987
cmp rax, rsi
jg 0x140071b0d
mov dl, 0x75
xor dl, 0x1c
xor dl, 0x31
add dl, 0x16
sub dl, 0x4e
add dl, 0x52
xor dl, 0x3d
xor dl, 0x55
call qword [r8]
mov eax, dword [rbx + 8]
mov dword [rbp + 0x28], eax
cmp byte [r14], 0
je 0x140071ab9
lea rdx, [rbp + 0x2c]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg r9, rcx
mov r9, qword [r14 + 8]
xchg rcx, r9
xchg r12, rax
mov r12, qword [rcx]
xchg r12, rax
mov r8d, 0x29572362
xor r8d, 0x778ee94a
xor r8d, 0x5f5e4319
add r8d, 0x375dcc8d
sub r8d, 0xcca4fad
add r8d, 0x131f17b5
sub r8d, 0x1a4558c3
sub r8d, 0x24f4c4ff
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
mov dl, 0x51
sub dl, 0x11
add dl, 5
xor dl, 0x40
add dl, 0x77
sub dl, 0x4f
xor dl, 0x4f
add dl, 0x1c
sub dl, 0x63
call qword [r8]
xchg rbp, rax
mov rbp, qword [rbx + 8]
xchg rbp, rax
xchg r9, rax
mov qword [rbp + 0x28], r9
xchg r9, rax
cmp byte [r14], 0
je 0x140071b51
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
xchg rsi, rax
mov rsi, qword [rcx]
xchg rsi, rax
mov r8d, 0x1ffbcd0c
sub r8d, 0x1d34097e
add r8d, 0x259ea778
xor r8d, 0x3ae6cd34
xor r8d, 0x2bbd3aaf
xor r8d, 0x9948830
sub r8d, 0x2e7fbfea
sub r8d, 0x22954bb
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
xchg rsi, rbx
mov rsi, rax
xchg rbx, rsi
not rbx
cmp rax, 0xffffffffffffffe8
jl 0x140071bce
lea edx, [rbx + 0x20]
xor r8d, r8d
xchg rbx, r14
mov rcx, rbx
xchg r14, rbx
call fcn.140048da0
jmp case.default.0x140071883
xchg rcx, rdx
mov rdx, qword [r14 + 8]
xchg rcx, rdx
mov rax, qword [rcx]
cmp rbx, 0xff
jg 0x140071c6b
mov dl, 0x6f
add dl, 5
add dl, 9
sub dl, 0x54
xor dl, 8
add dl, 0x32
sub dl, 0x20
xor dl, 0x6e
sub dl, 0x25
call qword [rax]
mov byte [rbp + 0x28], bl
cmp byte [r14], 0
je 0x140071c1e
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg r13, rcx
mov r13, qword [r14 + 8]
xchg rcx, r13
xchg rbp, rax
mov rbp, qword [rcx]
xchg rbp, rax
mov r8d, 0x6d77b003
sub r8d, 0x582d252f
add r8d, 0x3436e552
xor r8d, 0x63c6746
sub r8d, 0x45d0e7e3
add r8d, 0x65fd8ea4
sub r8d, 0x6fe9be20
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
cmp rbx, 0xffff
jg 0x140071cec
mov dl, 1
xor dl, 0xa
xor dl, 0x7d
sub dl, 0x22
sub dl, 0x1f
xor dl, 0x3c
add dl, 0x30
call qword [rax]
mov word [rbp + 0x28], bx
cmp byte [r14], 0
je 0x140071ca9
lea rdx, [rbp + 0x2a]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
mov r8d, 0x4bc66101
sub r8d, 0x222f7c36
add r8d, 0x121df95d
xor r8d, 0x1ed2cd54
add r8d, 0x8622227
xor r8d, 0x7272f963
sub r8d, 0x5fbaccbe
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
mov esi, 0x6298d166
sub esi, 0x37b3725
add esi, 0x2e33711
xor esi, 0x22d77aff
add esi, 0x13ec93a3
sub esi, 0x42ff2f1d
add esi, 0x4e29e572
sub esi, 0x4d7f7120
xor esi, 0xed907b7a
cmp rbx, rsi
jg 0x140071dab
mov dl, 0xe
add dl, 0x17
xor dl, 0x6d
sub dl, 0x41
xor dl, 0x11
xor dl, 0x5a
xor dl, 0x66
xor dl, 0x10
call qword [rax]
mov dword [rbp + 0x28], ebx
cmp byte [r14], 0
je 0x140071d5d
lea rdx, [rbp + 0x2c]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
mov r8d, 0x390deb25
add r8d, 0x111dd6bb
xor r8d, 0x2c8e3dcb
xor r8d, 0x5ff68be8
add r8d, 0x268d4ec9
xor r8d, 0x6d63455e
sub r8d, 0xf8c5264
sub r8d, 0x22f7316a
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
mov dl, 0x45
add dl, 0x29
xor dl, 0x77
add dl, 0x54
sub dl, 7
xor dl, 0x4d
add dl, 0x10
call qword [rax]
xchg r9, rbx
mov qword [rbp + 0x28], r9
xchg r9, rbx
cmp byte [r14], 0
je 0x140071de2
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rcx, r10
mov r10, qword [r14 + 8]
xchg r10, rcx
mov rax, qword [rcx]
mov r8d, 0x601fe0f9
xor r8d, 0x2472340f
sub r8d, 0x3873bf30
add r8d, 0xe636b1e
xor r8d, 0x2f55cb1a
sub r8d, 0x35084bf6
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
xchg rsi, rax
mov rsi, qword [rdx + 8]
xchg rsi, rax
cmp rax, 0x17
ja 0x140071eab
mov byte [rbp + 0x28], al
cmp byte [r14], 0
je 0x140071e50
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rcx, r10
mov r10, qword [r14 + 8]
xchg rcx, r10
xchg r10, rax
mov r10, qword [rcx]
xchg r10, rax
mov r8d, 0x6e9941b2
sub r8d, 0x24ff6444
xor r8d, 0x280e844a
sub r8d, 0x328a503e
add r8d, 0x50aa1a08
xor r8d, 0x38b29bb6
xor r8d, 0x6e8b541
add r8d, 0x8a0af08
sub r8d, 0x4a8dbb20
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
mov rcx, qword [r14 + 8]
cmp rax, 0xff
ja 0x140071f50
mov rax, qword [rcx]
mov dl, 3
add dl, 0x3f
xor dl, 0x1d
xor dl, 0x36
sub dl, 0x52
xor dl, 0x39
add dl, 0
xor dl, 0x36
call qword [rax]
movzx eax, byte [rbx + 8]
mov byte [rbp + 0x28], al
cmp byte [r14], 0
je 0x140071ef5
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rcx, r13
mov r13, qword [r14 + 8]
xchg rcx, r13
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
mov r8d, 0x75ab384e
xor r8d, 0x410b6f9d
sub r8d, 0xc8a7040
xor r8d, 0x4c07af29
xor r8d, 0xec2cc26
sub r8d, 0x3dee9dab
xor r8d, 0x407763be
sub r8d, 0xcf44dcd
sub r8d, 0x5fa23781
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
cmp rax, 0xffff
ja 0x140071fe4
mov rax, qword [rcx]
mov dl, 0x3c
add dl, 9
xor dl, 0x7e
sub dl, 0x11
add dl, 0x3b
sub dl, 0x3f
sub dl, 0xa
xor dl, 5
call qword [rax]
movzx eax, word [rbx + 8]
mov word [rbp + 0x28], ax
cmp byte [r14], 0
je 0x140071f97
lea rdx, [rbp + 0x2a]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rcx, rdx
mov rdx, qword [r14 + 8]
xchg rcx, rdx
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
mov r8d, 0x6326f4eb
sub r8d, 0x64b4915
xor r8d, 0x3b60880d
add r8d, 0xe98c3f8
xor r8d, 0x5db64810
add r8d, 0x1e69de5c
xor r8d, 0x4a4f8e1d
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
xchg r8, r15
mov r15, qword [rcx]
xchg r8, r15
mov esi, 0x78126b3a
sub esi, 0x13bb968c
sub esi, 0xdf75551
sub esi, 0x133b4ef9
sub esi, 0xfd9a323
xor esi, 0xccb572be
cmp rax, rsi
ja 0x140072049
mov dl, 0x6f
sub dl, 7
sub dl, 0x32
add dl, 0x37
sub dl, 0x5c
add dl, 0x29
xor dl, 0x20
call qword [r8]
xor r8d, r8d
mov edx, dword [rbx + 8]
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
call fcn.140048ed0
jmp case.default.0x140071883
mov dl, 0x47
sub dl, 0x38
xor dl, 0x57
sub dl, 0xa
sub dl, 0x1c
sub dl, 0x10
sub dl, 7
call qword [r8]
xor r8d, r8d
xchg r14, rdx
mov r14, qword [rbx + 8]
xchg r14, rdx
xchg r15, rcx
mov r15, r14
xchg rcx, r15
call fcn.140048f50
jmp case.default.0x140071883
movsd xmm6, qword [rdx + 8]
ucomisd xmm6, xmm6
setp al
cmp al, 1
jne 0x1400720e8
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
mov dl, 0x2f
add dl, 0x2a
xor dl, 0x21
xor dl, 0x47
xor dl, 0xd
xor dl, 5
add dl, 0xd
sub dl, 0x33
add dl, 0xe8
call qword [rax]
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
mov dl, 0x3e
add dl, 0x37
sub dl, 0x45
add dl, 0x4a
sub dl, 0x6e
add dl, 0x26
xor dl, 0x4c
call qword [rax]
mov rcx, qword [r14 + 8]
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
xor edx, edx
call qword [rax]
jmp case.default.0x140071883
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll__dclass
cmp ax, 1
jne 0x1400721b7
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
mov dl, 0x36
xor dl, 0x58
sub dl, 0x22
sub dl, 0x46
add dl, 0x48
sub dl, 0x2d
xor dl, 0x12
add dl, 0xc6
call qword [rax]
xchg rcx, r12
mov r12, qword [r14 + 8]
xchg rcx, r12
mov rax, qword [rcx]
xchg r8, rsi
mov rsi, qword [rax]
xchg r8, rsi
mov eax, 0x63741029
sub eax, 0x1ffba7c1
sub eax, 0x3273e97e
xor eax, 0xc484af3
add eax, 0x5fa20ee1
xor eax, 0x1bc56ebc
sub eax, 0x672b2b4a
mov edx, 0x7053245e
sub edx, 0x27ed1130
xor edx, 0x128851d7
sub edx, 0x1fcd55e
xor edx, 0x5582b7e1
xor edx, 0x3d72156f
xor edx, 0x76e164bf
xor edx, 0x24bac32e
xor edx, 0x625a68f8
xchg rbx, rsi
movsd xmm1, qword [rsi + 8]
xchg rsi, rbx
xorps xmm0, xmm0
comisd xmm1, xmm0
cmova eax, edx
movzx edx, al
call r8
mov rcx, qword [r14 + 8]
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
xor edx, edx
call qword [rax]
jmp case.default.0x140071883
comisd xmm6, xmmword [0x140002c68]
jb 0x140072286
movsd xmm0, qword [0x140002c50]
comisd xmm0, xmm6
jb 0x140072286
cvtpd2ps xmm7, xmm6
cvtps2pd xmm0, xmm7
ucomisd xmm0, xmm6
jp 0x140072286
jne 0x140072286
mov rcx, qword [r14 + 8]
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
mov dl, 0x32
sub dl, 0xf
add dl, 6
sub dl, 0xf
add dl, 0x59
xor dl, 0x4b
xor dl, 0x40
xor dl, 0x6d
add dl, 0xe5
call qword [rax]
xchg r14, rbp
movss dword [r14 + 0x28], xmm7
xchg r14, rbp
cmp byte [r14], 0
je 0x140072238
lea rdx, [rbp + 0x2c]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
xchg r11, rax
mov r11, qword [rcx]
xchg r11, rax
mov r8d, 0x4ceb0cdd
xor r8d, 0x73b656c2
sub r8d, 0x188e43ed
xor r8d, 0x3813cc4a
xor r8d, 0x3d292b57
add r8d, 0x39e932ac
xor r8d, 0x19ea51c4
sub r8d, 0x4435721b
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
mov rcx, qword [r14 + 8]
xchg r11, rax
mov r11, qword [rcx]
xchg r11, rax
mov dl, 0x67
xor dl, 3
add dl, 0x13
sub dl, 0x3f
add dl, 0x13
sub dl, 0x42
add dl, 0x63
sub dl, 0x12
add dl, 0xa1
call qword [rax]
xchg rdi, rbp
movsd qword [rdi + 0x28], xmm6
xchg rdi, rbp
cmp byte [r14], 0
je 0x1400722cf
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
mov r8d, 0x3a51b4cd
add r8d, 0x29b9065f
sub r8d, 0x2255a3ed
xor r8d, 0x61974af1
add r8d, 0xd6abba1
xor r8d, 0x397a2062
xor r8d, 0x596ac8a4
xor r8d, 0x4d9df1a1
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp case.default.0x140071883
xchg r12, rax
mov r12, qword [rdx + 8]
xchg r12, rax
xchg r15, r12
mov r12, qword [rax + 0x10]
xchg r15, r12
cmp r15, 0x17
ja 0x140072357
lea edx, [r15 + 0x60]
xor r8d, r8d
xchg rdi, rcx
mov rdi, r14
xchg rdi, rcx
call fcn.140048da0
lea rdi, [r14 + 8]
jmp 0x14007250a
lea rdi, [r14 + 8]
mov rcx, qword [rdi]
xchg rsi, rax
mov rsi, qword [rcx]
xchg rsi, rax
cmp r15, 0xff
ja 0x1400723e5
mov dl, 0x66
xor dl, 0x68
add dl, 0x3a
add dl, 0x1a
sub dl, 0xf
add dl, 0x25
call qword [rax]
mov byte [rbp + 0x28], r15b
cmp byte [r14], 0
je 0x1400723a0
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg r11, rcx
mov r11, qword [rdi]
xchg r11, rcx
xchg r11, rax
mov r11, qword [rcx]
xchg r11, rax
mov r8d, 0x504d969e
xor r8d, 0x15b6c1b2
sub r8d, 0xe98e10f
add r8d, 0xde20c52
xor r8d, 0x35d6d48f
xor r8d, 0x709256e1
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp 0x14007250a
cmp r15, 0xffff
ja 0x140072428
mov dl, 0x3b
xor dl, 0x38
add dl, 0x2d
add dl, 0xc
sub dl, 0xc
sub dl, 4
xor dl, 0x7d
xor dl, 0x60
add dl, 0x48
call qword [rax]
xor r8d, r8d
movzx edx, r15w
xchg r14, r8
mov rcx, r8
xchg r8, r14
call fcn.140048e30
jmp 0x14007250a
mov esi, 0x5e87165f
sub esi, 0x3085ea27
add esi, 0x3101a9fe
sub esi, 0x5a1711cd
add esi, 0x15093dc1
xor esi, 0x7030fc44
xor esi, 0x23204417
xor esi, 0x4aa19a04
add esi, 0xffbbdf82
cmp r15, rsi
ja 0x1400724e6
mov dl, 0x2d
add dl, 7
xor dl, 0x71
add dl, 4
add dl, 0x21
sub dl, 0x32
xor dl, 0x3e
add dl, 0x74
call qword [rax]
mov dword [rbp + 0x28], r15d
cmp byte [r14], 0
je 0x14007249a
lea rdx, [rbp + 0x2c]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rcx, r15
mov r15, qword [rdi]
xchg rcx, r15
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
mov r8d, 0x7bf76e39
sub r8d, 0x10d5c759
sub r8d, 0x115d510b
sub r8d, 0x4e469487
xor r8d, 0x48deba5e
xor r8d, 0xd5d0b5c
xor r8d, 0x4efe7048
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp 0x14007250a
mov dl, 0x7a
xor dl, 0x66
xor dl, 8
add dl, 0x39
sub dl, 0x2a
sub dl, 0x14
add dl, 0x6c
call qword [rax]
xor r8d, r8d
mov rdx, r15
mov rcx, r14
call fcn.140048f50
xchg rbp, rcx
mov rbp, qword [rdi]
xchg rcx, rbp
mov rax, qword [rcx]
xchg rdx, r9
mov r9, qword [rbx + 8]
xchg r9, rdx
xchg rsi, r8
mov rsi, qword [rdx + 0x10]
xchg r8, rsi
cmp qword [rdx + 0x18], 0x10
jb 0x140072538
mov rdx, qword [rdx]
call qword [rax + 8]
jmp case.default.0x140071883
xchg rsi, rax
mov rsi, qword [rdx + 8]
xchg rsi, rax
mov rdi, qword [rax + 8]
sub rdi, qword [rax]
sar rdi, 4
cmp rdi, 0x17
ja 0x140072573
lea edx, [rdi + 0x80]
xor r8d, r8d
mov rcx, r14
call fcn.140048da0
jmp 0x14007274d
xchg rcx, rbp
mov rbp, qword [r14 + 8]
xchg rcx, rbp
xchg r10, rax
mov r10, qword [rcx]
xchg r10, rax
cmp rdi, 0xff
ja 0x14007261c
mov dl, 0x74
sub dl, 0x72
add dl, 0x2c
sub dl, 6
xor dl, 0x61
add dl, 1
xor dl, 0x68
xor dl, 0x39
add dl, 0x7d
call qword [rax]
mov byte [rbp + 0x28], dil
cmp byte [r14], 0
je 0x1400725c8
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rdi, rcx
mov rdi, qword [r14 + 8]
xchg rcx, rdi
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
mov r8d, 0x7a8f5483
sub r8d, 0x21398f67
sub r8d, 0x331f028e
xor r8d, 0x6475b3e9
add r8d, 0x1ad2a78b
xor r8d, 0x41a9945d
xor r8d, 0xf720971
sub r8d, 0x13cd85dd
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp 0x14007274d
cmp rdi, 0xffff
ja 0x140072655
mov dl, 0x14
xor dl, 0x45
sub dl, 0x4d
add dl, 0x2b
add dl, 0
add dl, 0x6a
call qword [rax]
xor r8d, r8d
movzx edx, di
xchg rdx, r14
mov rcx, rdx
xchg rdx, r14
call fcn.140048e30
jmp 0x14007274d
mov esi, 0x5a151bd0
sub esi, 0x57bd1c3e
add esi, 0x68e012d4
add esi, 0x29259b4
xor esi, 0x42d51be4
sub esi, 0x24555ff9
xor esi, 0x12efabf1
xor esi, 0x7b99efad
xor esi, 0x9c43a3a6
cmp rdi, rsi
ja 0x140072717
mov dl, 0x2c
sub dl, 0x16
add dl, 0x5d
sub dl, 0x68
add dl, 0x73
sub dl, 0x14
add dl, 4
sub dl, 0x46
xor dl, 0xb2
call qword [rax]
mov dword [rbp + 0x28], edi
cmp byte [r14], 0
je 0x1400726c9
lea rdx, [rbp + 0x2c]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
mov r8d, 0x5a34bbe
xor r8d, 0x5ee80f27
sub r8d, 0x12ed6dac
xor r8d, 0x7c089199
add r8d, 0x4af41a2f
sub r8d, 0x88b8a3e
sub r8d, 0x1dff2b81
xor r8d, 0x58beabe0
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp 0x14007274d
mov dl, 0x18
add dl, 0x45
sub dl, 0x2b
sub dl, 0x1d
add dl, 0x4b
add dl, 0xc
sub dl, 0xe
sub dl, 0x59
add dl, 0x96
call qword [rax]
xor r8d, r8d
xchg r9, rdx
mov r9, rdi
xchg r9, rdx
xchg r13, rcx
mov r13, r14
xchg r13, rcx
call fcn.140048f50
xchg r12, rax
mov r12, qword [rbx + 8]
xchg r12, rax
xchg r13, rdi
mov r13, qword [rax + 8]
xchg r13, rdi
xchg r11, rbx
mov r11, qword [rax]
xchg rbx, r11
cmp rbx, rdi
je case.default.0x140071883
xchg rbp, rdx
mov rbp, rbx
xchg rbp, rdx
mov rcx, r14
call fcn.140071810
nop
sub rbx, 0x3ae5ba73
add rbx, 0x3ae5ba83
cmp rbx, rdi
jne 0x140072771
jmp case.default.0x140071883
mov rax, qword [rdx + 8]
mov esi, 0x322cffde
sub esi, 0x28fe5aa3
add esi, 0x600f5121
sub esi, 0x172ab1d2
sub esi, 0xb4e82a7
xor esi, 0x41291f5c
add esi, 0xf8122140
cmp byte [rax + 0x20], 0
je 0x140072bfb
mov rax, qword [rax + 0x18]
cmp rax, 0xff
ja 0x1400728e4
mov byte [rbp + 0x28], 0x35
add byte [rbp + 0x28], 0
add byte [rbp + 0x28], 0x26
xor byte [rbp + 0x28], 0x5b
xor byte [rbp + 0x28], 0x3b
xor byte [rbp + 0x28], 0x5c
sub byte [rbp + 0x28], 0x3f
xor byte [rbp + 0x28], 0x62
add byte [rbp + 0x28], 0x8e
cmp byte [r14], 0
je 0x140072821
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
mov r8d, 0x538a5b59
add r8d, 0x28f8bd20
sub r8d, 0x5117c17d
sub r8d, 0x20b1825a
add r8d, 0x26c028d8
add r8d, 0x2ee245f3
xor r8d, 0xa7dc0c4
sub r8d, 0x6a2183a8
lea rdx, [rbp + 0x28]
call qword [rax + 8]
xchg rdx, r11
mov r11, qword [rbx + 8]
xchg rdx, r11
cmp byte [rdx + 0x20], 0
je 0x140072892
mov rdx, qword [rdx + 0x18]
xor r8d, r8d
mov rcx, r14
call fcn.140048da0
jmp 0x140072bfb
nop
movabs rdx, 0xffffffff5a161e7e
sub rdx, 0x3fb7a2e2
sub rdx, 0x149e0604
add rdx, 0x33ab1bac
xor rdx, 0x2ee4f5c0
xor rdx, 0x6a5770ac
add rdx, 0x7fffffff
add rdx, 0x227ebd8
xor r8d, r8d
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
call fcn.140048da0
jmp 0x140072bfb
cmp rax, 0xffff
ja 0x1400729e2
mov byte [rbp + 0x28], 4
add byte [rbp + 0x28], 0x19
xor byte [rbp + 0x28], 0x32
xor byte [rbp + 0x28], 0x2b
xor byte [rbp + 0x28], 0x13
add byte [rbp + 0x28], 0x54
sub byte [rbp + 0x28], 0x51
add byte [rbp + 0x28], 0x11
add byte [rbp + 0x28], 0xae
cmp byte [r14], 0
je 0x14007292b
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rcx, r9
mov r9, qword [r14 + 8]
xchg rcx, r9
mov rax, qword [rcx]
mov r8d, 0x73695630
sub r8d, 0x53d52eef
add r8d, 0x37609d7c
add r8d, 0x194a15e7
sub r8d, 0x2b9c185f
xor r8d, 0x44a2c244
lea rdx, [rbp + 0x28]
call qword [rax + 8]
xchg r15, rdx
mov r15, qword [rbx + 8]
xchg rdx, r15
cmp byte [rdx + 0x20], 0
je 0x140072990
mov rdx, qword [rdx + 0x18]
xor r8d, r8d
mov rcx, r14
call fcn.140048e30
jmp 0x140072bfb
nop
movabs rdx, 0xffffffff33150ca6
add rdx, 0x3e4c1aa9
sub rdx, 0x1e2ec220
add rdx, 0xd631d69
sub rdx, 0x3df0bc24
sub rdx, 0x3736a9
add rdx, 0x7fffffff
add rdx, 0x5d927035
xor r8d, r8d
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
call fcn.140048e30
jmp 0x140072bfb
movzx ecx, byte [r14]
cmp rax, rsi
ja 0x140072b2e
mov byte [rbp + 0x28], 0x45
sub byte [rbp + 0x28], 0x13
add byte [rbp + 0x28], 0x3a
sub byte [rbp + 0x28], 0x44
xor byte [rbp + 0x28], 0x28
add byte [rbp + 0x28], 0xda
test cl, cl
je 0x140072a1c
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rcx, r10
mov r10, qword [r14 + 8]
xchg r10, rcx
mov rax, qword [rcx]
mov r8d, 0x4ebb6e9a
xor r8d, 0x2cb111e1
sub r8d, 0x33a66ec0
add r8d, 0x1d103336
add r8d, 0x1a58d707
sub r8d, 0x4a1adb4a
xor r8d, 0x42311530
xor r8d, 0x59832a9f
lea rdx, [rbp + 0x28]
call qword [rax + 8]
xchg r13, rdx
mov r13, qword [rbx + 8]
xchg r13, rdx
cmp byte [rdx + 0x20], 0
je 0x140072a84
mov rdx, qword [rdx + 0x18]
jmp 0x140072ace
nop
movabs rdx, 0xffffffff16b19c88
xor rdx, 0xd133847
add rdx, 0x6083cd1
xor rdx, 0xa0a04b4
xor rdx, 0x5a0aa236
sub rdx, 0x6b0d8828
xor rdx, 0x1871ec9e
xor rdx, 0x55e51220
add rdx, 0x7fffffff
add rdx, 0x34f7bfbc
mov dword [rbp + 0x28], edx
cmp byte [r14], 0
je 0x140072ae8
lea rdx, [rbp + 0x2c]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
xchg rdx, rcx
mov rdx, qword [r14 + 8]
xchg rdx, rcx
xchg r10, rax
mov r10, qword [rcx]
xchg r10, rax
mov r8d, 0x2e1a5e57
add r8d, 0x216dfaa6
add r8d, 0x205070be
sub r8d, 0x2e480a65
xor r8d, 0x101d4738
sub r8d, 0x518df86a
lea rdx, [rbp + 0x28]
call qword [rax + 8]
jmp 0x140072bfb
mov byte [rbp + 0x28], 0x61
sub byte [rbp + 0x28], 1
xor byte [rbp + 0x28], 0x23
sub byte [rbp + 0x28], 0x40
add byte [rbp + 0x28], 0x5b
xor byte [rbp + 0x28], 0x1c
add byte [rbp + 0x28], 0x99
test cl, cl
je 0x140072b5f
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov rcx, qword [r14 + 8]
mov rax, qword [rcx]
mov r8d, 0x73d43c49
sub r8d, 0x3a99f06d
add r8d, 0x1f7374aa
sub r8d, 0x2db7aa78
add r8d, 0x3d338eae
xor r8d, 0x79a77a33
sub r8d, 0x118ede8e
lea rdx, [rbp + 0x28]
call qword [rax + 8]
mov rdx, qword [rbx + 8]
cmp byte [rdx + 0x20], 0
je 0x140072bb4
mov rdx, qword [rdx + 0x18]
jmp 0x140072bf0
nop
movabs rdx, 0xffffffff363b8558
xor rdx, 0x47800c28
xor rdx, 0x241e7a80
sub rdx, 0x4ccdcc71
xor rdx, 0x1eb78a1a
xor rdx, 0x4d1d4ab9
add rdx, 0x7fffffff
xor rdx, 0x248d1824
xor r8d, r8d
mov rcx, r14
call fcn.140048f50
xchg rbp, rax
mov rbp, qword [rbx + 8]
xchg rbp, rax
mov r15, qword [rax + 8]
sub r15, qword [rax]
cmp r15, 0x17
ja 0x140072c6f
lea eax, [r15 + 0x40]
mov byte [rbp + 0x28], al
cmp byte [r14], 0
je 0x140072c32
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
lea rdi, [r14 + 8]
mov r8d, 0x4c5a8de2
sub r8d, 0x283c5a2f
sub r8d, 0x196cf674
add r8d, 0x55d0f8c2
sub r8d, 0x53c21ebe
add r8d, 0x435805e7
sub r8d, 0x50181d29
lea rdx, [rbp + 0x28]
jmp 0x140072e1b
lea rdi, [r14 + 8]
mov rcx, qword [rdi]
mov rax, qword [rcx]
cmp r15, 0xff
ja 0x140072cfb
mov dl, 0x67
sub dl, 0x54
add dl, 0x20
sub dl, 4
add dl, 0x35
xor dl, 0x3c
call qword [rax]
mov byte [rbp + 0x28], r15b
cmp byte [r14], 0
je 0x140072cb4
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov r8d, 0x641ef77d
add r8d, 0x1696c192
xor r8d, 0xe0a8982
sub r8d, 0x31fa2fd
sub r8d, 0x366bb5bf
add r8d, 0x15aea137
xor r8d, 0x60317818
xor r8d, 0x331a915c
sub r8d, 0x3c9904b
lea rdx, [rbp + 0x28]
jmp 0x140072e1b
cmp r15, 0xffff
ja 0x140072d38
mov dl, 0x6b
sub dl, 0x54
add dl, 0x41
sub dl, 0x33
add dl, 0x36
xor dl, 0x69
sub dl, 0x2d
add dl, 0x26
xor dl, 0x72
call qword [rax]
xor r8d, r8d
movzx edx, r15w
mov rcx, r14
call fcn.140048e30
jmp 0x140072e2e
cmp r15, rsi
ja 0x140072db2
mov dl, 0x2b
add dl, 0x4d
sub dl, 0x56
add dl, 0x5c
sub dl, 0xb
sub dl, 0x5e
xor dl, 0x4f
call qword [rax]
mov dword [rbp + 0x28], r15d
cmp byte [r14], 0
je 0x140072d72
lea rdx, [rbp + 0x2c]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov r8d, 0x70c30fb1
xor r8d, 0x59276de8
add r8d, 0x3c7dd0a1
xor r8d, 0x7bf6c3fd
add r8d, 0x39e48449
xor r8d, 0x286e2db4
sub r8d, 0x1c0c2ddb
sub r8d, 0x630b2b05
lea rdx, [rbp + 0x28]
jmp 0x140072e1b
mov dl, reloc.SHLWAPI.dll_SHCreateMemStream
add dl, 0x3b
sub dl, 0x32
xor dl, 0x22
add dl, 0x2d
sub dl, 9
call qword [rax]
mov qword [rbp + 0x28], r15
cmp byte [r14], 0
je 0x140072de0
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov r8d, 0x16326f8c
xor r8d, 0x6bbe3e79
xor r8d, 0x5c6c0cbb
xor r8d, 0x546ef82e
sub r8d, 0x32917998
xor r8d, 0xb49bbfd
xor r8d, 0x7a85fec0
sub r8d, 0x33316eed
lea rdx, [rbp + 0x28]
xchg r9, rcx
mov r9, qword [rdi]
xchg r9, rcx
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
call qword [rax + 8]
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rdx, qword [rbx + 8]
xchg r8, r15
mov r15, r8
xchg r15, r8
mov rdx, qword [rdx]
call qword [rax + 8]
jmp case.default.0x140071883
xchg rsi, rax
mov rsi, qword [rdx + 8]
xchg rsi, rax
xchg r15, rdi
mov r15, qword [rax + 8]
xchg rdi, r15
cmp rdi, 0x17
ja 0x140072e7b
lea edx, [rdi - 0x60]
xor r8d, r8d
mov rcx, r14
call fcn.140048da0
jmp 0x140073010
mov rcx, qword [r14 + 8]
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
cmp rdi, 0xff
ja 0x140072ef3
mov dl, 8
add dl, 0x19
add dl, 0x37
xor dl, 0x2b
sub dl, 0x30
add dl, 0x75
call qword [rax]
mov byte [rbp + 0x28], dil
cmp byte [r14], 0
je 0x140072ec1
lea rdx, [rbp + 0x29]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov r8d, 0x208bfe34
xor r8d, 0x57e74632
sub r8d, 0x1982ab83
sub r8d, 0x13a26ed6
add r8d, 0x10d23333
sub r8d, 0x5b19d0df
lea rdx, [rbp + 0x28]
jmp 0x140073002
cmp rdi, 0xffff
ja 0x140072f35
mov dl, 0x7c
sub dl, 0x4b
xor dl, 0x59
xor dl, 0x2d
sub dl, 0x2a
xor dl, 0x58
xor dl, 0x4d
add dl, 0xa
xor dl, 0xa1
call qword [rax]
xor r8d, r8d
movzx edx, di
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
call fcn.140048e30
jmp 0x140073010
mov esi, 0x6dfc335f
sub esi, 0x4dfcff38
sub esi, 0x16300a13
add esi, 0x5f7d07a0
xor esi, 0x41203991
sub esi, 0x15355f14
add esi, 0x64472cf6
add esi, 0x888229f8
cmp rdi, rsi
ja 0x140072fa1
mov dl, 0x3b
sub dl, 0x3a
add dl, 0x3c
sub dl, 0x22
xor dl, 0x4f
xor dl, 0x44
xor dl, 0x65
sub dl, 0x17
add dl, 0x5c
call qword [rax]
xor r8d, r8d
mov edx, edi
xchg r14, r10
mov rcx, r10
xchg r10, r14
call fcn.140048ed0
jmp 0x140073010
mov dl, 0x1a
add dl, 0x64
xor dl, 0x6c
add dl, 0x59
xor dl, 0x72
add dl, 4
sub dl, 0x11
add dl, 0xaf
call qword [rax]
mov qword [rbp + 0x28], rdi
cmp byte [r14], 0
je 0x140072fd5
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x28]
call fcn.1401fd7f0
mov r8d, 0x261395b7
add r8d, 0x2ff924c0
sub r8d, 0x15927d96
xor r8d, 0xc9f5952
add r8d, 0x2b6bb0f9
sub r8d, 0x785116a4
lea rdx, [rbp + 0x28]
mov rcx, qword [r14 + 8]
xchg rbp, rax
mov rbp, qword [rcx]
xchg rbp, rax
call qword [rax + 8]
mov rax, qword [rbx + 8]
mov rbx, qword [rax]
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
jne case.default.0x140071883
lea rax, [rbp + 0x28]
mov qword [rbp - 0x30], rax
xor r15d, r15d
nop dword [rax + rax]
mov byte [rbp - 0x40], 0x26
xor byte [rbp - 0x40], 0x1a
add byte [rbp - 0x40], 0x1e
sub byte [rbp - 0x40], 0x17
add byte [rbp - 0x40], 0x21
sub byte [rbp - 0x40], 2
sub byte [rbp - 0x40], 0x62
xor eax, eax
xchg rbx, rax
mov qword [rbp - 0x38], rbx
xchg rbx, rax
xor edx, edx
lea rcx, [rbp - 0x38]
call fcn.140054260
mov byte [rbp - 0x40], 0x1a
add byte [rbp - 0x40], 0x18
xor byte [rbp - 0x40], 0x40
xor byte [rbp - 0x40], 0x27
add byte [rbp - 0x40], 0x1c
xor byte [rbp - 0x40], 0x72
mov ecx, 0x9a49f1f
add ecx, 0x561fd652
xor ecx, 0x409abb78
sub ecx, 0xdd2c969
add ecx, 0x45426641
xor ecx, 0x56ce6ac1
call fcn.1401fcac4
mov rdi, rax
mov qword [rbp - 0x28], rax
lea rdx, [rbx + 0x20]
mov rcx, rax
call fcn.140049930
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x38], rdi
lea rdx, [rbp - 0x40]
mov rcx, r14
call fcn.140071810
nop
movzx edx, byte [rbp - 0x40]
lea rcx, [rbp - 0x38]
call fcn.140054260
nop
lea rdx, [rbx + 0x40]
xchg r10, rcx
mov r10, r14
xchg r10, rcx
call fcn.140071810
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x140073137
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x14007312f
nop dword [rax]
cmp rbx, qword [rax + 0x10]
jne 0x14007312f
xchg r15, rax
mov rbx, r15
xchg r15, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140073110
mov rbx, rax
jmp 0x140073178
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x140073178
nop dword [rax]
nop dword [rax + rax]
xchg r11, rbx
mov r11, rcx
xchg rbx, r11
xchg rdi, rax
mov rdi, qword [rcx]
xchg rdi, rax
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
cmp byte [rax + 0x19], 0
je 0x140073157
cmp byte [rbx + 0x19], 0
je 0x140073034
lea r11, [rsp + 0x60]
xchg rbx, r8
mov r8, qword [r11 + 0x20]
xchg r8, rbx
mov rsi, qword [r11 + 0x30]
xchg r10, rdi
mov r10, qword [r11 + 0x38]
xchg r10, rdi
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
mov rsp, r11
push rax
push rcx
push rdx
push rdx
push rdx
push rcx
push rbx
xchg qword [rsp + 0x38], r15
add rsp, 0x40
nop
mov r14, qword [rsp]
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rbp
ret