Function at 0x180024708
Capabilities:
Authenticate hmac

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x238
xorps xmm0, xmm0
movups xmmword [rdx + 0x10], xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x1d], 0
lea rax, [rdx + 0xc]
mov qword [rsp + 0x160], rax
lea rax, [rdx + 0x21]
mov qword [rsp + 0x208], rax
mov byte [rsp + 0x2d], 0x10
mov dword [rsp + 0xb4], 0
mov dword [rsp + 0x80], eax
mov dword [rsp + 0x74], eax
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0x7c], eax
mov qword [rsp + 0x210], rcx
mov qword [rsp + 0x168], rcx
mov ecx, 0x8b8b04ce
cmp ecx, 0x1b12145
jg 0x180024838
cmp ecx, 0xb8dc49d2
jg 0x1800248ab
cmp ecx, 0x99dfef8f
jle 0x180024998
cmp ecx, 0xab7d03b1
jle 0x180024b2a
cmp ecx, 0xaf0223d8
jg 0x180024e02
cmp ecx, 0xad5e6045
jg 0x1800253d1
cmp ecx, 0xab7d03b2
je 0x180025c0e
cmp ecx, 0xacb34020
je 0x180025c38
cmp ecx, 0xad35abc3
jne 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
not ecx
and ecx, 0x14cc8a0c
mov esi, eax
and esi, 0xeb3375f3
or esi, ecx
xor esi, 0x14cc8a2c
and eax, 0x20
or eax, esi
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov qword [rdx + 0x15], rax
mov rax, qword [rsp + 0x60]
add rax, 8
jmp 0x180026819
cmp ecx, 0x46736056
jle 0x18002492e
cmp ecx, 0x5f302cd7
jle 0x1800249fd
cmp ecx, 0x70251de5
jle 0x180024b74
cmp ecx, 0x772d00ae
jg 0x180024e42
cmp ecx, 0x73ca0e41
jg 0x180025446
cmp ecx, 0x70251de6
je 0x180026759
cmp ecx, 0x7283ef0e
je 0x180026772
cmp ecx, 0x7288c211
jne 0x180024789
movzx ecx, byte [rsp + 7]
mov dword [rsp + 0x54], ecx
mov ecx, 0x177f0fd8
jmp 0x180024789
cmp ecx, 0xdeda6d3a
jg 0x180024a64
cmp ecx, 0xd1d9853f
jle 0x180024bdc
cmp ecx, 0xd8979c1d
jle 0x180024ea7
cmp ecx, 0xda8acacc
jg 0x180025476
cmp ecx, 0xd8979c1e
je 0x18002677f
cmp ecx, 0xd94409a7
je 0x180026795
cmp ecx, 0xda463234
jne 0x180024789
mov ecx, dword [rsp + 0xc0]
mov esi, ecx
xor esi, 0xffffff80
and esi, ecx
mov rcx, qword [rsp + 0x220]
movzx eax, word [rcx + rsi]
mov dword [rsp + 0x70], eax
shr eax, 8
mov dword [rsp + 0x74], eax
mov ecx, 0xda8acacd
jmp 0x180024789
cmp ecx, 0x1eaeca0d
jg 0x180024ac7
cmp ecx, 0x8984c01
jg 0x180024c35
cmp ecx, 0x42b2133
jle 0x180024ef2
cmp ecx, 0x5a99883
jg 0x1800254d3
cmp ecx, 0x42b2134
je 0x180025c51
cmp ecx, 0x537137a
je 0x180025c72
cmp ecx, 0x55a3883
jne 0x180024789
mov cl, byte [rsp + 0xc]
cmp cl, 5
mov ecx, 0x27dd171f
mov eax, 0xa5573df3
jmp 0x180024abd
cmp ecx, 0x8e33317c
jg 0x180024c8d
cmp ecx, 0x89fb25f5
jle 0x180024f31
cmp ecx, 0x8be872d9
jg 0x18002550b
cmp ecx, 0x89fb25f6
je 0x180025c8d
cmp ecx, 0x8b8b04ce
je 0x180025cc3
cmp ecx, 0x8bbeee5f
jne 0x180024789
mov rcx, qword [rsp + 0x98]
cmp byte [rcx], 0
mov ecx, 0x99dfef90
mov eax, 0x89fb25f6
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0x521942d5
jg 0x180024cce
cmp ecx, 0x4b9c2eb7
jle 0x180024f7c
cmp ecx, 0x4fac5546
jg 0x18002555a
cmp ecx, 0x4b9c2eb8
je 0x1800267bc
cmp ecx, 0x4d7da5c2
je 0x1800267d9
cmp ecx, 0x4ec430e6
jne 0x180024789
mov ecx, dword [rsp + 0x94]
cmp ecx, 0x8e
mov ecx, 0xb8dc49d3
mov eax, 0x9e28ee84
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0xef4e6b17
jg 0x180024d0f
cmp ecx, 0xe9881f10
jle 0x180024fe6
cmp ecx, 0xeabbcc61
jg 0x18002559d
cmp ecx, 0xe9881f11
je 0x18002682b
cmp ecx, 0xe9daaa89
je 0x18002685b
cmp ecx, 0xea45cc7c
jne 0x180024789
mov cl, byte [rsp + 0xc]
cmp cl, 6
mov ecx, 0x27dd171f
mov eax, 0x374ce1d1
cmove ecx, eax
xor ebp, ebp
jmp 0x180024789
cmp ecx, 0x31988272
jg 0x180024d85
cmp ecx, 0x22564383
jle 0x18002503c
cmp ecx, 0x28e55503
jg 0x1800255cd
cmp ecx, 0x22564384
je 0x180025d15
cmp ecx, 0x2343cbe6
je 0x180025d64
cmp ecx, 0x27dd171f
jne 0x180024789
mov byte [rsp + 0x1f], bpl
mov ecx, dword [rsp + 0x58]
cmp ecx, 3
mov ecx, 0x42b2134
mov eax, 0xe602a8ab
jmp 0x180025c62
cmp ecx, 0xa1b483f6
jle 0x1800250aa
cmp ecx, 0xa5573df2
jg 0x18002561c
cmp ecx, 0xa1b483f7
je 0x180025da7
cmp ecx, 0xa45bfa73
je 0x180025dbe
cmp ecx, 0xa46e4243
jne 0x180024789
mov ecx, dword [rsp + 0x48]
not ecx
or ecx, 0xfffffff9
jmp 0x180025901
cmp ecx, 0x6361fb33
jle 0x1800250ef
cmp ecx, 0x6848ed03
jg 0x180025661
cmp ecx, 0x6361fb34
je 0x180026874
cmp ecx, 0x64c70e23
je 0x18002688d
cmp ecx, 0x672b245c
jne 0x180024789
movzx ecx, byte [rsp + 0xf]
mov dword [rsp + 0x8c], ecx
mov ecx, dword [rsp + 0x8c]
mov esi, ecx
xor esi, 0xfffffffe
test esi, ecx
mov ecx, 0xbf6202fc
mov eax, 0x5ec68d81
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0xbf6202fb
jle 0x18002513c
cmp ecx, 0xc4abdb9c
jg 0x1800256a2
cmp ecx, 0xbf6202fc
je 0x1800268b7
cmp ecx, 0xc22cf8ee
je 0x18002695d
cmp ecx, 0xc35774c0
jne 0x180024789
mov ecx, dword [rsp + 0x48]
mov esi, ecx
xor esi, 0xffffffef
test esi, ecx
mov ecx, 0xea45cc7c
mov eax, 0x55a3883
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0x13fee774
jle 0x1800251dc
cmp ecx, 0x172ca140
jg 0x18002570a
cmp ecx, 0x13fee775
je 0x180025de9
cmp ecx, 0x1497d060
je 0x180025e02
cmp ecx, 0x163dd7a0
jne 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0xf2
mov ecx, 0x297a788
mov eax, 0xf739cbd1
cmovl ecx, eax
jmp 0x180024789
cmp ecx, 0x93eab505
jle 0x180025281
cmp ecx, 0x95b8d6c4
jg 0x180025750
cmp ecx, 0x93eab506
je 0x180025e1f
cmp ecx, 0x9458d0a1
je 0x180025e3b
cmp ecx, 0x9580cf1e
je 0x180025bf7
jmp 0x180024789
cmp ecx, 0x5621ec62
jle 0x1800252d7
cmp ecx, 0x5ce9bfc6
jg 0x1800257b8
cmp ecx, 0x5621ec63
je 0x180026986
cmp ecx, 0x59799783
je 0x1800269ba
cmp ecx, 0x5bd2991c
je 0x18002662a
jmp 0x180024789
cmp ecx, 0xfa754f9a
jle 0x18002533c
cmp ecx, 0xfb9402a0
jg 0x180025811
cmp ecx, 0xfa754f9b
je 0x180025c04
cmp ecx, 0xfa975ff3
je 0x1800269ef
cmp ecx, 0xfb3736a7
jne 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
mov esi, 0x208
and ecx, esi
xor eax, esi
or eax, ecx
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0x60]
movzx eax, word [rax]
mov word [rdx + 0x15], ax
mov r15, qword [rsp + 0x60]
add r15, 2
mov ecx, 0x521942d6
jmp 0x180024789
cmp ecx, 0x3ca6e8a4
jle 0x180025388
cmp ecx, 0x42f5750a
jg 0x18002583f
cmp ecx, 0x3ca6e8a5
je 0x180025e99
cmp ecx, 0x3cb6543b
je 0x180025ece
cmp ecx, 0x41b2c59d
jne 0x180024789
mov r10, qword [rsp + 0xa0]
inc r10
mov rax, qword [rsp + 0xa0]
mov al, byte [rax]
mov byte [rsp + 9], al
mov rcx, qword [rsp + 0x160]
mov byte [rcx], al
mov dil, byte [rsp + 0xd]
mov ecx, 0xf934a16
mov al, byte [rsp + 0x1e]
mov byte [rsp + 0xa], al
lea r14, [0x18004607a]
jmp 0x180024789
cmp ecx, 0xb361a265
jg 0x18002587a
cmp ecx, 0xaf0223d9
je 0x180025ee7
cmp ecx, 0xb2b15a35
je 0x180025f1a
cmp ecx, 0xb2b53fcc
jne 0x180024789
mov edi, dword [rsp + 0x88]
and dil, 0xf7
jmp 0x180026c5f
cmp ecx, 0x7d0eadd2
jg 0x1800258d4
cmp ecx, 0x772d00af
je 0x180026a39
cmp ecx, 0x7bc5b1b3
je 0x180026aef
cmp ecx, 0x7cb903fd
jne 0x180024789
mov rcx, qword [rsp + 0x118]
inc rcx
mov qword [rsp + 0x218], rcx
mov rcx, qword [rsp + 0x118]
movzx ecx, byte [rcx]
mov esi, dword [rsp + 0x48]
not esi
not ecx
or ecx, esi
cmp ecx, 0xffffffff
mov ecx, 0x52e8fc7d
jmp 0x18002532f
cmp ecx, 0xd4a062f3
jle 0x180025916
cmp ecx, 0xd4a062f4
je 0x180026b26
cmp ecx, 0xd5db69e3
je 0x180026b68
cmp ecx, 0xd694b22b
jne 0x180024789
mov cl, byte [rsp + 5]
mov byte [rdx + 2], cl
mov r9b, byte [rsp + 6]
mov ecx, r9d
and cl, 0x20
xor r9b, 0x20
jmp 0x1800264db
cmp ecx, 0x2206d88
jle 0x180025947
cmp ecx, 0x2206d89
je 0x180025f57
cmp ecx, 0x297a788
je 0x180025f7e
cmp ecx, 0x40e2664
jne 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0xd7
jmp 0x180026183
cmp ecx, 0x82781a8b
jle 0x180025978
cmp ecx, 0x82781a8c
je 0x180025f9a
cmp ecx, 0x845118dc
je 0x180026004
cmp ecx, 0x86a4a707
jne 0x180024789
mov cl, byte [rsp + 5]
mov byte [rdx + 5], cl
mov r9b, byte [rsp + 6]
mov ecx, r9d
and cl, 0x10
xor r9b, 0x10
jmp 0x1800264db
cmp ecx, 0x498968d1
jle 0x1800259b6
cmp ecx, 0x498968d2
je 0x180025fb3
cmp ecx, 0x4a3b74a7
je 0x180025fd4
cmp ecx, 0x4a953f32
jne 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
not esi
and esi, 0xc13dafb7
mov ebx, ecx
and ebx, 0x3ec25048
or ebx, esi
xor ebx, 0xc13d9fb7
and ecx, 0x3000
or ecx, ebx
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov ecx, 0xff2285e9
jmp 0x180024789
cmp ecx, 0xe006aa71
jle 0x1800259e6
cmp ecx, 0xe006aa72
je 0x18002600e
cmp ecx, 0xe06ec1e9
je 0x180026033
cmp ecx, 0xe602a8ab
jne 0x180024789
mov rax, qword [rsp + 0xa8]
dec rax
mov qword [rsp + 0xd8], rax
movzx eax, byte [rsp + 0xb]
mov dword [rsp + 0x5c], eax
mov ecx, 0xf56f3f30
jmp 0x180024789
cmp ecx, 0x1f721490
jle 0x180025a17
cmp ecx, 0x1f721491
je 0x180026060
cmp ecx, 0x1fdcf66d
je 0x18002607c
cmp ecx, 0x2190b159
jne 0x180024789
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0xf0], rax
mov eax, dword [rsp + 0x4c]
not eax
or eax, 0xffffffbf
cmp eax, 0xffffffff
mov ecx, 0xfa975ff3
mov eax, 0x812213b5
cmove ecx, eax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x190], rax
jmp 0x180024789
cmp ecx, 0x9e28ee83
jle 0x180025a3e
cmp ecx, 0x9e28ee84
je 0x180026098
cmp ecx, 0x9e82fa32
je 0x1800260c5
cmp ecx, 0xa1043711
jne 0x180024789
mov dword [rsp + 0xb8], 0xe
mov ecx, 0x92aafe12
jmp 0x180024789
cmp ecx, 0x60a1fb1e
jle 0x180025a88
cmp ecx, 0x60a1fb1f
je 0x180026b87
cmp ecx, 0x62c81396
je 0x180026c1f
cmp ecx, 0x62e0fc75
jne 0x180024789
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x1a0]
jmp 0x1800261b1
cmp ecx, 0xbafbc1b5
jle 0x180025aac
cmp ecx, 0xbafbc1b6
je 0x1800260e1
cmp ecx, 0xbbf13b3b
je 0x1800260ff
cmp ecx, 0xbc0162de
jne 0x180024789
mov al, byte [rsp + 0x28]
mov byte [rsp + 0x43], al
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x220], rax
mov al, byte [rsp + 0x2a]
mov byte [rsp + 0xe], al
mov al, byte [rsp + 0x29]
mov byte [rsp + 7], al
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xe8], rax
mov esi, dword [rsp + 0x68]
movzx ecx, sil
mov dword [rsp + 0xc0], ecx
mov ecx, dword [rsp + 0xc0]
test cl, cl
mov ecx, 0xda463234
mov eax, 0xda8acacd
cmovns ecx, eax
mov dword [rsp + 0x74], 0
mov eax, esi
mov dword [rsp + 0x70], eax
jmp 0x180024789
cmp ecx, 0xf62ce74
jle 0x180025aec
cmp ecx, 0xf62ce75
je 0x180026130
cmp ecx, 0xf900426
je 0x180026164
cmp ecx, 0xf934a16
jne 0x180024789
mov r12b, byte [rsp + 9]
movzx ecx, r12b
mov rsi, rcx
shr rsi, 2
movzx esi, byte [r14 + rsi]
and ecx, 3
add ecx, esi
mov al, byte [r14 + rcx]
mov dword [rsp + 0x68], eax
cmp al, 0xff
mov ecx, 0xbc0162de
mov eax, 0x772d00af
cmove ecx, eax
mov al, byte [rsp + 0xa]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x108], r14
mov ebx, edi
mov byte [rsp + 0x2a], dil
mov byte [rsp + 0x29], r12b
mov qword [rsp + 0x110], r10
mov byte [rsp + 0x31], al
mov qword [rsp + 0x170], r14
mov eax, edi
mov byte [rsp + 0x30], dil
mov byte [rsp + 0x2f], r12b
mov r12, r10
jmp 0x180024789
cmp ecx, 0x92b55731
jle 0x180025b2c
cmp ecx, 0x92b55732
je 0x180026179
cmp ecx, 0x931c5fbb
je 0x180026195
cmp ecx, 0x93d6eaa7
jne 0x180024789
movzx ecx, byte [rsp + 0x35]
movzx esi, byte [rsp + 4]
lea rcx, [rsi + rcx*8]
lea rax, [0x180046030]
movzx eax, byte [rax + rcx + 0x104]
mov cl, byte [rsp + 0xc]
jmp 0x180025dd6
cmp ecx, 0x5302f654
jle 0x180025b5c
cmp ecx, 0x5302f655
je 0x1800261a5
cmp ecx, 0x5453c636
je 0x1800261c3
cmp ecx, 0x55dc5598
jne 0x180024789
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x148], rax
mov rcx, qword [rsp + 0x230]
mov rsi, qword [rsp + 0x148]
cmp rsi, rcx
mov ecx, 0xaf0223d9
mov eax, 0xa1043711
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0xf2630e23
jle 0x180025ba2
cmp ecx, 0xf2630e24
je 0x180026256
cmp ecx, 0xf56f3f30
je 0x18002627a
cmp ecx, 0xf739cbd1
jne 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0xf0
mov ecx, 0x62c81396
mov eax, 0xd694b22b
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0x374acc9e
jle 0x180025bc6
cmp ecx, 0x374acc9f
je 0x180026293
cmp ecx, 0x374ce1d1
je 0x1800262e7
cmp ecx, 0x3a5adffa
jne 0x180024789
mov cl, byte [rsp + 3]
cmp cl, 3
mov ecx, 0x8bbeee5f
mov eax, 0x4a3b74a7
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0xad5e6046
je 0x1800262f4
cmp ecx, 0xadd7a76b
je 0x18002632d
cmp ecx, 0xaeb56419
jne 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
not ecx
and ecx, 0x59a04e2
mov esi, eax
and esi, 0xfa65fb1d
or esi, ecx
xor esi, 0x59a06e6
and eax, 0x204
or eax, esi
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov r15, qword [rsp + 0xf0]
inc r15
mov rax, qword [rsp + 0xf0]
mov al, byte [rax]
mov byte [rdx + 0x15], al
mov ecx, 0x521942d6
jmp 0x180024789
cmp ecx, 0x73ca0e42
je 0x180026c41
cmp ecx, 0x75839e69
je 0x180026c88
cmp ecx, 0x7644e0ce
jne 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x3e
jmp 0x180026ecc
cmp ecx, 0xda8acacd
je 0x180026c94
cmp ecx, 0xdc60df4f
je 0x180026cd1
cmp ecx, 0xde403182
jne 0x180024789
mov r12, qword [rsp + 0x1e0]
mov al, byte [rsp + 0x2b]
mov byte [rsp + 0x2f], al
mov al, byte [rsp + 0xd]
mov byte [rsp + 0x30], al
mov ecx, 0x772d00af
mov al, byte [rsp + 0x39]
mov byte [rsp + 0x31], al
lea rax, [0x180046030]
mov qword [rsp + 0x170], rax
jmp 0x180024789
cmp ecx, 0x5a99884
je 0x180026352
cmp ecx, 0x5f02a14
je 0x180026394
cmp ecx, 0x83eee6d
jne 0x180024789
mov ecx, dword [rsp + 0x15c]
cmp ecx, 0xe
mov ecx, 0x1eed6da9
jmp 0x18002573e
cmp ecx, 0x8be872da
je 0x1800263b1
cmp ecx, 0x8c594372
je 0x1800263ce
cmp ecx, 0x8d8d86b6
jne 0x180024789
movzx ecx, byte [rsp + 7]
mov dword [rsp + 0xd4], ecx
mov ecx, dword [rsp + 0xd4]
cmp ecx, 0xf6
mov ecx, 0xf2630e24
mov eax, 0xec6aeb36
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0x4fac5547
je 0x180026cf3
cmp ecx, 0x50f3d8c0
je 0x180026d06
cmp ecx, 0x51487239
jne 0x180024789
mov ecx, dword [rsp + 0x94]
cmp ecx, 0x8e
mov ecx, 0x4ec430e6
mov eax, 0x1b12146
cmovl ecx, eax
jmp 0x180024789
cmp ecx, 0xeabbcc62
je 0x180026d2c
cmp ecx, 0xec6aeb36
je 0x180026d54
cmp ecx, 0xedc3a7d9
jne 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x36
jmp 0x180026ecc
cmp ecx, 0x28e55504
je 0x1800263f9
cmp ecx, 0x2ff617ee
je 0x180026412
cmp ecx, 0x317294a1
jne 0x180024789
movzx ecx, byte [rsp + 7]
mov dword [rsp + 0x90], ecx
mov ecx, dword [rsp + 0x90]
cmp ecx, 0xd9
mov ecx, 0x2206d89
mov eax, 0xd5db69e3
cmovge ecx, eax
jmp 0x180024789
cmp ecx, 0xa5573df3
je 0x180025bf7
cmp ecx, 0xaa5524b9
je 0x18002642e
cmp ecx, 0xaa77f4fd
jne 0x180024789
mov rcx, qword [rsp + 0xe0]
mov cl, byte [rcx]
not cl
or cl, 7
cmp cl, 0x47
mov ecx, 0x60a1fb1f
mov eax, 0x931c5fbb
jmp 0x180025e89
cmp ecx, 0x6848ed04
je 0x180026d73
cmp ecx, 0x6910590f
je 0x180026d82
cmp ecx, 0x6ebb8707
jne 0x180024789
mov rcx, qword [rsp + 0x98]
cmp byte [rcx], 0
mov ecx, 0x7288c211
mov eax, 0xd8979c1e
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0xc4abdb9d
je 0x180026dca
cmp ecx, 0xcaebca6d
je 0x180026de9
cmp ecx, 0xcd8a3cc8
jne 0x180024789
mov byte [rsp + 0x46], r13b
mov rcx, qword [rsp + 0x1e8]
inc rcx
mov qword [rsp + 0x120], rcx
mov rcx, qword [rsp + 0x1e8]
mov cl, byte [rcx]
mov byte [rsp + 0x36], cl
mov cl, byte [rsp + 4]
cmp cl, 2
mov ecx, 0x493aabd9
mov eax, 0x8d8d86b6
cmovb ecx, eax
mov r8b, byte [rsp + 0xf]
jmp 0x180024789
cmp ecx, 0x172ca141
je 0x18002646b
cmp ecx, 0x177f0fd8
je 0x180026484
cmp ecx, 0x1cea3b1b
jne 0x180024789
mov rcx, qword [rsp + 0x98]
cmp byte [rcx], 0
mov ecx, 0x4fac5547
mov eax, 0xcd8a3cc8
cmove ecx, eax
mov r13b, byte [rsp + 3]
jmp 0x180024789
cmp ecx, 0x95b8d6c5
je 0x18002649d
cmp ecx, 0x9614b707
je 0x1800264c5
cmp ecx, 0x96c44dd6
jne 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
not ecx
and ecx, 0xf1536387
mov esi, eax
and esi, 0xeac9c78
or esi, ecx
xor esi, 0xf1533387
and eax, 0x5000
or eax, esi
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0x130]
mov byte [rax], 0xf
mov ecx, 0x9e82fa32
jmp 0x180024789
cmp ecx, 0x5ce9bfc7
je 0x180026e4a
cmp ecx, 0x5dee7315
je 0x180026e64
cmp ecx, 0x5ec68d81
jne 0x180024789
mov al, byte [rsp + 0xe]
mov ecx, eax
xor cl, 0xdf
test cl, al
mov ecx, 0xf62ce75
mov eax, 0x7e77d848
cmove ecx, eax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x100], rax
mov al, byte [rsp + 0xf]
mov byte [rsp + 0x27], al
jmp 0x180024789
cmp ecx, 0xfb9402a1
je 0x180026e9e
cmp ecx, 0xfdddd671
je 0x180026ec5
cmp ecx, 0xff2285e9
jne 0x180024789
mov ecx, 0x2206d89
jmp 0x180024789
cmp ecx, 0x42f5750b
je 0x1800264e8
cmp ecx, 0x44f6a162
je 0x180026522
cmp ecx, 0x464bcb27
jne 0x180024789
mov r8d, dword [rsp + 0x8c]
mov ecx, r8d
and cl, 0x10
xor r8b, 0x10
jmp 0x180026d66
cmp ecx, 0xb361a266
je 0x18002653b
cmp ecx, 0xb55b220d
je 0x18002656e
cmp ecx, 0xb5666b12
jne 0x180024789
mov al, byte [rsp + 0x37]
dec al
mov byte [rsp + 0x2d], al
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x168], rax
mov al, byte [rsp + 5]
mov byte [rsp + 0x42], al
mov eax, r9d
mov dword [rsp + 0xb4], eax
mov ecx, 0x8b8b04ce
jmp 0x180024789
cmp ecx, 0x7d0eadd3
je 0x180026ede
cmp ecx, 0x7e77d848
je 0x180026ef7
cmp ecx, 0x7f9b9f15
jne 0x180024789
mov ecx, dword [rsp + 0x48]
not ecx
or ecx, 0xfffffff6
cmp ecx, 0xffffffff
mov ecx, 0xeabbcc62
mov eax, 0xcd8a3cc8
cmove ecx, eax
jmp 0x180026d1d
cmp ecx, 0xd1d98540
je 0x180026f38
cmp ecx, 0xd28c6692
jne 0x180026f63
mov ecx, dword [rsp + 0x58]
cmp ecx, 2
mov ecx, 0x75839e69
mov eax, 0xef4e6b18
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0x1b12146
je 0x180026587
cmp ecx, 0x1e7215d
jne 0x180024789
mov cl, byte [rsp + 3]
cmp cl, 3
mov ecx, 0x1cea3b1b
mov eax, 0x4b9c2eb8
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0x811d1af7
je 0x1800265a6
cmp ecx, 0x812213b5
jne 0x180024789
mov eax, dword [rsp + 0x4c]
not eax
or eax, 0xffffffdf
cmp eax, 0xffffffff
mov ecx, 0xaeb56419
mov eax, 0x521942d6
cmove ecx, eax
mov r15, qword [rsp + 0xf0]
jmp 0x180024789
cmp ecx, 0x46736057
je 0x1800265e1
cmp ecx, 0x493aabd9
jne 0x180024789
mov byte [rsp + 0x47], r8b
movzx ecx, byte [rsp + 0x46]
mov dword [rsp + 0x58], ecx
mov ecx, 0x8e33317d
jmp 0x180024789
cmp ecx, 0xdeda6d3b
je 0x1800265f0
cmp ecx, 0xdf5d5e9b
jne 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x67
mov ecx, 0x62c81396
mov eax, 0x86a4a707
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0x1eaeca0e
je 0x180026634
cmp ecx, 0x1eed6da9
jne 0x180024789
mov r11b, byte [rsp + 3]
mov ecx, 0xeabbcc62
jmp 0x180024789
cmp ecx, 0x99dfef90
je 0x180026650
cmp ecx, 0x9b66be24
jne 0x180024789
mov al, byte [rsp + 0x33]
mov byte [rsp + 0x45], al
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0x228], rax
mov ecx, 0x3ca6e8a5
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x1c8], rax
jmp 0x180024789
cmp ecx, 0x5f302cd8
je 0x180026680
cmp ecx, 0x5fce646a
jne 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x26
jmp 0x180026ecc
cmp ecx, 0xb8dc49d3
je 0x180025c04
cmp ecx, 0xbad54818
jne 0x180024789
mov ecx, 0x62e0fc75
lea rax, [0x180046241]
mov qword [rsp + 0x1a8], rax
lea rax, [0x180046217]
mov qword [rsp + 0x1a0], rax
jmp 0x180024789
cmp ecx, 0x8984c02
je 0x18002669c
cmp ecx, 0xd406fdf
jne 0x180024789
mov cl, byte [rsp + 5]
mov byte [rdx + 1], cl
mov r9b, byte [rsp + 6]
mov ecx, r9d
not cl
and cl, 0x40
mov ebx, r9d
and bl, 0xbf
or bl, cl
xor bl, 0x42
and r9b, 2
jmp 0x18002684e
cmp ecx, 0x8e33317d
je 0x1800266b5
cmp ecx, 0x92aafe12
jne 0x180024789
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x15c], eax
mov ecx, 0x83eee6d
jmp 0x180024789
cmp ecx, 0x521942d6
je 0x1800266cc
cmp ecx, 0x52e8fc7d
jne 0x180024789
mov rcx, qword [rsp + 0x218]
movzx esi, byte [rcx]
mov cl, byte [rsp + 4]
mov ebx, 0x80
shr ebx, cl
xor esi, ebx
not esi
test esi, ebx
mov ecx, 0xa1043711
mov eax, 0xf900426
cmove ecx, eax
jmp 0x180024789
cmp ecx, 0xef4e6b18
je 0x180026720
cmp ecx, 0xf0598be3
jne 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0x50
jmp 0x180026183
cmp ecx, 0x31988273
je 0x180026740
cmp ecx, 0x322b3e1e
jne 0x180024789
mov ecx, dword [rsp + 0x58]
cmp ecx, 2
mov ecx, 0xd28c6692
mov eax, 0x7283ef0e
cmovl ecx, eax
jmp 0x180024789
mov bpl, 4
mov ecx, 0x27dd171f
jmp 0x180024789
mov ecx, 0x1e7215d
jmp 0x180024789
mov eax, dword [rsp + 0xbc]
mov ecx, eax
not cl
and cl, 0x11
mov ebx, eax
and bl, 0xee
or bl, cl
xor bl, 0x10
and al, 1
or al, bl
mov dword [rsp + 0x7c], eax
mov ecx, 0x374acc9f
jmp 0x180024789
mov eax, dword [rsp + 0x5c]
cmp eax, 4
mov ecx, 0xe06ec1e9
mov eax, 0x28e55504
cmovl ecx, eax
jmp 0x180024789
mov cl, byte [rsp + 0xc]
cmp cl, 4
mov ecx, 0xe602a8ab
mov eax, 0x5453c636
cmove ecx, eax
mov rax, qword [rsp + 0x120]
jmp 0x180026241
mov eax, dword [rsp + 0x58]
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
mov ecx, 0xe602a8ab
mov eax, 0xc4abdb9d
jmp 0x180026236
mov cl, byte [rsp + 7]
mov eax, ecx
xor al, 1
and al, cl
mov byte [rsp + 0x33], al
mov ecx, 0x9b66be24
lea rax, [0x1800461f6]
mov qword [rsp + 0x1c0], rax
lea rax, [0x1800461de]
mov qword [rsp + 0x1b8], rax
jmp 0x180024789
mov al, byte [rsp + 0x2d]
mov byte [rsp + 0x37], al
mov eax, dword [rsp + 0xb4]
mov byte [rsp + 6], al
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x138], rax
cmp byte [rsp + 0x37], 0
mov ecx, 0x5621ec63
mov eax, 0xcaebca6d
cmove ecx, eax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x180], rax
mov al, byte [rsp + 0x42]
mov byte [rsp + 0x2e], al
jmp 0x180024789
mov eax, dword [rsp + 0x78]
mov byte [rsp + 0x1e], al
mov al, byte [rsp + 0x32]
mov byte [rsp + 8], al
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0xa0], rax
mov cl, byte [rsp + 8]
mov byte [rdx + 0xb], cl
movzx ecx, byte [rsp + 8]
mov dword [rsp + 0x84], ecx
mov ecx, dword [rsp + 0x84]
cmp ecx, 0xf
mov ecx, 0xd4a062f4
mov eax, 0x41b2c59d
cmove ecx, eax
jmp 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
not ecx
and ecx, 0x4b7fd2f8
mov esi, eax
and esi, 0xb4802d07
or esi, ecx
xor esi, 0x4b7fd278
and eax, 0x80
or eax, esi
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0xd8]
movzx eax, word [rax]
mov word [rdx + 0x1d], ax
jmp 0x18002662a
cmp byte [rsp + 0x43], 0
mov ecx, 0xad35abc3
mov eax, 0xc22cf8ee
cmove ecx, eax
jmp 0x180024789
movzx ecx, byte [rsp + 0x35]
lea rax, [0x180046030]
movzx eax, byte [rcx + rax + 0xfd]
mov cl, byte [rsp + 4]
shl eax, cl
mov dword [rsp + 0x80], eax
mov ecx, 0x5ce9bfc7
jmp 0x180024789
mov cl, byte [rsp + 4]
cmp cl, 6
mov ecx, 0xcd8a3cc8
mov eax, 0xeabbcc62
cmovae ecx, eax
jmp 0x180026d1d
mov rax, qword [rsp + 0x1f0]
inc rax
mov qword [rsp + 0x1c8], rax
mov ecx, 0x3ca6e8a5
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0xf3
mov ecx, 0x62c81396
mov eax, 0xad5e6046
cmove ecx, eax
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ebx, dword [rcx]
mov esi, ebx
not esi
and esi, 0xa6629bed
mov ecx, ebx
and ecx, 0x599d6412
or ecx, esi
xor ecx, 0xe6629bed
and ebx, 0x40000000
or ebx, ecx
mov rcx, qword [rsp + 0x10]
mov dword [rcx], ebx
mov ecx, dword [rsp + 0x50]
shr cl, 3
not cl
or cl, 0xfe
cmp cl, 0xff
not cl
mov byte [rdx + 7], cl
mov ecx, 0xaa77f4fd
mov eax, 0x60a1fb1f
cmove ecx, eax
mov dword [rsp + 0x6c], 0
jmp 0x180024789
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x140], rax
mov rcx, qword [rsp + 0x228]
mov rsi, qword [rsp + 0x140]
cmp rsi, rcx
mov ecx, 0xb361a266
mov eax, 0xe006aa72
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x66
mov ecx, 0x1f721491
mov eax, 0xb55b220d
cmovl ecx, eax
jmp 0x180024789
mov rcx, qword [rsp + 0x148]
inc rcx
mov qword [rsp + 0x118], rcx
mov rcx, qword [rsp + 0x148]
mov cl, byte [rcx]
cmp cl, byte [rsp + 7]
mov ecx, 0x5302f655
mov eax, 0x7cb903fd
cmove ecx, eax
jmp 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
and ecx, 8
xor eax, 8
or eax, ecx
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x188]
movzx eax, word [rcx]
mov word [rdx + 0x15], ax
lea rax, [rcx + 2]
mov qword [rsp + 0x1b0], rax
mov ecx, 0xaa5524b9
jmp 0x180024789
movzx ecx, byte [rsp + 0xe]
mov dword [rsp + 0x48], ecx
mov ecx, dword [rsp + 0x48]
not ecx
or ecx, 0xffffffdf
cmp ecx, 0xffffffff
mov ecx, 0x3a5adffa
mov eax, 0x6ebb8707
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0xf3
mov ecx, 0x93eab506
mov eax, 0xd406fdf
cmovl ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x54]
cmp ecx, 0x23
mov ecx, 0x31988273
mov eax, 0xd1d98540
cmovl ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0xc5
mov ecx, 0x6848ed04
mov eax, 0xeabbcc62
cmove ecx, eax
mov r11b, byte [rsp + 3]
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
not esi
and esi, 0xc40cbfce
mov ebx, ecx
and ebx, 0x3bf34031
or ebx, esi
xor ebx, 0xc40c2fce
and ecx, 0x9000
or ecx, ebx
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov ecx, 0x6ebb8707
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
mov eax, 0x9000
and esi, eax
xor ecx, eax
or ecx, esi
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov ecx, 0x845118dc
jmp 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
mov esi, pe_nt_image_headers64
and ecx, esi
xor eax, esi
or eax, ecx
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0xd8]
mov eax, dword [rax]
mov dword [rdx + 0x1d], eax
jmp 0x18002662a
mov ecx, dword [rsp + 0x20]
cmp ecx, 0xf0
mov ecx, 0x163dd7a0
mov eax, 0x8984c02
cmovl ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0xd6
mov ecx, 0x1eaeca0e
mov eax, 0x5f302cd8
cmovl ecx, eax
jmp 0x180024789
movzx ecx, byte [rsp + 4]
mov dword [rsp + 0xd0], ecx
mov ecx, dword [rsp + 0xd0]
cmp ecx, 1
mov ecx, 0x50f3d8c0
mov eax, 0xeabbcc62
cmove ecx, eax
mov r11b, byte [rsp + 3]
jmp 0x180024789
mov rax, qword [rsp + 0x130]
movzx eax, byte [rax]
mov dword [rsp + 0x158], eax
mov ecx, 0xd45a4979
jmp 0x180024789
mov eax, dword [rsp + 0x84]
cmp eax, 0xa4
mov ecx, 0xf934a16
mov eax, 0x7bc5b1b3
cmovl ecx, eax
jmp 0x180026b3f
mov rcx, qword [rsp + 0x1f0]
movzx esi, byte [rcx]
mov cl, byte [rsp + 4]
mov ebx, 0x80
shr ebx, cl
not ebx
not esi
or esi, ebx
cmp esi, 0xffffffff
mov ecx, 0xe006aa72
mov eax, 0x845118dc
cmove ecx, eax
jmp 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
mov esi, 0x9000
and ecx, esi
xor eax, esi
or eax, ecx
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x100], rax
mov al, byte [rsp + 0xf]
jmp 0x180026eb7
mov dword [rsp + 0xb8], 0xd
mov ecx, 0x92aafe12
jmp 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0xf7
mov ecx, 0x6848ed04
mov eax, 0x7f9b9f15
cmove ecx, eax
jmp 0x180024789
mov ecx, 0x60a1fb1f
mov al, 1
mov dword [rsp + 0x6c], eax
jmp 0x180024789
mov rax, qword [rsp + 0x118]
add rax, 2
mov qword [rsp + 0x178], rax
mov ecx, 0x55dc5598
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
not esi
and esi, 0x20e3aef
mov ebx, ecx
and ebx, 0xfdf1c510
or ebx, esi
xor ebx, 0x20e3aed
and ecx, 2
or ecx, ebx
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov rcx, qword [rsp + 0x120]
inc rcx
mov qword [rsp + 0x128], rcx
mov cl, byte [rsp + 0x36]
mov byte [rdx + 0x11], cl
mov al, byte [rsp + 0x36]
mov ebx, eax
mov ecx, eax
xor cl, 0xf8
and cl, al
shr al, 6
mov byte [rdx + 0x12], al
shr bl, 3
and bl, 7
mov byte [rdx + 0x13], bl
mov byte [rdx + 0x14], cl
cmp cl, 5
mov ecx, 0xe602a8ab
mov eax, 0x537137a
cmove ecx, eax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0xa8], rax
mov al, byte [rsp + 0x1f]
mov byte [rsp + 0xb], al
jmp 0x180024789
mov ecx, dword [rsp + 0xd4]
cmp ecx, 0xf7
mov ecx, 0x493aabd9
mov eax, 0x464bcb27
cmove ecx, eax
mov r8b, byte [rsp + 0xf]
jmp 0x180024789
mov eax, dword [rsp + 0x5c]
cmp eax, 2
mov ecx, 0xacb34020
mov eax, 0x44f6a162
cmovl ecx, eax
jmp 0x180024789
mov eax, dword [rsp + 0x7c]
mov byte [rsp + 0xd], al
movzx ecx, byte [rsp + 0x38]
mov dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0x50]
mov ebx, ecx
xor ebx, 0xffffff0f
and ebx, ecx
cmp ebx, 0x40
mov ecx, 0x22564384
mov eax, 0x9458d0a1
cmove ecx, eax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x198], rax
mov dword [rsp + 0x78], 0
mov al, byte [rsp + 0x38]
mov byte [rsp + 0x32], al
jmp 0x180024789
mov bpl, 2
mov ecx, 0x27dd171f
jmp 0x180024789
mov cl, byte [rsp + 5]
mov byte [rdx + 1], cl
mov r9b, byte [rsp + 6]
mov ecx, r9d
not cl
and cl, 0x83
mov rax, r12
mov r12d, r9d
and r12b, 0x7c
or r12b, cl
xor r12b, 0x87
and r9b, 4
or r9b, r12b
mov r12, rax
mov ecx, 0xb5666b12
jmp 0x180024789
mov cl, byte [rsp + 4]
mov esi, 0x80
shr esi, cl
mov ecx, dword [rsp + 0xc4]
not esi
not ecx
or ecx, esi
cmp ecx, 0xffffffff
mov ecx, 0x5dee7315
jmp 0x180026950
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
and ecx, 4
xor eax, 4
or eax, ecx
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0x150]
inc rax
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x150]
mov al, byte [rax]
mov byte [rdx + 0x15], al
mov ecx, 0x2190b159
jmp 0x180024789
mov eax, dword [rsp + 0x4c]
mov ecx, eax
xor ecx, 0xffffffbf
test ecx, eax
mov ecx, 0x64c70e23
mov eax, 0xa1b483f7
cmove ecx, eax
jmp 0x180024789
mov rcx, qword [rsp + 0x98]
cmp byte [rcx], 0
mov ecx, 0x2206d89
mov eax, 0x317294a1
cmove ecx, eax
jmp 0x180024789
movzx ecx, byte [rsp + 4]
mov dword [rsp + 0xcc], ecx
mov ecx, dword [rsp + 0xcc]
cmp ecx, 4
mov ecx, 0xdc60df4f
mov eax, 0xeabbcc62
cmove ecx, eax
mov r11b, 3
jmp 0x180024789
mov eax, dword [rsp + 0x5c]
cmp eax, 2
mov ecx, 0x5bd2991c
mov eax, 0x2343cbe6
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0xf7
mov ecx, 0x92b55732
mov eax, 0x40e2664
cmovl ecx, eax
jmp 0x180024789
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x150], rax
mov eax, dword [rsp + 0x4c]
mov ecx, eax
xor ecx, 0xfffffffd
test ecx, eax
mov ecx, 0x5a99884
mov eax, 0x2190b159
cmove ecx, eax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x1d0], rax
jmp 0x180024789
mov ecx, dword [rsp + 0x54]
cmp ecx, 0x20
mov ecx, 0xfa754f9b
mov eax, 0xd1d98540
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x54]
cmp ecx, 0x22
mov ecx, 0x82781a8c
mov eax, 0x7d0eadd3
cmovl ecx, eax
jmp 0x180024789
mov ecx, 0x62e0fc75
lea rax, [0x180046217]
mov qword [rsp + 0x1a8], rax
lea rax, [0x180046208]
mov qword [rsp + 0x1a0], rax
jmp 0x180024789
mov cl, byte [rsp + 5]
mov byte [rdx + 4], cl
mov r9b, byte [rsp + 6]
mov ecx, r9d
and cl, 8
xor r9b, 8
or r9b, cl
mov ecx, 0xb5666b12
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
not esi
and esi, 0x3ab141b6
mov ebx, ecx
and ebx, 0xc54ebe49
or ebx, esi
xor ebx, 0x3ab171b6
and ecx, 0x3000
or ecx, ebx
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov ecx, 0x672b245c
jmp 0x180024789
mov eax, dword [rsp + 0x5c]
cmp eax, 1
mov ecx, 0x5bd2991c
mov eax, 0xdeda6d3b
cmove ecx, eax
jmp 0x180024789
mov rcx, qword [rsp + 0x140]
inc rcx
mov qword [rsp + 0x1f0], rcx
mov rcx, qword [rsp + 0x140]
mov cl, byte [rcx]
cmp cl, byte [rsp + 0x45]
mov ecx, 0x1497d060
mov eax, 0xbbf13b3b
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x36
mov ecx, 0x6361fb34
mov eax, 0xe9daaa89
cmovl ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x94]
cmp ecx, 0x8c
mov ecx, 0xb8dc49d3
mov eax, 0x13fee775
cmove ecx, eax
jmp 0x180024789
movzx ecx, byte [rsp + 7]
mov rsi, rcx
shr rsi, 2
lea rax, [0x180046030]
movzx esi, byte [rsi + rax + 0x13c]
and ecx, 3
add ecx, esi
mov bl, byte [rsp + 0xe]
mov cl, byte [rcx + rax + 0x13c]
xor cl, bl
not cl
test cl, bl
mov ecx, 0x42f5750b
jmp 0x180026cc4
mov ecx, dword [rsp + 0xc8]
cmp ecx, 1
jmp 0x180026cdb
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
not ecx
and ecx, 0x4f225b88
mov esi, eax
and esi, 0xb0dda477
or esi, ecx
xor esi, 0x4f225bc8
and eax, 0x40
or eax, esi
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0xd8]
mov al, byte [rax]
mov byte [rdx + 0x1d], al
mov ecx, 0xfb9402a1
jmp 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0xd7
mov ecx, 0x2ff617ee
mov eax, 0xa46e4243
cmovl ecx, eax
jmp 0x180024789
mov ecx, 0x9b66be24
mov al, byte [rsp + 7]
mov byte [rsp + 0x33], al
lea rax, [0x180046208]
mov qword [rsp + 0x1c0], rax
lea rax, [0x1800461f6]
mov qword [rsp + 0x1b8], rax
jmp 0x180024789
mov ecx, dword [rsp + 0x3c]
cmp ecx, 0xc5
mov ecx, 0x498968d2
mov eax, 0xf0598be3
cmovl ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x67
mov ecx, 0xdf5d5e9b
mov eax, 0x9614b707
cmovl ecx, eax
jmp 0x180024789
cmp dword [rsp + 0x58], 0
mov ecx, 0x322b3e1e
mov eax, 0xc35774c0
cmovle ecx, eax
jmp 0x180024789
mov rax, r15
movabs rcx, 0x42498ef4650d60a4
sub rax, rcx
sub rax, qword [rsp + 0x210]
add rax, rcx
mov qword [rsp + 0x130], rdx
mov rcx, qword [rsp + 0x130]
mov byte [rcx], al
movabs rsi, 0x6491a27d6c1c861f
mov ecx, esi
not ecx
or ecx, esi
and ecx, eax
test cl, 0xf0
mov ecx, 0x96c44dd6
mov eax, 0x9e82fa32
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x48]
mov esi, ecx
xor esi, 0xffffffef
test esi, ecx
mov ecx, 0x27dd171f
mov eax, 0x9580cf1e
cmove ecx, eax
mov bpl, 2
jmp 0x180024789
mov ecx, dword [rsp + 0x54]
cmp ecx, 0x23
mov ecx, 0xfa754f9b
mov eax, 0x8c594372
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x64
mov ecx, 0xe9881f11
mov eax, 0x7644e0ce
cmovl ecx, eax
jmp 0x180024789
mov bpl, 1
mov ecx, 0x27dd171f
jmp 0x180024789
movzx ecx, byte [rsp + 7]
mov dword [rsp + 0x94], ecx
mov ecx, 0x51487239
jmp 0x180024789
mov ecx, dword [rsp + 0x90]
add cl, 0x27
mov byte [rsp + 0x35], cl
mov cl, byte [rsp + 3]
cmp cl, 3
mov ecx, 0xa45bfa73
mov eax, 0x93d6eaa7
cmove ecx, eax
jmp 0x180024789
mov rcx, qword [rsp + 0x98]
cmp byte [rcx], 0
mov ecx, 0xbad54818
mov eax, 0x95b8d6c5
cmove ecx, eax
jmp 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
not ecx
and ecx, 0xa5746621
mov esi, eax
and esi, 0x5a8b99de
or esi, ecx
xor esi, 0xa5746631
and eax, 0x10
or eax, esi
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rax, qword [rsp + 0x60]
mov eax, dword [rax]
mov dword [rdx + 0x15], eax
mov rax, qword [rsp + 0x60]
add rax, 4
mov qword [rsp + 0xf8], rax
mov ecx, 0x59799783
jmp 0x180024789
mov cl, byte [rsp + 5]
mov byte [rdx + 3], cl
mov r9b, byte [rsp + 6]
mov ecx, r9d
not cl
and cl, 0x4d
mov ebx, r9d
and bl, 0xb2
or bl, cl
xor bl, 0xd
and r9b, 0x40
or r9b, bl
mov ecx, 0xb5666b12
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x2e
mov ecx, 0xfdddd671
mov eax, 0x5fce646a
cmovl ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x3e
mov ecx, 0x70251de6
mov eax, 0xedc3a7d9
cmovl ecx, eax
jmp 0x180024789
mov al, byte [rsp + 0xe]
mov ecx, eax
xor cl, 0xf7
test cl, al
mov ecx, 0xfb3736a7
mov eax, 0xfa975ff3
cmove ecx, eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x190], rax
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
not esi
and esi, 0x69f98e38
mov ebx, ecx
and ebx, 0x960671c7
or ebx, esi
xor ebx, 0x69f98e39
and ecx, 1
or ecx, ebx
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov rcx, qword [rsp + 0xe8]
inc rcx
mov qword [rsp + 0x1e8], rcx
mov rcx, qword [rsp + 0xe8]
mov cl, byte [rcx]
mov byte [rdx + 0xd], cl
mov ebx, ecx
shr bl, 6
mov byte [rsp + 3], bl
mov bl, byte [rsp + 3]
mov byte [rdx + 0xe], bl
mov ebx, ecx
xor bl, 0xf8
and bl, cl
mov byte [rsp + 0xc], bl
mov bl, byte [rsp + 0xc]
mov byte [rdx + 0x10], bl
shr cl, 3
and cl, 7
mov byte [rsp + 4], cl
mov cl, byte [rsp + 4]
mov byte [rdx + 0xf], cl
movzx ecx, byte [rsp + 0x44]
mov dword [rsp + 0xc4], ecx
cmp dword [rsp + 0xc4], 0
mov ecx, 0xadd7a76b
mov eax, 0x8be872da
cmove ecx, eax
jmp 0x180024789
mov al, byte [rsp + 0xe]
not al
or al, 0xf7
cmp al, 0xff
mov ecx, 0xb2b15a35
mov eax, 0x4d7da5c2
cmove ecx, eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x188], rax
jmp 0x180024789
mov rcx, qword [rsp + 0x138]
inc rcx
mov qword [rsp + 0x1d8], rcx
mov rcx, qword [rsp + 0x138]
mov cl, byte [rcx]
mov byte [rsp + 5], cl
movzx ecx, byte [rsp + 5]
mov dword [rsp + 0x20], ecx
mov ecx, 0x3cb6543b
jmp 0x180024789
mov eax, dword [rsp + 0x4c]
mov ecx, eax
xor ecx, 0xfffffffb
test ecx, eax
mov ecx, 0xb2b15a35
mov eax, 0xaa5524b9
cmove ecx, eax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x188], rax
jmp 0x180024789
mov rax, qword [rsp + 0x10]
mov eax, dword [rax]
mov ecx, eax
not ecx
and ecx, 0xf5e0020b
mov esi, eax
and esi, 0xa1ffdf4
or esi, ecx
xor esi, 0xf5e0001b
and eax, 0x210
or eax, esi
mov rcx, qword [rsp + 0x10]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x190]
mov eax, dword [rcx]
mov dword [rdx + 0x15], eax
lea r15, [rcx + 4]
mov ecx, 0x521942d6
jmp 0x180024789
mov al, byte [rsp + 0x31]
mov byte [rsp + 0x3a], al
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x1f8], rax
mov al, byte [rsp + 0x30]
mov byte [rsp + 0x3b], al
mov al, byte [rsp + 0x2f]
mov byte [rsp + 0x2c], al
mov qword [rsp + 0x200], r12
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
not esi
and esi, 0x2f8e37bb
mov ebx, ecx
and ebx, 0xd071c844
or ebx, esi
xor ebx, 0x2f8e07bb
and ecx, 0x3000
or ecx, ebx
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov cl, byte [rsp + 0x2c]
not cl
or cl, 2
cmp cl, 0xdb
mov ecx, 0xbc0162de
mov eax, 0x6910590f
cmove ecx, eax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x110], rax
mov al, byte [rsp + 0x2c]
mov byte [rsp + 0x29], al
mov al, byte [rsp + 0x3b]
mov byte [rsp + 0x2a], al
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x108], rax
mov dword [rsp + 0x68], 0
jmp 0x180026dbd
mov cl, byte [rsp + 0x1e]
inc cl
mov byte [rsp + 0x34], cl
movzx ecx, byte [rsp + 0xd]
mov dword [rsp + 0x88], ecx
mov ecx, dword [rsp + 0x88]
not ecx
or ecx, 0xffffffef
cmp ecx, 0xffffffff
mov ecx, 0x73ca0e42
mov eax, 0xb2b53fcc
cmove ecx, eax
jmp 0x180024789
mov eax, dword [rsp + 0x84]
cmp eax, 0xa0
mov ecx, 0xf934a16
mov eax, 0xbafbc1b6
cmovge ecx, eax
mov r10, qword [rsp + 0xa0]
mov dil, byte [rsp + 0xd]
mov al, byte [rsp + 8]
mov byte [rsp + 9], al
mov al, byte [rsp + 0x1e]
mov byte [rsp + 0xa], al
lea r14, [0x180046030]
jmp 0x180024789
mov ecx, dword [rsp + 0x90]
cmp ecx, 0xe0
mov ecx, 0x2206d89
mov eax, 0xd94409a7
cmovl ecx, eax
jmp 0x180024789
mov eax, dword [rsp + 0x6c]
mov byte [rsp + 0x39], al
mov ecx, dword [rsp + 0x50]
shr ecx, 2
mov ebx, ecx
xor bl, 0xfe
and bl, cl
mov byte [rdx + 8], bl
mov ecx, dword [rsp + 0x50]
shr ecx, 1
mov ebx, ecx
xor bl, 0xfe
and bl, cl
mov byte [rdx + 9], bl
mov ecx, dword [rsp + 0x50]
mov ebx, ecx
xor bl, 0xfe
and bl, cl
mov byte [rdx + 0xa], bl
mov rcx, qword [rsp + 0xe0]
inc rcx
mov qword [rsp + 0x1e0], rcx
mov rcx, qword [rsp + 0xe0]
mov cl, byte [rcx]
mov byte [rsp + 0x2b], cl
mov cl, byte [rsp + 0x2b]
mov ebx, ecx
xor bl, 0xf
and bl, cl
cmp bl, 0x40
mov ecx, 0x22564384
mov eax, 0xde403182
cmove ecx, eax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x198], rax
mov al, byte [rsp + 0x2b]
mov byte [rsp + 0x32], al
mov al, byte [rsp + 0x39]
mov dword [rsp + 0x78], eax
jmp 0x180024789
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x180], rax
mov ecx, 0xcaebca6d
mov al, byte [rsp + 5]
mov byte [rsp + 0x2e], al
jmp 0x180024789
mov edi, dword [rsp + 0x88]
mov eax, edi
not al
and al, 0xa3
mov ecx, edi
and cl, 0x5c
or cl, al
xor cl, 0xab
and dil, 8
or dil, cl
mov al, byte [rsp + 0x34]
mov byte [rsp + 0xa], al
mov r10, qword [rsp + 0xa0]
mov ecx, 0xf934a16
mov al, byte [rsp + 8]
mov byte [rsp + 9], al
lea r14, [0x180046030]
jmp 0x180024789
xor ebp, ebp
mov ecx, 0x27dd171f
jmp 0x180024789
mov eax, dword [rsp + 0x74]
mov byte [rsp + 0x44], al
mov eax, dword [rsp + 0x70]
mov byte [rsp + 0xf], al
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x98], rax
mov rcx, qword [rsp + 0x98]
cmp byte [rcx], 0
mov ecx, 0x811d1af7
mov eax, 0x672b245c
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0xcc]
cmp ecx, 5
mov ecx, 0xcd8a3cc8
mov eax, 0xeabbcc62
cmove ecx, eax
mov r13b, 3
mov r11b, 3
jmp 0x180024789
movzx ecx, byte [rsp + 7]
mov dword [rsp + 0x3c], ecx
mov ecx, 0x1fdcf66d
jmp 0x180024789
mov ecx, dword [rsp + 0xd0]
cmp ecx, 6
mov ecx, 0xcd8a3cc8
mov eax, 0xeabbcc62
cmovge ecx, eax
mov r13b, byte [rsp + 3]
mov r11b, byte [rsp + 3]
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
mov eax, 0x11000
and esi, eax
xor ecx, eax
or ecx, esi
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov r13d, r11d
mov ecx, 0xcd8a3cc8
jmp 0x180024789
mov r8d, dword [rsp + 0x8c]
mov ecx, r8d
and cl, 2
xor r8b, 2
or r8b, cl
mov ecx, 0x493aabd9
jmp 0x180024789
mov r13b, byte [rsp + 3]
mov ecx, 0xcd8a3cc8
jmp 0x180024789
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x110], rax
mov al, byte [rsp + 0x2c]
mov byte [rsp + 0x29], al
mov al, byte [rsp + 0x3b]
mov byte [rsp + 0x2a], al
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x108], rax
mov ecx, 0xbc0162de
mov al, 1
mov dword [rsp + 0x68], eax
mov al, byte [rsp + 0x3a]
mov byte [rsp + 0x28], al
jmp 0x180024789
mov byte [rsp + 0xb], 4
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0xa8], rax
mov ecx, 0xe602a8ab
jmp 0x180024789
mov al, byte [rsp + 0x2e]
mov byte [rsp + 0x38], al
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0xe0], rax
movzx ecx, byte [rsp + 6]
mov dword [rsp + 0xbc], ecx
mov ecx, dword [rsp + 0xbc]
shl ecx, 0x17
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x10], rax
mov rbx, qword [rsp + 0x10]
mov dword [rbx], ecx
cmp byte [rsp + 6], 0
mov ecx, 0x374acc9f
mov eax, 0xab7d03b2
cmove ecx, eax
mov al, byte [rsp + 6]
mov dword [rsp + 0x7c], eax
jmp 0x180024789
cmp byte [rsp + 0x80], 0
mov ecx, 0x4a953f32
mov eax, 0xff2285e9
cmovns ecx, eax
jmp 0x180024789
mov rcx, qword [rsp + 0x10]
mov ecx, dword [rcx]
mov esi, ecx
not esi
and esi, 0xec438792
mov ebx, ecx
and ebx, 0x13bc786d
or ebx, esi
xor ebx, 0xec43b792
and ecx, 0x3000
or ecx, ebx
mov rsi, qword [rsp + 0x10]
mov dword [rsi], ecx
mov ecx, 0x8be872da
jmp 0x180024789
movsxd rax, dword [rsp + 0x5c]
add rax, qword [rsp + 0xd8]
mov qword [rsp + 0x100], rax
mov al, byte [rsp + 0x47]
mov byte [rsp + 0x27], al
mov ecx, 0x7e77d848
jmp 0x180024789
mov ecx, dword [rsp + 0x20]
cmp ecx, 0x2e
mov ecx, 0x62c81396
mov eax, 0xe9881f11
cmove ecx, eax
jmp 0x180024789
mov ecx, dword [rsp + 0x54]
cmp ecx, 0x21
mov ecx, 0x8c594372
mov eax, 0x172ca141
cmovl ecx, eax
jmp 0x180024789
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x60], rax
movzx eax, byte [rsp + 0x27]
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x4c]
not eax
or eax, 0xffffffef
cmp eax, 0xffffffff
mov ecx, 0x5f02a14
mov eax, 0x59799783
cmove ecx, eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0xf8], rax
jmp 0x180024789
movzx ecx, byte [rsp + 4]
mov dword [rsp + 0xc8], ecx
mov ecx, dword [rsp + 0xc8]
cmp ecx, 5
mov ecx, 0x46736057
mov eax, 0xeabbcc62
cmovge ecx, eax
mov r11b, 3
jmp 0x180024789
cmp ecx, 0xd45a4979
jne 0x180024789
mov eax, dword [rsp + 0x158]
add rsp, 0x238
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret