Function at 0x14019a070
Capabilities:
Authenticate hmac

Disassembly:
mov byte [rsp + 0x20], r9b
push rbp
nop
mov qword [rsp - 8], rbx
sub rsp, 8
nop
mov qword [rsp - 8], rsi
sub rsp, 8
push r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x17]
sub rsp, 0xb0
movzx r12d, r9b
mov rbx, r8
mov rsi, rdx
xchg rcx, r11
mov r13, r11
xchg rcx, r11
test rdx, rdx
je 0x14019b91e
mov eax, 0xcbb1eaf
xor eax, 0x2f7b08cf
sub eax, 0xb5be492
xor eax, 0x76c993b4
sub eax, 0x4d3dc464
add eax, 0x353fe46e
sub eax, 0x56af6837
cmp word [rdx], ax
jne 0x14019b91e
movsxd r15, dword [rdx + 0x3c]
add r15, rdx
xchg rsi, r15
mov qword [rbp - 0x41], rsi
xchg r15, rsi
cmp dword [r15], 0x4550
jne 0x14019b91e
mov rcx, qword [rbp + 0x7f]
xor r14d, r14d
xchg r9, r14
mov qword [rbp - 0x59], r9
xchg r14, r9
mov eax, dword [r15 + 0x50]
mov qword [rbp + 7], rax
test rcx, rcx
je 0x14019a140
mov qword [rcx], rax
xor r9d, r9d
mov dword [rsp + 0x30], 0x2f0a8acd
xor dword [rsp + 0x30], 0x542d95d9
sub dword [rsp + 0x30], 0x1976f154
xor dword [rsp + 0x30], 0x5090b92b
xor dword [rsp + 0x30], 0x7d2701b0
xor dword [rsp + 0x30], 0x4c07951b
lea rax, [rbp + 7]
mov dword [rsp + 0x28], 0x3e36e7e5
add dword [rsp + 0x28], 0x30f112cc
sub dword [rsp + 0x28], 0x1990136
sub dword [rsp + 0x28], 0x5cea88d5
add dword [rsp + 0x28], 0x575b4558
xor dword [rsp + 0x28], 0x773da8b3
sub dword [rsp + 0x28], 0x5ae90a2
sub dword [rsp + 0x28], 0xb135cab
lea rcx, [r13 + 0x50]
xchg rdi, rax
mov qword [rsp + 0x20], rdi
xchg rdi, rax
lea r8, [rbp - 0x59]
lea rdx, [r9 - 1]
call fcn.140196de0
test eax, eax
js 0x14019b91e
mov r8d, dword [r15 + 0x54]
xchg rsi, r10
mov rdx, r10
xchg rsi, r10
xchg rcx, r10
mov r10, qword [rbp - 0x59]
xchg r10, rcx
mov qword [rsp + 0xf0], rdi
call sub.VCRUNTIME140.dll_memcpy
mov edi, r14d
cmp r14w, word [r15 + 6]
jae 0x14019a24a
nop word [rax + rax]
mov eax, edi
lea rcx, [rax + rax*4]
mov edx, dword [r15 + rcx*8 + 0x11c]
mov r8d, dword [r15 + rcx*8 + 0x118]
add rdx, rsi
mov ecx, dword [r15 + rcx*8 + 0x114]
add rcx, qword [rbp - 0x59]
call sub.VCRUNTIME140.dll_memcpy
movzx eax, word [r15 + 6]
inc edi
cmp edi, eax
jb 0x14019a211
mov rdi, qword [rbp - 0x59]
test rbx, rbx
mov eax, dword [r15 + 0xb0]
cmove rbx, rdi
xor esi, esi
mov edx, esi
test eax, eax
je 0x14019a26c
lea rdx, [rdi + rax]
mov eax, dword [r15 + 0x90]
xchg r9, r11
mov r11, rsi
xchg r9, r11
test eax, eax
je 0x14019a288
lea r9, [rdi + rax]
sub rbx, qword [r15 + 0x30]
xchg rsi, r9
mov qword [rbp - 0x49], rsi
xchg rsi, r9
test rdx, rdx
je 0x14019a303
cmp dword [rdx], r14d
je 0x14019a303
mov eax, dword [rdx + 4]
cmp eax, 8
jb 0x14019a2f7
lea r8, [rax - 8]
mov ecx, esi
shr r8, 1
je 0x14019a2f7
xchg r10, rax
mov r10, rsi
xchg r10, rax
nop dword [rax]
movzx eax, word [rdx + rax*2 + 8]
test ax, ax
je 0x14019a2ea
and eax, 0xfff
add eax, dword [rdx]
add qword [rax + rdi], rbx
mov rdi, qword [rbp - 0x59]
inc ecx
mov eax, ecx
cmp rax, r8
jb 0x14019a2cd
mov eax, dword [rdx + 4]
add rdx, rax
jne 0x14019a29f
movabs rdx, 0x852397606678b
xor rdx, 0x6e4c1cfb
add rdx, 0x3231b6b4
xor rdx, 0xf0e43f4
xor rdx, 0x4f032038
add rdx, 0x59da03eb
sub rdx, 0x43f9d9d5
xor rdx, 0x19606436
xor rdx, 0x53cf2da1
movabs rbx, 0xc562967381457
sub rbx, 0x4a34da4a
add rbx, 0x3d91597d
add rbx, 0x7d8c630
sub rbx, 0x4846871d
xor rbx, 0x43f1baaf
add rbx, 0x7fffffff
xor rbx, 0x5acefa67
test r9, r9
je 0x14019b2d3
mov eax, dword [r9]
movabs r8, 0x86a3be2dc
xor r8, 0x822e721
xor r8, 0x4eedebb0
sub r8, 0x2a6e064b
add r8, 0x67d16acf
sub r8, 0x3d899ce
sub r8, 0x23d808ce
add r8, 0x3249427d
xor r8, 0x2b1cca9e
movabs r15, 0x582359a3c7955ea
sub r15, 0x3a614a95
add r15, 0x29844db2
sub r15, 0x1f37d7a2
add r15, 0x1d313c0c
xor r15, 0x2eae009e
add r15, 0x66a72277
sub r15, 0x463995f1
test eax, eax
je 0x14019b2ca
mov r14d, dword [r9 + 0x10]
lea r12, [rdi + rax]
mov ecx, dword [r9 + 0xc]
add r14, rdi
add rcx, rdi
nop
movabs rax, 0xffffffff3b6dd8b6
xor rax, 0x61c2707f
xor rax, 0x1cc98920
add rax, 0x13315581
xor rax, 0x3506f9fa
sub rax, 0x53f9a141
sub rax, 0xc408e3
add rax, 0x7fffffff
xor rax, 0x682c1b94
mov qword [rbp - 0x11], rcx
inc rax
cmp byte [rcx + rax], 0
jne 0x14019a462
cmp qword [0x1402160e0], rdx
mov word [rbp - 0x19], ax
mov word [rbp - 0x17], ax
je 0x14019a655
mov rax, qword [0x1402160f0]
cmp rax, rbx
je 0x14019a655
cmp byte [0x1402170c0], 0
jne 0x14019a4fc
push rax
xor eax, ebx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rbx, 0x20
xor eax, ebx
ror rbx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x140197f30]
mov ecx, 0x72e62312
sub ecx, 0x110f9818
sub ecx, 0x12b27234
sub ecx, 0xd4afe16
xor ecx, 0x5e14d064
add ecx, 0x324443d4
xor ecx, 0x3ad42704
sub ecx, 0x68c629ab
call rax
mov ecx, 0x544e8a39
add ecx, 0x16255604
sub ecx, 0x3b6e438c
xor ecx, 0x7d03b8fd
xor ecx, 0x5d46b3fc
add ecx, 0x430b8939
xor ecx, 0x3b1dfe6f
sub ecx, 0x6951de85
call fcn.1401fc7c8
xchg r8, rbx
mov r8, qword [r13 + 0xa0]
xchg rbx, r8
lea rdx, [rbp - 0x51]
xchg r10, rcx
mov r10, rax
xchg r10, rcx
push rbx
xor ebx, r15d
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror r15, 0x20
xor ebx, r15d
ror r15, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
movabs r15, 0x58235927f27671a
sub r15, 0x3e9382a
add r15, 0xdd404f
sub r15, 0x1e12249b
add r15, 0x86cfff7
sub r15, 0xc5b7ba3
xor r15, 0x29de6989
add r15, 0xa2ed38d
sub r15, 0x5ae08a5
xchg r15, rax
mov rdi, r15
xchg r15, rax
push rcx
xor ecx, r15d
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror r15, 0x20
xor ecx, r15d
ror r15, 0x20
shl rcx, 0x20
or rcx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x51], rcx
lea rcx, [0x1402170b0]
call fcn.140029ed0
mov r8b, 0x7a
sub r8b, 0xb
xor r8b, 0x6a
xor r8b, 0x36
xor r8b, 0x7e
sub r8b, 0x48
sub r8b, 4
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x29]
mov qword [rax], rbx
call rdi
movabs rbx, 0xc56290754bf62
add rbx, 0x78a21bda
sub rbx, 0x6ba90872
add rbx, 0x4d6d5e96
sub rbx, 0x24e9343e
add rbx, 0x17eb09ca
xor rbx, 0xd818050
add rbx, 0x29dd0b9a
jmp 0x14019a6f4
xchg r8, rax
mov r8, qword [r13 + 0xa0]
xchg r8, rax
lea rdx, [rbp - 0x19]
push rax
xor eax, r8d
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror r8, 0x20
xor eax, r8d
ror r8, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rcx, [rbp - 0x29]
mov r8b, 0x1e
xor r8b, 0x11
xor r8b, 0x61
sub r8b, 0x48
xor r8b, 0x40
sub r8b, 0x58
xor r8b, 0x17
add r8b, 0x5c
sub r8b, 0x74
call rax
movabs r15, 0x5823592207a3d22
add r15, 0x2f4f50e0
sub r15, 0x312368e7
xor r15, 0x2d0d0d68
xor r15, 0x5d8f45f7
xor r15, 0x10256871
sub r15, 0x44b1527c
xor r15, 0x598306c1
xor r15, 0x1889c7e1
movabs rax, 0x85239035787b2
add rax, 0x21758f06
add rax, 0x58c67d9a
sub rax, 0x38d1abf4
xor rax, 0x7d9028ff
add rax, 0xdd31c96
sub rax, 0x388deee7
xor rax, 0x6468dc39
xchg r15, rsi
mov qword [rbp + 0x5f], r15
xchg r15, rsi
cmp qword [0x1402160e0], rax
je 0x14019a88a
mov rax, qword [0x1402160f0]
cmp rax, rbx
je 0x14019a88a
cmp byte [0x1402170c0], 0
jne 0x14019a7b1
push rax
xor eax, ebx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rbx, 0x20
xor eax, ebx
ror rbx, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x140197f30]
mov ecx, 0x17f15e2
add ecx, 0x25220c6
add ecx, 0x4626f10b
add ecx, 0x349a64ae
sub ecx, 0x794e46db
add ecx, 0x1cf97bd1
xor ecx, 0x223dc156
call rax
mov ecx, 0x1e437fc0
add ecx, 0x541f7085
xor ecx, 0x4413e2cf
add ecx, 0x3fd6329d
sub ecx, 0x40b96a4
xor ecx, 0x723bae82
call fcn.1401fc7c8
mov rbx, qword [r13 + 0x90]
lea rdx, [rbp - 0x51]
xchg rbx, rax
mov rdi, rbx
xchg rbx, rax
movabs rax, 0x582359b17b1cb64
add rax, 0x2dc6f570
add rax, 0x2cb78ce7
xor rax, 0x28b9583c
sub rax, 0x59bfc938
add rax, 0x2f49114b
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
push rcx
xor ecx, r15d
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror r15, 0x20
xor ecx, r15d
ror r15, 0x20
shl rcx, 0x20
or rcx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x51], rcx
lea rcx, [0x1402170b0]
call fcn.140029ed0
lea r9, [rbp + 0x5f]
xor edx, edx
lea r8, [rbp - 0x29]
xor ecx, ecx
mov qword [rax], rbx
call rdi
jmp 0x14019a8f3
xchg r15, rax
mov r15, qword [r13 + 0x90]
xchg r15, rax
lea r9, [rbp + 0x5f]
movabs rcx, 0x902b5fc99
add rcx, 0x41f01d90
add rcx, 0x1a82aa09
add rcx, 0xf3141cd
sub rcx, 0x3e11a256
xor rcx, 0x781f4c6a
lea r8, [rbp - 0x29]
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
xor edx, edx
xor ecx, ecx
call rax
movabs rbx, 0x852396a156b74
sub rbx, 0x631f085c
xor rbx, 0x371bd6a3
xor rbx, 0x3431696a
add rbx, 0x4d0b96f2
xor rbx, 0x7cf3b92b
xor rbx, 0x103aa849
add rbx, 0x4d862d9
add rbx, 0x28046cef
cmp qword [0x1402160e0], rbx
je 0x14019ab26
mov rax, qword [0x1402160f0]
movabs rcx, 0xc56290666c657
xor rcx, 0x511cf457
add rcx, 0xffc665a
sub rcx, 0x2e6134ee
xor rcx, 0x43c93b70
add rcx, 0x3802d4e
sub rcx, 0x5eca51b3
xor rcx, 0x4db697e2
add rcx, 0x30f4ee01
cmp rax, rcx
je 0x14019ab26
cmp byte [0x1402170c0], 0
jne 0x14019a9fc
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x140197f30]
mov ecx, 0x5208cd17
xor ecx, 0x93e9105
xor ecx, 0x294d9d1b
sub ecx, 0x4433a2a7
sub ecx, 0x252b52a5
xor ecx, 0x29722e4
add ecx, 0x2ad9e45f
xor ecx, 0x3665cdb9
call rax
mov ecx, 0x738c5d92
sub ecx, 0x12172324
sub ecx, 0x28ccba5b
xor ecx, 0x35a35ee
xor ecx, 0x5e047113
xor ecx, 0x7dda4d1a
sub ecx, 0x7bbbdfc
add ecx, 0x4906f75a
xor ecx, 0x5977c353
call fcn.1401fc7c8
mov rbx, qword [r13 + 0xb0]
lea rdx, [rbp - 0x51]
xchg rdx, rax
mov rdi, rdx
xchg rdx, rax
movabs rax, 0x582359a31359111
xor rax, 0x3308ae68
add rax, 0x7bc2cbfb
xor rax, 0x4b33a48a
xor rax, 0x45f2aa03
add rax, 0xaef5bc4
sub rax, 0x53c7174c
xchg rdi, r14
mov rcx, r14
xchg rdi, r14
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
xor rbx, qword [rsp]
add rsp, 0x10
push rcx
xor ecx, r15d
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror r15, 0x20
xor ecx, r15d
ror r15, 0x20
shl rcx, 0x20
or rcx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x51], rcx
lea rcx, [0x1402170b0]
call fcn.140029ed0
lea rcx, [rbp - 0x29]
xchg rbx, r14
mov qword [rax], r14
xchg r14, rbx
call rdi
movabs rbx, 0x85239091f8c7c
add rbx, 0x440f1c4f
xor rbx, 0x29a28914
xor rbx, 0x1b3d6b41
sub rbx, 0x78c6e6be
xor rbx, 0x5083fc81
sub rbx, 0x4b53963e
add rbx, 0x5fe82946
jmp 0x14019ab98
mov rax, qword [r13 + 0xb0]
movabs rcx, 0x856449a16
xor rcx, 0x7077dbb4
add rcx, 0x33940725
add rcx, 0xbbfb9da
xor rcx, 0x2a1e7758
xor rcx, 0x29c54cac
xor rcx, 0xf97ea3c
xor rcx, 0x1b98d9e
xor rcx, 0x37de66db
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rcx, [rbp - 0x29]
call rax
xchg r13, r15
mov r13, qword [rbp + 0x5f]
xchg r15, r13
test r15, r15
je 0x14019b228
xchg rcx, rsi
mov rcx, qword [r12]
xchg rcx, rsi
test rsi, rsi
je 0x14019b226
sub r12, r14
nop word [rax + rax]
test rsi, rsi
jns 0x14019aea0
cmp qword [0x1402160e0], rbx
pushf
mov qword [rbp - 0x51], 0x66181173
xor qword [rbp - 0x51], 0x6c350c70
xor qword [rbp - 0x51], 0xbcbad91
xor qword [rbp - 0x51], 0x42539f99
xor qword [rbp - 0x51], 0x3317fd2d
xor qword [rbp - 0x51], 0x70a2d226
popf
je 0x14019ae29
mov rax, qword [0x1402160f0]
movabs rcx, 0xc562905daedb2
sub rcx, 0x107b3d
add rcx, 0x6fc400b
sub rcx, 0x2cfe3a0
sub rcx, 0x333ce6a
add rcx, 0x1df3acbe
add rcx, 0x7fffffff
sub rcx, 0x219d1add
cmp rax, rcx
je 0x14019ae29
cmp byte [0x1402170c0], 0
jne 0x14019acc4
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x140197f30]
mov ecx, 0x79da3877
xor ecx, 0x648ccf09
add ecx, 0x5cdb2e84
sub ecx, 0x5d80ca2e
add ecx, 0x3de822a4
sub ecx, 0x2d1f8e07
add ecx, 0x15fc6931
sub ecx, 0x437659a1
call rax
mov ecx, 0x17cfae09
sub ecx, 0x1593614a
xor ecx, 0x49f850ee
add ecx, 0x269d1237
sub ecx, 0x34c61b0
xor ecx, 0x3a589f05
sub ecx, 0x39de4e81
xor ecx, 0x1b6e055d
call fcn.1401fc7c8
mov rbx, qword [r13 + 0xc0]
lea rdx, [rbp - 0x39]
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
movabs rax, 0x58235921b22e38f
xor rax, 0xeba3de6
add rax, 0x3f7e2301
sub rax, 0x3b5a09f9
xor rax, 0x413ed557
add rax, 0x1514a653
xor rax, 0x294c12f5
xor rax, 0x1bbe0b1a
add rax, 0x7d1520b5
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
xor rbx, qword [rsp]
add rsp, 0x10
mov rcx, rdi
movabs rax, 0x582359278d5b40a
xor rax, 0x5b4b7f22
xor rax, 0x7382079c
sub rax, 0x2cbd5b1b
sub rax, 0x6668ee8
add rax, 0xd53bf9a
add rax, 0x4df8d00e
push rcx
xor ecx, eax
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror rax, 0x20
xor ecx, eax
ror rax, 0x20
shl rcx, 0x20
xor rcx, qword [rsp]
add rsp, 0x10
xchg r8, rcx
mov qword [rbp - 0x39], r8
xchg r8, rcx
lea rcx, [0x1402170b0]
call fcn.140029ed0
lea r9, [rbp - 0x51]
movzx r8d, si
xor edx, edx
xchg rsi, r15
mov rcx, rsi
xchg r15, rsi
xchg rbx, rdi
mov qword [rax], rdi
xchg rbx, rdi
call rdi
xchg r12, rax
mov r12, qword [rbp - 0x51]
xchg r12, rax
movabs rbx, 0x8523928ca3a71
xor rbx, 0x15d8ef4d
add rbx, 0x1690d01f
sub rbx, 0x6f95b19
xor rbx, 0x72ed4108
xor rbx, 0x54b93923
jmp 0x14019b1fa
mov rax, qword [r13 + 0xc0]
lea r9, [rbp - 0x51]
mov ecx, 0x52ee042
add ecx, 0x4aee136f
add ecx, 0x1c3235c7
sub ecx, 0x6bc466ae
xor ecx, 0x2a784e12
add ecx, 0x49063b9
sub ecx, 0x41c22
xor ecx, 0x8b42547d
movzx r8d, si
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
xor edx, edx
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
call rax
mov rax, qword [rbp - 0x51]
jmp 0x14019b1fa
xchg rcx, r9
mov r9, qword [rbp - 0x59]
xchg rcx, r9
nop
movabs rax, 0xffffffff2f4bee52
sub rax, 0x27716896
add rax, 0x2fec6999
add rax, 0x14c9e404
add rax, 0x1569d7b7
sub rax, 0x31264447
add rax, 0x7fffffff
add rax, 0x4f2b9937
sub rcx, 0xfffffffffffffffe
add rcx, rsi
mov qword [rbp - 1], rcx
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14019aef1
cmp qword [0x1402160e0], rbx
mov word [rbp - 9], ax
mov word [rbp - 7], ax
pushf
mov qword [rbp - 0x31], 0x3141c9fc
sub qword [rbp - 0x31], 0x30cc1d2f
add qword [rbp - 0x31], 0x71132e5b
sub qword [rbp - 0x31], 0x45d1fa22
sub qword [rbp - 0x31], 0x13303e5
add qword [rbp - 0x31], 0x1b7ee400
add qword [rbp - 0x31], 0x19f9b689
sub qword [rbp - 0x31], 0x19390b3d
xor qword [rbp - 0x31], 0x46c36c6d
popf
je 0x14019b179
mov rax, qword [0x1402160f0]
movabs rcx, 0xc562935fc1bb1
xor rcx, 0x6607edda
sub rcx, 0x416052c3
xor rcx, 0x57dacd60
sub rcx, 0x3a5c625e
add rcx, 0x5694b7b8
add rcx, 0x26a4316
sub rcx, 0x400352e3
add rcx, 0x5f38de01
cmp rax, rcx
je 0x14019b179
cmp byte [0x1402170c0], 0
jne 0x14019b013
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x140197f30]
mov ecx, 0x531338a6
sub ecx, 0x31243532
add ecx, 0x448f9e14
xor ecx, 0x1347bf50
sub ecx, 0x5662b8ea
add ecx, 0x1aa06ffa
xor ecx, 0x3976d5e9
call rax
mov ecx, 0x4a64bc9c
add ecx, 0x1f4eeca9
xor ecx, 0x255f66d5
add ecx, 0xf0c422d
sub ecx, 0x3acc837f
xor ecx, 0x212c8e3f
call fcn.1401fc7c8
xchg rbx, rdi
mov rdi, qword [r13 + 0xc0]
xchg rdi, rbx
lea rcx, [0x1402170b0]
xchg rsi, rax
mov rdi, rsi
xchg rsi, rax
movabs rax, 0x582359213b01626
add rax, 0x757b79b
xor rax, 0x6556ce36
xor rax, 0x78f3901d
add rax, 0x6d730060
sub rax, 0x2544e77d
sub rax, 0x44f210e
add rax, 0x28855493
add rax, 0x697311f9
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
xchg rsi, rdx
mov rsi, rdi
xchg rsi, rdx
movabs rax, 0x58235925a1f6f97
add rax, 0x199c5eac
sub rax, 0x72c8cb73
add rax, 0x3002b8e8
sub rax, 0x24db8e08
add rax, 0x15dde3ca
add rax, 0x2070fc5a
add rax, 0x35dc6485
push rdx
xor edx, eax
push rdx
xor rdx, qword [rsp + 8]
shr rdx, 0x20
ror rax, 0x20
xor edx, eax
ror rax, 0x20
shl rdx, 0x20
or rdx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x39], rdx
lea rdx, [rbp - 0x39]
call fcn.140029ed0
xor r8d, r8d
lea r9, [rbp - 0x31]
lea rdx, [rbp - 9]
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
mov qword [rax], rbx
call rdi
movabs rbx, 0x8523927e2a470
sub rbx, 0x48675bb
add rbx, 0x49f4ac8c
xor rbx, 0x6f2f326a
xor rbx, 0x72c064bf
sub rbx, 0x1d8e411c
sub rbx, 0x5e0cd60
add rbx, 0x1dadb351
jmp 0x14019b1f2
xchg rdi, rax
mov rdi, qword [r13 + 0xc0]
xchg rdi, rax
lea r9, [rbp - 0x31]
mov ecx, 0xf379e35
sub ecx, 0x8d3bac5
add ecx, 0x1d09b4af
xor ecx, 0x27e4750b
add ecx, 0x110b2044
xor ecx, 0x57fdbca4
add ecx, 0x2e9d262a
sub ecx, 0x5bb529c3
xor ecx, 0xb16c2e71
lea rdx, [rbp - 9]
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
xor r8d, r8d
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
call rax
xchg rcx, rax
mov rcx, qword [rbp - 0x31]
xchg rcx, rax
xchg r13, rax
mov qword [r14], r13
xchg r13, rax
nop
sub r14, 0x1c5f7625
add r14, 0x1c5f762d
mov rsi, qword [r12 + r14]
test rsi, rsi
je 0x14019b226
mov r15, qword [rbp + 0x5f]
jmp 0x14019abc7
xor esi, esi
xchg r9, rcx
mov rcx, qword [rbp - 0x49]
xchg r9, rcx
movabs rbx, 0xc562956985601
sub rbx, 0xa9bd084
sub rbx, 0x25c1593
sub rbx, 0xccebafb
add rbx, 0x2067a67d
add rbx, 0xf1f9ae8
xor rbx, 0x103720ea
add rbx, 0x7fffffff
sub rbx, 0x79564467
xchg rdi, r13
mov r13, qword [rbp - 0x59]
xchg rdi, r13
add r9, 0x14
xchg r9, r13
mov qword [rbp - 0x49], r13
xchg r13, r9
pushf
movabs rdx, 0x852396e755783
sub rdx, 0x419746c7
add rdx, 0x8a8df5f
xor rdx, 0x4321f252
sub rdx, 0xee1efa9
xor rdx, 0x502ec49f
xor rdx, 0x5d15e456
popf
jne 0x14019a389
movzx r12d, byte [rbp + 0x6f]
mov r15, qword [rbp - 0x41]
mov r14d, esi
cmp si, word [r15 + 6]
jae 0x14019b6c4
mov r12d, 0x914ff57
xor r12d, 0x1aab3e10
add r12d, 0x2fef1832
xor r12d, 0x374b080
sub r12d, 0x371afec0
add r12d, 0x27d5f89d
add r12d, 0x3df41238
sub r12d, 0x3a3c2b18
sub r12d, 0x354d4af2
nop
mov eax, r14d
lea rcx, [rax + rax*4]
mov eax, dword [r15 + rcx*8 + 0x114]
mov esi, dword [r15 + rcx*8 + 0x12c]
add rax, rdi
mov qword [rbp - 0x49], rax
mov eax, dword [r15 + rcx*8 + 0x118]
xchg r8, rax
mov qword [rbp - 0x41], r8
xchg r8, rax
bt esi, 0x19
jae 0x14019b380
mov esi, 0x186fbeb8
add esi, 0x58d62a7c
sub esi, 0x45eb0f14
add esi, 0x13c73a90
xor esi, 0x2f0d087
sub esi, 0x3dd2c435
jmp 0x14019b3d7
bt esi, 0x1d
jae 0x14019b3ad
sar esi, 0xa
sar esi, 4
sar esi, 7
sar esi, 9
sar esi, 1
and esi, 0x20
nop
sub esi, 0x364ac968
add esi, 0x364ac988
jmp 0x14019b3d7
test esi, esi
pushf
mov eax, 0x39836c97
xor eax, 0x477c9de0
xor eax, 0x6eb435d5
xor eax, 0x1128f648
add eax, 0x5935b5f
xor eax, 0x6f68e4b
popf
cmovs eax, r12d
mov esi, eax
xor eax, eax
cmp qword [0x1402160e0], rdx
mov dword [rbp + 0x5f], eax
je 0x14019b5b8
mov rax, qword [0x1402160f0]
cmp rax, rbx
je 0x14019b5b8
cmp byte [0x1402170c0], 0
jne 0x14019b45b
push rax
xor eax, ebx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rbx, 0x20
xor eax, ebx
ror rbx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x140197f30]
mov ecx, 0x228cac9f
xor ecx, 0xa1b89f4
add ecx, 0x4727ca97
xor ecx, 0x268c4116
xor ecx, 0x44f94824
add ecx, 0x54135a7e
sub ecx, 0x61df53ad
call rax
mov ecx, 0x7d36a302
xor ecx, 0x290387d8
sub ecx, 0x52bf41ce
add ecx, 0x2865ae4a
add ecx, 0x318d3c6f
sub ecx, 0x2417c7f6
sub ecx, 0x1238a4d4
sub ecx, 0x251860fa
call fcn.1401fc7c8
xchg rbx, rcx
mov rcx, qword [r13 + 0xd0]
xchg rbx, rcx
lea rdx, [rbp - 0x39]
xchg rdi, r13
mov r13, rax
xchg rdi, r13
movabs rax, 0x582359201c7b813
xor rax, 0xfaa9f0c
add rax, 0x31fae222
add rax, 0x38b84c5b
sub rax, 0x3964cc5e
add rax, 0x252ffd83
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
xor rbx, qword [rsp]
add rsp, 0x10
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
movabs rax, 0x582359232323de3
add rax, 0x1b2bdc32
sub rax, 0x1ecce350
sub rax, 0xdc9354b
sub rax, 0x68904f3
sub rax, 0x1848ca40
xor rax, 0x79b3401e
push rcx
xor ecx, eax
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror rax, 0x20
xor ecx, eax
ror rax, 0x20
shl rcx, 0x20
or rcx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x39], rcx
lea rcx, [0x1402170b0]
call fcn.140029ed0
mov r9d, esi
lea r8, [rbp - 0x41]
lea rdx, [rbp - 0x49]
nop
movabs rcx, 0xffffffff4b6040e0
sub rcx, 0x387dd52
add rcx, 0xb310825
add rcx, 0x2a0cb91e
sub rcx, 0x1ec091cc
add rcx, 0xb7a439f
add rcx, 0x7fffffff
add rcx, 0x1630295c
mov qword [rax], rbx
lea rax, [rbp + 0x5f]
mov qword [rsp + 0x20], rax
call rdi
jmp 0x14019b628
xchg r10, rax
mov r10, qword [r13 + 0xd0]
xchg r10, rax
lea rcx, [rbp + 0x5f]
xchg rcx, r9
mov qword [rsp + 0x20], r9
xchg r9, rcx
lea r8, [rbp - 0x41]
nop
movabs rcx, 0xffffffff5b7c42c9
sub rcx, 0x4c3861e9
xor rcx, 0x534699ab
sub rcx, 0x2b2d0a76
sub rcx, 0x144efc1e
add rcx, 0x3f63af6a
sub rcx, 0x327d9da3
add rcx, 0x7fffffff
add rcx, 0x56907b82
lea rdx, [rbp - 0x49]
xor rax, 0x1caef498
mov r9d, esi
call rax
movzx eax, word [r15 + 6]
inc r14d
mov rdi, qword [rbp - 0x59]
cmp r14d, eax
jae 0x14019b6bf
movabs rbx, 0xc56295763a5da
add rbx, 0x13a4cb81
xor rbx, 0x666505c6
xor rbx, 0x4355a6d7
sub rbx, 0xc7e54d0
xor rbx, 0x799a3754
sub rbx, 0xa7ce727
add rbx, 0x55762f4f
movabs rdx, 0x8523937a641e5
xor rdx, 0x4392fe1c
sub rdx, 0x49cd6f5
xor rdx, 0x4ec706b3
add rdx, 0x33d9c869
sub rdx, 0x2deb95a
sub rdx, 0x2836c293
xor rdx, 0x48c59b9c
xor rdx, 0x82e95c6
jmp 0x14019b320
movzx r12d, byte [rbp + 0x6f]
cmp byte [rbp + 0x77], 0
jne 0x14019b8dd
mov eax, dword [r15 + 0x28]
test eax, eax
je 0x14019b8dd
lea rsi, [rdi + rax]
movabs rax, 0x852393fdbf3df
add rax, 0x2c1ebddb
sub rax, 0x4cd4422e
sub rax, 0x8ab0c43
xor rax, 0x757f19f6
add rax, 0x7f9b7aa
cmp qword [0x1402160e0], rax
je 0x14019b8c7
mov rax, qword [0x1402160f0]
movabs rcx, 0xc562925e31709
add rcx, 0xf6a7532
xor rcx, 0x6d862cf0
sub rcx, 0x55b2fe32
add rcx, 0x62007494
xor rcx, 0x778f2ebb
add rcx, 0x55954865
add rcx, 0x7fffffff
sub rcx, 0x6511efa4
cmp rax, rcx
je 0x14019b8c7
cmp byte [0x1402170c0], 0
jne 0x14019b7d3
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x140197f30]
mov ecx, 0x14e5f548
add ecx, 0x4f29a1b0
xor ecx, 0x4cc5c3d8
add ecx, 0x2f6a6bc8
add ecx, 0x227a3698
sub ecx, 0x4072175f
xor ecx, 0x7f3a753
xor ecx, 0x52a559fe
sub ecx, 0x6f6a1e8b
call rax
mov ecx, 0x730339ee
add ecx, 0x71c6e2c
sub ecx, 0x32b6348b
sub ecx, 0x20971d92
xor ecx, 0x128d19c9
sub ecx, 0x345f4c33
call fcn.1401fc7c8
mov r8, rax
lea rdx, [rbp + 0x5f]
movabs r14, 0x58235920d43e732
add r14, 0x728f5c8e
sub r14, 0x7207e043
add r14, 0x4f840e0b
sub r14, 0x408bf1b0
xor r14, 0x84d4487
add r14, 0x61372c94
xor r14, 0x2448d200
add r14, 0x26b7bc66
lea rcx, [0x1402170b0]
push r8
xor r8d, r14d
push r8
xor r8, qword [rsp + 8]
shr r8, 0x20
ror r14, 0x20
xor r8d, r14d
ror r14, 0x20
shl r8, 0x20
or r8, qword [rsp]
add rsp, 0x10
xchg r8, rax
mov rbx, r8
xchg r8, rax
xchg rdi, r8
mov qword [rbp + 0x5f], rdi
xchg r8, rdi
call fcn.140029ed0
xor r8d, r8d
push rsi
xor esi, r14d
push rsi
xor rsi, qword [rsp + 8]
shr rsi, 0x20
ror r14, 0x20
xor esi, r14d
ror r14, 0x20
shl rsi, 0x20
or rsi, qword [rsp]
add rsp, 0x10
xchg rdi, r11
mov rcx, r11
xchg rdi, r11
mov qword [rax], rsi
lea edx, [r8 + 1]
call rbx
jmp 0x14019b8d9
xor r8d, r8d
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
lea edx, [r8 + 1]
call rsi
mov rdi, qword [rbp - 0x59]
test r12b, r12b
je 0x14019b904
mov r8d, dword [r15 + 0x54]
xor edx, edx
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call sub.VCRUNTIME140.dll_memset
xchg rdi, rcx
mov rcx, qword [rbp - 0x59]
xchg rdi, rcx
xchg r12, rax
mov r12, rdi
xchg r12, rax
xchg rdi, r15
mov r15, qword [rsp + 0xf0]
xchg r15, rdi
jmp 0x14019b920
xor eax, eax
add rsp, 0xb0
nop
add rsp, 8
xchg qword [rsp - 8], r15
nop
mov r14, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r13
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
push rdx
push rdx
push rbx
push rax
push rcx
push rdx
push rcx
push rax
xchg qword [rsp + 0x40], rsi
pop rax
pop rcx
pop rdx
pop rcx
pop rax
pop rbx
pop rdx
pop rdx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rbx
nop
add rsp, 8
xchg qword [rsp - 8], rbp
nop
add rsp, 8
jmp qword [rsp - 8]