Function at 0x288891
Capabilities:
Authenticate hmac
Execute anti-debugging instructions

Disassembly:
mov qword [rsp + 0x18], r8
bsr r10w, bp
add r9b, r14b
shr r11b, cl
mov qword [rsp + 0x10], rdx
rol r9w, cl
mov qword [rsp + 8], rcx
bsf r9d, ebp
mov r8w, r11w
movzx ax, dil
push rbx
neg r11w
cqo
sal r9, cl
push rbp
xor r8b, 0xa8
movsx bp, sil
push rsi
cmp r9d, ebp
cwd
movsx r9d, dx
push rdi
shr sil, cl
rol r10b, cl
sub r11b, 0x85
push r12
push r13
push r14
sbb r10b, dl
rdtsc
push r15
movzx r15w, sil
sub rsp, 0x48
sbb r14b, r15b
rcl sil, 0xb8
movzx r10, r8w
mov eax, dword [rcx + 0x4c]
mov edi, dword [rcx + 0x58]
mov r13, qword [rcx + 0x10]
mov r15d, dword [rcx + 0x48]
cmc
mov rdx, rcx
mov dword [rsp], eax
shld r11, rsi, 0x39
mov eax, dword [rcx + 0x50]
xadd r10b, r8b
btc ebp, ebx
mov rsi, qword [rdx + 0x18]
ror r8w, cl
or bp, sp
bsf rbp, r8
mov r10d, dword [rdx + 0x40]
seta r11b
mov r14, qword [rdx + 0x30]
mov rbp, qword [rdx + 0x20]
mov r9d, dword [rdx + 0x28]
movsxd rbx, edx
mov r8d, dword [rdx + 0x2c]
add r12w, 0x68ba
mov dword [rsp + 4], eax
test r11, r12
mov eax, dword [rcx + 0x54]
mov ecx, dword [rcx + 8]
movsx r12w, r8b
sbb bx, 0x6e01
mov dword [rsp + 8], eax
xor rbx, 0x275528
bsr bx, dx
mov eax, 1
sub r12b, dl
movsx bx, sil
clc
mov r11d, 1
mov dword [rsp + 0xc], edi
bsf bx, sp
mov qword [rsp + 0x30], rsi
shl r11d, cl
xor rbx, rcx
bsr ecx, ebx
rcr bx, cl
mov ecx, dword [rdx + 4]
cmovbe bx, sp
mov dword [rsp + 0xa8], r10d
shl eax, cl
movsx r12d, r8w
bswap bx
movsx rbx, r13w
dec r11d
bswap cx
dec eax
bts rcx, r15
mov r12b, al
mov dword [rsp + 0x20], r11d
rcl r12b, 0x38
mov dword [rsp + 0x24], eax
mov eax, dword [rdx]
ror bx, 0x99
shrd r12, r12, 0xb6
bts r12w, r15w
mov dword [rsp + 0x28], eax
shl cx, 0xc4
cdqe
sar ecx, cl
mov rax, qword [rdx + 0x38]
test r11b, 0x41
btr bx, r10w
rcl r12b, 0x53
mov qword [rsp + 0x18], rax
rcl ch, cl
test bp, r12w
mov eax, dword [rdx + 0x44]
mov dword [rsp + 0x10], eax
bt rbx, rcx
xor eax, eax
clc
xadd r12, rcx
mov r12d, eax
rcl bl, cl
rol rcx, 0xcd
setp bl
nop
btc ax, 0x53
rcl rcx, 0x7a
movzx eax, r12w
mov ebx, r10d
mov ch, 0x17
and ebx, r11d
bsf cx, r14w
btr r11, 0xf2
shl r11w, 0x8a
mov r11d, r15d
adc ax, r10w
movsx cx, sil
shl r11d, 4
cmovbe ecx, edx
mov eax, ebx
lea r11, [r11 + rax]
bts rcx, r10
jmp 0x288a87
movzx ecx, word [r13 + r11*2]
cmp r9d, 0x1000000
jmp 0x288a99
jae 0x288ac5
movzx eax, byte [rbp]
cmp r11b, sil
clc
shl r8d, 8
shl r9d, 8
or r8d, eax
movzx ax, dil
inc rbp
cmp bpl, r9b
btr ax, r8w
xadd al, al
mov eax, r9d
shr eax, 0xb
cmc
jmp 0x288ad4
imul eax, ecx
stc
cmp r9, 0x17f0001c
cmp r8d, eax
jmp 0x288ae7
jae 0x288efd
mov r9d, eax
test bh, 0x2b
movsx edi, r14w
sar eax, 0x5a
mov eax, 0x800
mov dil, 0xb9
bsr di, si
btc edi, r10d
lea rdi, [r13 + 0xe6c]
sub eax, ecx
stc
cmp r14b, r14b
cmp r13d, 0x7c30531a
shr eax, 5
add ax, cx
stc
cmp dword [rsp + 0x10], 0
mov word [r13 + r11*2], ax
jmp 0x288b35
jne 0x288b44
test r10d, r10d
je 0x288be9
mov ebx, dword [rsp + 0x28]
shld ax, r14w, 0x1c
sub ecx, ebx
rcr al, 0x46
mov r11, qword [rsp + 0x18]
test r14, r14
seta dl
mov cl, ch
mov ecx, 8
not dl
cqo
setl al
mov rax, r14
mov dh, 0x45
cmovl edx, eax
cmove rax, r11
cmp r12, 0x194559ee
bts rdx, rsp
sub cl, bl
movzx edx, byte [rax + rsi - 1]
sbb ax, sp
btc eax, 0x9b
mov eax, r10d
jmp 0x288ba0
and eax, dword [rsp + 0x24]
cmp r8b, dil
shr edx, cl
movsx ecx, r9w
add cx, si
mov ecx, ebx
test r9w, 0x30e2
shl eax, cl
add edx, eax
bt ax, 0xd9
lea eax, [rdx + rdx*2]
shrd dx, sp, 0x3a
neg dh
mov rdx, qword [rsp + 0x90]
jmp 0x288bd8
shl eax, 8
jmp 0x288be0
lea rdi, [rdi + rax*2]
jmp 0x288bee
mov r11, qword [rsp + 0x18]
cmp r15d, 7
jmp 0x288bf7
jae 0x288d05
cmp r15d, 4
cdqe
jmp 0x288c08
mov eax, 3
mov edx, 1
cmovb eax, r15d
bts ecx, r8d
and ch, 0xa
sar r10w, 0xf7
sub r15d, eax
rcr rcx, 0x61
xor r10d, edx
movsxd r10, ecx
nop
movzx r10, si
cmc
mov r10d, edx
movsxd rcx, r8d
test dl, r14b
movzx ecx, word [rdi + r10*2]
cmp r9d, 0x1000000
jae 0x288c80
movzx eax, byte [rbp]
shl r8d, 8
cmp bp, 0x2326
test sil, 0xc6
shl r9d, 8
cmp dh, 0x25
cmc
or r8d, eax
movzx ax, sil
movsx rax, cx
inc rbp
btr rax, 0xb2
shl ah, 0x62
mov eax, r9d
shr eax, 0xb
imul eax, ecx
cmp r8d, eax
jae 0x288cbe
mov r9d, eax
clc
mov eax, 0x800
clc
sub eax, ecx
shr eax, 5
clc
test r8b, r8b
add ax, cx
add edx, edx
jmp 0x288caf
mov word [rdi + r10*2], ax
jmp 0x288cb9
jmp 0x288cef
sub r9d, eax
cmc
sub r8d, eax
add ax, r11w
btr ax, 0x36
shr al, cl
mov eax, ecx
test r8b, sil
shr eax, 5
cmp sil, r10b
lea edx, [rdx + rdx + 1]
cmp al, 0xe9
test r12w, sp
sub cx, ax
mov word [rdi + r10*2], cx
cmc
clc
cmp edx, 0x100
jmp 0x288cfa
jb 0x288c35
jmp 0x288ecf
mov eax, dword [rsp]
sbb bh, 0x1b
sub ecx, ecx
stc
movsx rbx, r10w
cmp r15, rbp
mov ebx, 0x100
mov esi, 0x4751e95
sets r10b
xor r10b, sil
cmp r14, rax
movzx r10d, r10w
cmovb rcx, r11
jmp 0x288d3e
sub rcx, rax
cmc
shl ah, 0x5c
mov eax, 6
setnp r10b
add rcx, qword [rdx + 0x18]
btr dx, r9w
cmp r15d, 0xa
movsx r11d, ax
movzx esi, byte [rcx + r14]
movzx r10, di
mov ecx, 3
bswap edx
movzx r11d, r15w
movzx r10, r10w
cmovb eax, ecx
lea edx, [rcx - 2]
shl r10b, 0x24
rcr r11d, 0x3d
shr r11b, 0x9f
sub r15d, eax
rcl ah, cl
test bx, r8w
add esi, esi
sar r11, 0xf
cbw
sal r10w, 0xdb
mov eax, ebx
movzx r11w, r8b
sal r11b, 0x15
and r10d, edi
mov r11d, ebx
and r11d, esi
mov r10d, r11d
shrd rcx, rcx, 0xd1
movzx cx, r9b
setle cl
add r10, rax
or ax, r9w
and ch, 0x68
mov eax, edx
rol cl, 0x7e
add r10, rax
bts cx, dx
movzx ecx, word [rdi + r10*2]
stc
cmp r15b, 0x2d
test dh, 0x83
cmp r9d, 0x1000000
jmp 0x288df2
jae 0x288e19
movzx eax, byte [rbp]
shl r8d, 8
jmp 0x288e0a
shl r9d, 8
or r8d, eax
not ah
inc rbp
sub ah, 0x7e
mov eax, r9d
test esi, 0x6cd2626d
shr eax, 0xb
cmc
cmp r11, rcx
imul eax, ecx
cmp r8d, eax
jmp 0x288e34
jae 0x288e76
mov r9d, eax
mov eax, 0x800
clc
test dil, r11b
not r11d
test esp, edi
sub eax, ecx
stc
shr eax, 5
test dl, 0xd3
cmp r12, r11
cmp r13b, 0xff
add ax, cx
cmp ax, 0x48ea
cmp r9b, r14b
add edx, edx
mov word [rdi + r10*2], ax
jmp 0x288e71
jmp 0x288eb1
sub r9d, eax
test bpl, 0xd7
sub r8d, eax
xadd al, al
bts ax, si
mov rax, 0x63220b61
mov eax, ecx
cmc
shr eax, 5
lea edx, [rdx + rdx + 1]
test spl, 0xb9
clc
sub cx, ax
cmp dl, 0xdb
stc
mov word [rdi + r10*2], cx
test r15w, sp
stc
cmp sil, dl
and ebx, r11d
clc
cmp edx, 0x100
jmp 0x288ec0
jb 0x288d92
mov rsi, qword [rsp + 0x30]
movsx r10d, r14w
mov r10d, dword [rsp + 0xa8]
jmp 0x288edc
mov byte [r14 + rsi], dl
jmp 0x288ee5
inc r14
inc r10d
jmp 0x288ef0
mov dword [rsp + 0xa8], r10d
jmp 0x28a45d
sub r9d, eax
or r10w, r11w
sub r8d, eax
bts ax, si
mov eax, ecx
xadd r10, r10
sub r10d, 0x50f5690f
or r10b, 0xd2
shr eax, 5
mov r10d, r15d
jmp 0x288f2b
sub cx, ax
mov word [r13 + r11*2], cx
movzx ecx, r12w
shl cx, cl
sal ch, cl
movzx ecx, word [r13 + r10*2 + 0x180]
cmp r9d, 0x1000000
jmp 0x288f52
jae 0x288f80
movzx eax, byte [rbp]
shl r8d, 8
test r11d, 0x10ce6865
shl r9d, 8
test r8b, 0xa7
or r8d, eax
inc rbp
movzx ax, r8b
xchg ah, ah
btc rax, rcx
mov eax, r9d
shr eax, 0xb
cmp r15b, spl
test r11b, 0xa3
imul eax, ecx
test r13b, 0xfe
jmp 0x288f99
cmp r8d, eax
jmp 0x288fa1
jae 0x288ffa
mov r9d, eax
mov eax, 0x800
lea rdx, [r13 + 0x664]
shld r11w, di, 0x1e
clc
sub eax, ecx
cmc
bsf r11w, r8w
mov r11d, 8
shr eax, 5
test di, 0x3d17
jmp 0x288fd8
add ax, cx
stc
test bx, cx
test r10b, 0x32
add r15d, 0xc
mov word [r13 + r10*2 + 0x180], ax
jmp 0x288ff5
jmp 0x289487
sub r9d, eax
sub r8d, eax
mov eax, ecx
shr eax, 5
sub cx, ax
clc
cmp dword [rsp + 0x10], 0
jmp 0x289013
mov word [r13 + r10*2 + 0x180], cx
jmp 0x289021
jne 0x289035
cmp dword [rsp + 0xa8], 0
je 0x28a58a
movzx edx, word [r13 + r10*2 + 0x198]
cmp r9d, 0x1000000
jae 0x28908c
movzx eax, byte [rbp]
bts rcx, r11
bswap rcx
shl r8d, 8
xadd ch, ch
mov cx, sp
shl r9d, 8
test r15, 0x15150ca8
test r9w, r14w
or r8d, eax
movsx ecx, r10w
mov cl, dil
movzx cx, bpl
inc rbp
sar cx, cl
shld ecx, r10d, 0x21
movsxd rcx, edi
mov ecx, r9d
jmp 0x289094
shr ecx, 0xb
clc
imul ecx, edx
cmp bp, si
jmp 0x2890a3
cmp r8d, ecx
jmp 0x2890ab
jae 0x289233
mov eax, 0x800
cmp sil, dl
xchg r9, r9
btc r9d, 0xa6
mov r9d, ecx
cmp dil, r8b
cmc
sub eax, edx
shr eax, 5
cmc
add ax, dx
mov word [r13 + r10*2 + 0x198], ax
movzx edx, word [r13 + r11*2 + 0x1e0]
cmp ecx, 0x1000000
jmp 0x2890ee
jae 0x289119
movzx eax, byte [rbp]
test r9b, dl
test bh, 0x1d
cmp spl, bl
shl r8d, 8
shl r9d, 8
or r8d, eax
inc al
inc rbp
bsf rax, rsi
cmp bpl, 7
mov eax, r9d
cmc
shr eax, 0xb
imul eax, edx
test dl, al
cmp bl, sil
cmp r8d, eax
jae 0x2891ff
mov r10d, dword [rsp + 0xa8]
movzx r9w, sil
bswap r9w
btr r9w, r8w
mov r9d, eax
and eax, 0x3d3d2ec8
add al, r13b
cmp r10, r8
xor ecx, ecx
sub ax, sp
btc rax, 0xa0
cwde
mov eax, 0x800
clc
sub eax, edx
shr eax, 5
clc
add ax, dx
mov word [r13 + r11*2 + 0x1e0], ax
btc eax, r11d
shl al, cl
rcr al, cl
mov eax, dword [rsp]
cmp r14, rax
cmovb rcx, qword [rsp + 0x18]
jmp 0x289191
inc r10d
cmc
stc
sub rcx, rax
mov dword [rsp + 0xa8], r10d
add rcx, r14
movzx eax, r10w
bswap ax
inc r14
btr ax, si
ror al, cl
cmp r15d, 7
xchg r15w, ax
not r15b
movsxd rax, r14d
movzx eax, byte [rcx + rsi]
not cx
movzx r15w, r13b
mov ecx, 9
setbe r15b
movsx r15d, r9w
bswap r15w
mov byte [r14 + rsi - 1], al
mov eax, 0xb
movsx r15, r9w
cmovb eax, ecx
bswap r15
mov r15d, eax
jmp 0x2891fa
jmp 0x28a467
sub r9d, eax
stc
test r11d, r9d
sub r8d, eax
or ax, 0x41ff
mov eax, edx
test sp, bx
shr eax, 5
cmp r9b, dil
sub dx, ax
jmp 0x289220
mov word [r13 + r11*2 + 0x1e0], dx
jmp 0x28922e
jmp 0x28944c
mov eax, edx
sub r9d, ecx
sub r8d, ecx
shr eax, 5
rcr ecx, cl
sub dx, ax
movzx rcx, r13w
btc ecx, ebp
mov word [r13 + r10*2 + 0x198], dx
movzx ecx, word [r13 + r10*2 + 0x1b0]
cmp dil, bl
cmp r9d, 0x1000000
jmp 0x28926b
jae 0x28929d
movzx eax, byte [rbp]
stc
cmp ebp, r10d
shl r8d, 8
cmp r13b, 0xe1
stc
cmc
shl r9d, 8
cmc
or r8d, eax
movzx ax, ch
setnp al
inc rbp
xor ax, r14w
bts ax, si
mov eax, r9d
test al, 0xe2
shr eax, 0xb
jmp 0x2892aa
imul eax, ecx
jmp 0x2892b2
cmp r8d, eax
jmp 0x2892ba
jae 0x2892f8
mov r9d, eax
shl ax, 0xc
mov eax, 0x800
sub eax, ecx
shr eax, 5
test r9d, r11d
add ax, cx
jmp 0x2892dc
mov word [r13 + r10*2 + 0x1b0], ax
not ah
cdqe
nop
mov eax, dword [rsp + 4]
jmp 0x2892f3
jmp 0x289433
sub r9d, eax
stc
cmc
sub r8d, eax
mov eax, ecx
jmp 0x289307
shr eax, 5
sub cx, ax
mov word [r13 + r10*2 + 0x1b0], cx
bt ecx, 3
and rcx, r9
movzx ecx, word [r13 + r10*2 + 0x1c8]
cmp r9d, 0x1000000
jmp 0x289332
jae 0x289358
movzx eax, byte [rbp]
shl r8d, 8
test edx, ecx
shl r9d, 8
jmp 0x28934e
or r8d, eax
inc rbp
add ax, r12w
mov eax, r9d
shr eax, 0xb
jmp 0x289369
imul eax, ecx
test r13b, 0xc4
cmp r8d, eax
jmp 0x289378
jae 0x2893bc
mov r9d, eax
mov eax, 0x800
cmp dil, al
stc
clc
sub eax, ecx
test r14, 0x39245b1
cmc
shr eax, 5
test spl, 0x41
add ax, cx
jmp 0x2893a4
mov word [r13 + r10*2 + 0x1c8], ax
mov eax, r11d
mov ah, 0x22
mov eax, dword [rsp + 8]
jmp 0x28941d
sub r9d, eax
movzx r11d, r8w
movzx r11, r8w
sub r8d, eax
mov eax, ecx
test rsi, 0x2dc87704
xor r11w, 0x5c92
cmp r12w, r15w
shr eax, 5
cmovne r11w, di
bsf r11, r12
sub cx, ax
mov eax, edi
mov word [r13 + r10*2 + 0x1c8], cx
btr r11, 0x4d
or r11, r14
mov ecx, dword [rsp + 8]
bswap dx
movzx rdi, r10w
mov edi, ecx
xadd r11b, r11b
movsxd rdx, r12d
movzx edx, r14w
mov dword [rsp + 0xc], ecx
rcl edx, cl
mov ecx, dword [rsp + 4]
shl dh, cl
movzx r11w, bpl
mov dword [rsp + 8], ecx
btc rdx, 0xce
shl dh, cl
mov ecx, dword [rsp]
rol r11b, 0x24
rcl edx, 0xa9
shld r11d, edi, 0
mov dword [rsp], eax
shr dl, 0xab
mov dword [rsp + 4], ecx
cmp r15d, 7
movsx r15, r9w
rdtsc
mov eax, 0xb
xchg ch, ch
mov r11d, 8
cmovb eax, r11d
adc r15b, 0xf0
sal ch, 0xe6
jmp 0x289473
lea rdx, [r13 + 0xa68]
mov r15d, eax
bt ecx, ecx
inc ch
movzx cx, r15b
movzx ecx, word [rdx]
cmp r9d, 0x1000000
jmp 0x289496
jae 0x2894d5
movzx eax, byte [rbp]
test r11, rsp
jmp 0x2894af
shl r8d, 8
cmc
cmp r15d, 0xa771996
shl r9d, 8
or r8d, eax
mov ah, 0x11
inc rbp
jmp 0x2894d5
mov eax, r9d
test r11b, 0xa1
shr eax, 0xb
cmp r11b, 0x79
imul eax, ecx
cmc
jmp 0x2894ec
cmp r8d, eax
jae 0x289567
mov r9d, eax
and r10w, r11w
btc r10w, bx
bt r10w, bx
mov eax, 0x800
jmp 0x289510
sub eax, ecx
sub r10d, r14d
bt r10w, r14w
shr eax, 5
rcl r10b, cl
shrd r10w, r13w, 0xc3
setae r10b
add ax, cx
sar r10b, cl
bts r10, r9
mov word [rdx], ax
bsf rax, r12
cmp dx, 0x7804
stc
lea eax, [rbx*8]
lea r10, [rdx + rax*2 + 4]
shld rbx, r11, 0xaa
bts ebx, r12d
sub eax, eax
movsxd rbx, r10d
mov ebx, eax
jmp 0x289562
jmp 0x2896c8
sub r9d, eax
cmc
cmp dil, 2
sub r8d, eax
movzx eax, bp
ror ax, 0x75
bt eax, 0xb3
mov eax, ecx
shr eax, 5
jmp 0x289587
sub cx, ax
jmp 0x289594
mov word [rdx], cx
stc
movzx ecx, word [rdx + 2]
test r9, 0x3f03bef
jmp 0x2895a8
cmp r9d, 0x1000000
jmp 0x2895b4
jae 0x2895eb
movzx eax, byte [rbp]
cmp r15d, r15d
shl r8d, 8
clc
test rdx, 0x38bd5155
test spl, r8b
shl r9d, 8
clc
test di, 0x2be3
or r8d, eax
movzx eax, ax
inc rbp
seto al
shld rax, r10, 5
mov eax, r9d
shr eax, 0xb
test r13b, 0xa9
imul eax, ecx
test ch, 0xbd
cmp r8d, eax
jae 0x28966f
mov r9d, eax
bsr r10d, esp
mov eax, 0x800
btr r10d, 0x39
movsxd r10, r13d
xadd r10w, r10w
sub eax, ecx
add r10d, r15d
and r10, rdx
shr eax, 5
dec r10d
add ax, cx
movzx r10w, al
cmove r10, r8
movsx r10w, al
mov word [rdx + 2], ax
lea eax, [rbx*8]
mov ebx, ebx
movsxd rbx, r11d
movsx r10d, r14w
mov ebx, r11d
bswap r10d
mov r10b, 0x28
setae r10b
lea r10, [rdx + rax*2 + 0x104]
jmp 0x28966a
jmp 0x2896c8
sub r9d, eax
sub r8d, eax
neg al
movsx ax, cl
adc al, r13b
mov eax, ecx
sal r10w, cl
and bh, al
shr eax, 5
bsf rbx, r12
sar r12d, 0x3a
shr bl, 0x4e
lea r10, [rdx + 0x204]
rcl r12b, cl
ror r11w, 0x15
mov ebx, 0x10
sub cx, ax
mov r11d, 0x100
bsf r12w, sp
sub r12b, 0x12
or r12d, r15d
mov word [rdx + 2], cx
mov cl, r14b
test r12b, 0xa8
mov edx, 1
cmp bp, 0x36f8
inc r12w
mov r12d, edx
dec rcx
nop
lea rdx, [rdx + rdx]
movzx ecx, word [rdx + r10]
cmp r12b, 0x85
cmp r9d, 0x1000000
jmp 0x2896f6
jae 0x28971a
movzx eax, byte [rbp]
cmc
shl r8d, 8
shl r9d, 8
or r8d, eax
mov eax, r11d
jmp 0x289714
inc rbp
and ah, 0xe8
mov eax, r9d
shr eax, 0xb
clc
cmp rbx, 0x244519d9
imul eax, ecx
test spl, bl
cmp r8d, eax
jmp 0x289736
jae 0x28976d
mov r9d, eax
not ax
mov eax, 0x800
test r10b, sil
sub eax, ecx
clc
shr eax, 5
cmc
clc
add ax, cx
clc
add r12d, r12d
jmp 0x28975e
mov word [rdx + r10], ax
jmp 0x289768
jmp 0x2897b3
sub r9d, eax
cmp al, 0xf9
stc
sub r8d, eax
sub ah, 0xb3
rol ah, cl
mov eax, ecx
cmc
cmp r13b, 0x76
shr eax, 5
cmp si, 0x492
stc
lea r12d, [r12 + r12 + 1]
test r12b, 0x76
cmp r9b, r8b
sub cx, ax
inc rdx
jmp 0x2897a6
mov word [rdx + r10 - 1], cx
cmp r8, 0x29324b2c
cmp r12d, r11d
jb 0x2896dd
sub ebx, r11d
add r12d, ebx
cmp r15d, 0xc
jb 0x28a2e3
cmp r12d, 4
mov ebx, 3
cmovno rax, r11
movzx rax, ax
rdtsc
mov eax, ebx
sets dl
cmovb eax, r12d
test sil, cl
or rcx, rsp
rcr ch, 0x9e
shl eax, 6
lea rcx, [r13 + rax*2 + 0x360]
inc dl
jmp 0x289803
movzx edx, word [rcx + 2]
stc
clc
cmp cl, dl
cmp r9d, 0x1000000
jmp 0x289817
jae 0x289850
movzx eax, byte [rbp]
cmc
stc
shl r8d, 8
jmp 0x28982f
shl r9d, 8
jmp 0x289838
or r8d, eax
mov ax, bx
bswap rax
cbw
inc rbp
movzx ax, bpl
btr ax, 0xe9
mov eax, r9d
cmp r14d, r14d
cmp sil, 0x85
shr eax, 0xb
stc
test r10w, sp
imul eax, edx
cmp r8d, eax
jae 0x2898aa
mov r9d, eax
mov eax, 0x800
mov r11d, 2
adc r10w, di
sub r10w, 0x512b
sub eax, edx
mov r10, r11
test r13b, 0x21
shr eax, 5
test r15w, 0x835
clc
add ax, dx
jmp 0x2898a1
mov word [rcx + 2], ax
jmp 0x2898f0
sub r9d, eax
sub r8d, eax
movsx ax, r14b
mov eax, edx
mov r10b, 0x62
sar r10w, cl
movzx r10d, r8w
shr eax, 5
xadd r10w, r10w
neg r11b
mov r11d, ebx
bts r10d, esp
mov r10, rbx
jmp 0x2898e3
sub dx, ax
test sil, r14b
cmp rsi, r14
mov word [rcx + 2], dx
lea r10, [r10 + r10]
bts dx, dx
movzx edx, word [r10 + rcx]
cmp r9d, 0x1000000
jmp 0x289909
jae 0x28993f
movzx eax, byte [rbp]
jmp 0x289920
shl r8d, 8
cmp r12b, 0xf
shl r9d, 8
test r14d, 0x4a245cab
or r8d, eax
inc rbp
movzx eax, r9w
cdqe
mov eax, r9d
test cx, dx
test r8b, 0x2c
shr eax, 0xb
cmc
imul eax, edx
cmp bpl, 2
cmp r8d, eax
jmp 0x28995c
jae 0x2899a0
mov r9d, eax
sbb ax, 0x742e
mov eax, 0x800
sub eax, edx
clc
test bh, 0xe0
cmp r12, 0x6cb631ff
shr eax, 5
add ax, dx
cmp bx, bx
jmp 0x289989
add r11d, r11d
jmp 0x289991
mov word [r10 + rcx], ax
jmp 0x28999b
jmp 0x2899d8
sub r9d, eax
test al, 0x52
sub r8d, eax
cmovl ax, r10w
btc rax, rax
mov eax, edx
shr eax, 5
cmp r14b, bl
lea r11d, [r11 + r11 + 1]
stc
clc
sub dx, ax
inc r10
cmp dh, al
mov word [r10 + rcx - 1], dx
shrd edx, r12d, 0xcc
test rsi, rcx
shl edx, cl
movzx edx, word [rcx + r10*2]
test r12w, r8w
cmp r9d, 0x1000000
jmp 0x2899ed
jae 0x289a23
movzx eax, byte [rbp]
test r14w, bp
cmp r14, 0x74ff5e0a
shl r8d, 8
shl r9d, 8
cmp ebp, r10d
test dil, 0x46
or r8d, eax
movsxd rax, r15d
inc rbp
movsx ax, dl
ror al, cl
xor ax, cx
mov eax, r9d
test bx, 0x387a
shr eax, 0xb
test r10b, sil
imul eax, edx
cmp r8d, eax
jmp 0x289a3c
jae 0x289a78
mov r9d, eax
rcr ah, 0x93
rol ax, 0xf3
not ah
mov eax, 0x800
sub eax, edx
jmp 0x289a5a
shr eax, 5
add ax, dx
jmp 0x289a65
mov word [rcx + r10*2], ax
lea r10d, [r11 + r11]
jmp 0x289a73
jmp 0x289aa1
sub r9d, eax
sub r8d, eax
mov eax, edx
shr eax, 5
cmp r8b, r15b
sub dx, ax
cmc
mov word [rcx + r10*2], dx
xchg r10b, r10b
rol r10w, 1
bts r10, rsi
lea r10d, [r11 + r11 + 1]
add edx, edx
movzx edx, word [rcx + r10*2]
cmp r9d, 0x1000000
jmp 0x289ab2
jae 0x289ad4
movzx eax, byte [rbp]
shl r8d, 8
test spl, r15b
shl r9d, 8
or r8d, eax
movsx eax, r9w
cwde
inc rbp
rcr eax, cl
mov eax, r9d
clc
stc
shr eax, 0xb
test r9w, 0x5371
test r15b, sil
imul eax, edx
cmp r8d, eax
jmp 0x289af0
jae 0x289b22
mov r9d, eax
shl eax, cl
clc
mov eax, 0x800
cmp ebp, 0x7d8f7422
stc
sub eax, edx
shr eax, 5
add ax, dx
mov word [rcx + r10*2], ax
add r10d, r10d
jmp 0x289b1d
jmp 0x289b53
sub r9d, eax
test ax, 0x4a63
test spl, r8b
sub r8d, eax
adc ax, r13w
mov eax, edx
cmc
stc
test r8b, dl
shr eax, 5
cmp r8d, esp
sub dx, ax
cmc
mov word [rcx + r10*2], dx
sub dx, 0x65de
lea r10d, [r10 + r10 + 1]
movzx edx, word [rcx + r10*2]
stc
cmp r9d, 0x1000000
jmp 0x289b65
jae 0x289b91
movzx eax, byte [rbp]
clc
cmp r8w, 0x68fe
shl r8d, 8
shl r9d, 8
cmc
or r8d, eax
jmp 0x289b8e
inc rbp
mov eax, r9d
cmp ax, r15w
shr eax, 0xb
test ch, ah
cmp r11b, cl
imul eax, edx
test ax, r9w
cmc
cmp r8d, eax
jmp 0x289bb0
jae 0x289be1
mov r9d, eax
sar rax, 0x9d
mov eax, 0x800
stc
sub eax, edx
shr eax, 5
add ax, dx
stc
mov word [rcx + r10*2], ax
test r10b, al
add r10d, r10d
jmp 0x289bdc
jmp 0x289c20
sub r9d, eax
cmp r10w, 0x38e2
cmc
cmp r10b, cl
sub r8d, eax
cwde
mov eax, edx
shr eax, 5
test r13b, 0x12
cmp r9b, sil
sub dx, ax
jmp 0x289c07
mov word [rcx + r10*2], dx
sar dx, 0xee
lea r10d, [r10 + r10 + 1]
ror dl, 0x2f
movzx dx, bpl
movsxd rdx, r8d
movzx edx, word [rcx + r10*2]
cmp r9d, 0x1000000
jmp 0x289c31
jae 0x289c64
movzx eax, byte [rbp]
cmp r10b, 0xdc
shl r8d, 8
shl r9d, 8
cmp di, 0x2643
clc
test ebx, 0x84c1579
or r8d, eax
inc rbp
rcl ax, cl
jmp 0x289c64
mov eax, r9d
test r13, rdi
cmc
test bh, 0x30
shr eax, 0xb
test sp, sp
jmp 0x289c79
imul eax, edx
clc
cmp r8d, eax
jae 0x289ca7
mov r9d, eax
cmc
mov eax, 0x800
sub eax, edx
shr eax, 5
clc
stc
add ax, dx
mov word [rcx + r10*2], ax
stc
add r10d, r10d
jmp 0x289cd1
sub r9d, eax
cmp dl, r8b
sub r8d, eax
xor ax, ax
mov eax, edx
test dl, al
shr eax, 5
sub dx, ax
mov word [rcx + r10*2], dx
test eax, r9d
cmc
test r14w, 0x79d6
lea r10d, [r10 + r10 + 1]
add r10d, 0xffffffc0
cmp ax, r10w
clc
test r9w, si
cmp r10d, 4
jmp 0x289ce7
jb 0x28a22f
mov r11d, r10d
cmp r13b, r12b
bswap ax
mov eax, r10d
cmp r8d, 0x663b1ff4
stc
and r10d, 1
stc
clc
cmp bpl, r10b
shr r11d, 1
test r13, 0x14365e5b
clc
or r10d, 2
jmp 0x289d1e
dec r11d
test r15b, r15b
cmp eax, 0xe
jmp 0x289d2c
jae 0x289e4f
mov ecx, r11d
bsf edx, r9d
mov ebx, 1
shl r10d, cl
xor ecx, 0x2e835f79
mov rdx, rbx
shr ch, 0xa
mov ecx, r10d
jmp 0x289d58
sub rcx, rax
shld edi, r12d, 0xcc
lea rdi, [r13 + rcx*2 + 0x55e]
rcr cx, 0x22
movsx ecx, si
xadd ch, ch
nop
xchg ch, cl
inc cx
rcl cl, cl
lea rdx, [rdx + rdx]
movzx ecx, word [rdx + rdi]
clc
cmp r9d, 0x1000000
jae 0x289daf
movzx eax, byte [rbp]
shl r8d, 8
cmp sp, r13w
clc
test r14b, r15b
shl r9d, 8
cmp esi, r8d
test edx, esi
or r8d, eax
inc rbp
mov eax, r9d
cmc
test bpl, 0x61
shr eax, 0xb
imul eax, ecx
cmp r12, 0x68f339a7
cmp r8d, eax
jmp 0x289dcc
jae 0x289df8
mov r9d, eax
mov eax, 0x800
sub eax, ecx
shr eax, 5
test cl, r13b
jmp 0x289de7
add ax, cx
jmp 0x289def
mov word [rdx + rdi], ax
jmp 0x289e39
sub r9d, eax
cmp bh, 0x99
cmc
sub r8d, eax
mov eax, ecx
cmp r14b, 0x6e
jmp 0x289e0d
shr eax, 5
clc
test ecx, r9d
cmp r11w, 0x169c
sub cx, ax
inc rdx
clc
test spl, 0x7c
cmp r9w, r14w
or r10d, ebx
mov word [rdx + rdi - 1], cx
test bp, 0x6e05
cmp dl, 0xd5
add ebx, ebx
sub r11d, 1
jmp 0x289e44
jne 0x289d7a
jmp 0x28a22f
sub r11d, 4
clc
jmp 0x289e5a
cmp r9d, 0x1000000
jmp 0x289e66
jae 0x289e83
movzx eax, byte [rbp]
clc
shl r8d, 8
test r11d, r9d
clc
shl r9d, 8
or r8d, eax
inc rbp
shr r9d, 1
sub r8d, r9d
sal ah, 0xdd
ror eax, 0xd5
rcl ah, 0xbf
mov eax, r8d
cmp bpl, 0xc3
shr eax, 0x1f
clc
neg eax
clc
lea r10d, [rax + r10*2 + 1]
and eax, r9d
stc
add r8d, eax
sub r11d, 1
jne 0x289e5a
movzx ecx, word [r13 + 0x646]
test ch, ah
clc
stc
shl r10d, 4
cmp r11w, 0x35cd
cmp r9d, 0x1000000
jae 0x289eff
movzx eax, byte [rbp]
jmp 0x289ee6
shl r8d, 8
shl r9d, 8
jmp 0x289ef3
or r8d, eax
movsxd rax, r15d
movzx eax, si
inc rbp
mov eax, r9d
shr eax, 0xb
cmc
clc
imul eax, ecx
test r13b, r13b
cmp r9, rsp
cmp r8d, eax
jmp 0x289f18
jae 0x289f6b
mov r9d, eax
btr r11, rsi
sal dl, cl
mov eax, 0x800
cmovg r11w, bx
bt r11w, ax
and r11b, 0xd3
mov edx, 2
sub eax, ecx
shrd r11d, r8d, 0xac
shl r11b, cl
mov r11d, edx
stc
shr eax, 5
clc
add ax, cx
jmp 0x289f59
mov word [r13 + 0x646], ax
jmp 0x289f66
jmp 0x289fb9
sub r9d, eax
sub r8d, eax
neg r11
add r11b, 0x32
cmc
mov eax, ecx
shr eax, 5
rol edx, cl
movzx r11w, dil
mov r11d, ebx
test bpl, bl
ror dl, cl
shl dh, 0x3e
mov rdx, rbx
cmp rax, 0x5c4b6b44
cmc
sub cx, ax
stc
or r10d, 1
jmp 0x289fa8
mov word [r13 + 0x646], cx
cmp sil, 0xc1
bt rcx, 0x45
add rdx, rdx
shr cx, cl
movzx ecx, word [rdx + r13 + 0x644]
cmp ax, 0x60c6
cmp r9d, 0x1000000
jmp 0x289fd8
jae 0x289ffb
movzx eax, byte [rbp]
shl r8d, 8
cmp r10d, r10d
clc
shl r9d, 8
or r8d, eax
cdqe
inc rbp
movsx ax, r13b
mov eax, r9d
test bpl, 0x84
shr eax, 0xb
imul eax, ecx
cmp r10b, 0x28
cmp r8d, eax
jmp 0x28a014
jae 0x28a049
mov r9d, eax
mov eax, 0x800
cmp r8, r14
sub eax, ecx
clc
shr eax, 5
add ax, cx
add r11d, r11d
jmp 0x28a036
mov word [rdx + r13 + 0x644], ax
jmp 0x28a044
jmp 0x28a095
sub r9d, eax
stc
cmp r10b, 0xc7
sub r8d, eax
rcl ax, cl
movsx ax, r9b
mov eax, ecx
test bpl, 0x7f
cmc
cmp r14b, 0x20
shr eax, 5
test r10b, dl
lea r11d, [r11 + r11 + 1]
clc
sub cx, ax
jmp 0x28a07b
inc rdx
cmp sil, r14b
or r10d, 2
cmc
jmp 0x28a08b
mov word [rdx + r13 + 0x643], cx
cmc
movzx ecx, word [r13 + rdx*2 + 0x644]
cmp r9d, 0x1000000
jmp 0x28a0aa
jae 0x28a0eb
movzx eax, byte [rbp]
cmp r10d, 0x2bdc6564
test spl, spl
shl r8d, 8
test r13b, 0x24
clc
jmp 0x28a0cc
shl r9d, 8
cmp r11w, 0x42a2
jmp 0x28a0db
or r8d, eax
lahf
inc rbp
sar ax, 0x79
add eax, 0x61f92c16
mov eax, r9d
shr eax, 0xb
stc
imul eax, ecx
cmp r8d, eax
jae 0x28a12c
mov r9d, eax
mov eax, 0x800
cmp r15b, 0xc1
sub eax, ecx
shr eax, 5
test sil, spl
add ax, cx
mov word [r13 + rdx*2 + 0x644], ax
lea eax, [r11 + r11]
jmp 0x28a127
jmp 0x28a162
sub r9d, eax
sub r8d, eax
mov eax, ecx
clc
cmc
shr eax, 5
test r14b, 0xc7
sub cx, ax
lea eax, [r11 + r11 + 1]
or r10d, 4
jmp 0x28a151
mov word [r13 + rdx*2 + 0x644], cx
bsf dx, r13w
ror dl, 0x89
movzx ecx, word [r13 + rax*2 + 0x644]
movzx edx, r8w
mov edx, eax
cmp r9d, 0x1000000
jmp 0x28a17d
jae 0x28a195
movzx eax, byte [rbp]
shl r8d, 8
shl r9d, 8
or r8d, eax
inc rbp
mov eax, r9d
shr eax, 0xb
stc
test r15b, dl
imul eax, ecx
cmc
cmp r8d, eax
jmp 0x28a1ab
jae 0x28a1e7
mov r9d, eax
rol al, cl
sal ax, cl
mov eax, 0x800
cmp r14b, 0xfb
sub eax, ecx
cmc
test r12b, 0x7b
shr eax, 5
add ax, cx
jmp 0x28a1d4
mov word [r13 + rdx*2 + 0x644], ax
jmp 0x28a1e2
jmp 0x28a225
sub r9d, eax
stc
test r9d, 0x44662ace
sub r8d, eax
mov eax, ecx
cmp rcx, 0x4e4f4c48
test spl, bl
shr eax, 5
jmp 0x28a20a
sub cx, ax
cmc
clc
or r10d, 8
jmp 0x28a21c
mov word [r13 + rdx*2 + 0x644], cx
cmp r10d, 0xffffffff
je 0x28a4ac
mov ecx, dword [rsp + 8]
bsr rax, r9
cbw
mov eax, dword [rsp]
shr edi, 0x67
lea r11d, [r10 + 1]
test r14, 0x2abf22ef
not rdi
add dil, dl
mov edi, ecx
cmc
mov dword [rsp + 0xc], ecx
mov ecx, 0x74871660
mov ecx, dword [rsp + 4]
mov dword [rsp + 4], eax
cmovl ax, r8w
cwde
mov eax, dword [rsp + 0x10]
mov dword [rsp], r11d
jmp 0x28a27a
mov dword [rsp + 8], ecx
jmp 0x28a283
test eax, eax
jmp 0x28a28a
jne 0x28a29d
cmp r10d, dword [rsp + 0xa8]
jmp 0x28a2a5
cmp r10d, eax
jmp 0x28a2a5
jae 0x28a58a
cmp r15d, 0x13
cmovnp r15d, r8d
mov eax, 0xa
movsx r15d, di
mov ecx, 7
jmp 0x28a2cf
cmovb eax, ecx
movzx r15, bp
mov r15d, eax
jmp 0x28a2de
jmp 0x28a2e7
mov r11d, dword [rsp]
mov rax, qword [rsp + 0x98]
test r9b, 0x6c
add r12d, 2
cmp r9b, bl
test bl, 0xd
cmp rax, r14
jmp 0x28a305
je 0x28a58a
mov rbx, qword [rsp + 0x18]
movsxd rcx, r14d
add dl, 0x9d
mov r10d, dword [rsp + 0xa8]
movsxd rcx, r9d
shr dh, 0x9c
setns cl
mov rcx, rax
sub rcx, r14
cwde
ror eax, 0x84
mov eax, r12d
and dh, 0xf4
mov edx, r12d
cmc
cmp r15b, r13b
cmp rcx, rax
mov ah, 0x8d
mov eax, r11d
bswap r11w
movsx r11w, r13b
jmp 0x28a355
cmovb edx, ecx
xor ecx, ecx
add r11d, r11d
sub r11b, 0x12
cmp r14, rax
movsx r11, r12w
movzx r11d, sp
cmovb rcx, rbx
and r11b, 0xd1
add r10d, edx
not r11b
movsxd r11, edi
add r11b, spl
sub r12d, edx
sub rcx, rax
bts eax, ebp
cwde
mov dword [rsp + 0xa8], r10d
movsxd r11, ebx
mov r11d, edx
add al, r13b
add rcx, r14
cdqe
lea rax, [rdx + rcx]
test r11w, 0x23a7
cmp rax, rbx
jmp 0x28a3b2
ja 0x28a415
lea rdx, [r14 + rsi]
cwde
sub rcx, r14
bt ax, bp
rol al, 0x20
bts r10, r13
add r14, r11
movzx r10w, bpl
movsx ax, r14b
cbw
lea r10, [r11 + rdx]
movzx eax, byte [rcx + rdx]
jmp 0x28a3e7
inc rdx
jmp 0x28a3f0
mov byte [rdx - 1], al
cmp edi, 0x72d4616c
clc
cmp rdx, r10
jmp 0x28a402
jne 0x28a3de
mov r10d, dword [rsp + 0xa8]
jmp 0x28a467
xor edi, edi
bswap eax
nop
movzx eax, byte [rcx + rsi]
jmp 0x28a423
inc rcx
inc r14
cmc
stc
cmp rcx, rbx
jmp 0x28a433
mov byte [r14 + rsi - 1], al
jmp 0x28a43d
cmove rcx, rdi
cmp r9b, 0xde
test r12d, 0x6bdf64c4
cmp al, r15b
add edx, 0xffffffff
jmp 0x28a457
jne 0x28a41a
mov edi, dword [rsp + 0xc]
jmp 0x28a467
cmp r14, qword [rsp + 0x98]
jmp 0x28a474
jae 0x28a4c3
cmp rbp, qword [rsp + 0xa0]
jmp 0x28a487
jae 0x28a4c3
mov rdx, qword [rsp + 0x90]
bswap r11d
movsx r11w, r12b
mov r11d, dword [rsp + 0x20]
jmp 0x28a4a7
jmp 0x288a49
add r12d, 0x112
add r15d, 0xfffffff4
test dil, r15b
jmp 0x28a4c3
cmp r9d, 0x1000000
jmp 0x28a4cf
jae 0x28a4f8
movzx eax, byte [rbp]
stc
xchg cl, ch
movzx ecx, r8w
shl r8d, 8
shl r9d, 8
or r8d, eax
xchg cx, cx
inc rax
inc rbp
mov ax, r13w
mov rax, qword [rsp + 0x90]
cmc
rcr cx, cl
mov ecx, dword [rsp + 0xa8]
mov dword [rax + 0x40], ecx
bt rcx, rsi
sal ch, cl
mov ecx, dword [rsp]
cmp ecx, ecx
jmp 0x28a51e
mov qword [rax + 0x20], rbp
cmp r13b, sil
clc
mov dword [rax + 0x4c], ecx
mov ecx, dword [rsp + 4]
test rdi, 0x41540d40
mov dword [rax + 0x28], r9d
test r14b, 0xff
mov dword [rax + 0x50], ecx
bsr cx, r8w
movzx cx, r14b
rol cx, cl
mov ecx, dword [rsp + 8]
cmp dh, 0xbb
test cx, r10w
jmp 0x28a55c
mov dword [rax + 0x2c], r8d
stc
mov dword [rax + 0x5c], r12d
cmc
stc
clc
mov qword [rax + 0x30], r14
cmp r10w, 0x2048
mov dword [rax + 0x58], edi
mov dword [rax + 0x54], ecx
test r10d, r8d
mov dword [rax + 0x48], r15d
cmp r14, rdx
clc
xor eax, eax
jmp 0x28a592
mov eax, 1
add bpl, bpl
add rsp, 0x48
bswap r15w
pop r15
movzx r12, bp
pop r14
pop r13
bswap rbx
pop r12
movsx rsi, di
movzx rbx, bp
pop rdi
pop rsi
mov ebx, 0x5e2d4231
pop rbp
movsx bx, r10b
jmp 0x28a5c5
pop rbx
jmp 0x28a5cb
ret