Function at 0x180014630
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
sub rsp, 0x178
mov qword [rsp + 0xe0], 0
mov r8d, 0x40
xor edx, edx
lea rcx, [rsp + 0xa0]
call qword [0x180020038]
jbe 0x180014685
push rcx
push rbp
pop rbp
pop rcx
ja 0x180014685
xlatb
cli
mov r8b, 0xc0
out 0xdd, eax
invalid
mov eax, 1
imul rax, rax, 0
mov byte [rsp + rax + 0xa0], 0x9a
jnp 0x1800146c2
jp 0x1800146c2
out dx, al
xlatb
mov al, 0xc0
int 0xaf
rol dh, 0xb8
xlatb
fnsave dword [rax - 0x393fba40]
cli
out 0xc6, eax
fnstsw word [rax - 0x393f0929]
test ch, 0xb0
mov al, 0xee
jge 0x1800146a1
invalid
invalid
mov eax, 1
imul rax, rax, 0
movsx eax, byte [rsp + rax + 0xa0]
sub eax, 0x25
mov ecx, 1
imul rcx, rcx, 0
mov byte [rsp + rcx + 0xa0], al
jp 0x180014712
jnp 0x180014712
scasd eax, dword [rdi]
mov r8b, 0xcd
int 0xc6
cli
xlatb
out dx, al
mov eax, 0xcdcdc6e7
mov al, 0xe7
fnsave dword [rax - 0x11050919]
out dx, al
int 0xb8
invalid
mov eax, 1
imul rax, rax, 1
mov byte [rsp + rax + 0xa0], 0x28
jo 0x18001474f
push rcx
push rax
nop
pop rax
pop rcx
jno 0x18001474f
int 0xc6
cli
scasd eax, dword [rdi]
invalid
mov eax, 1
imul rax, rax, 1
movsx eax, byte [rsp + rax + 0xa0]
sub eax, 0x22
mov ecx, 1
imul rcx, rcx, 1
mov byte [rsp + rcx + 0xa0], al
je 0x18001479f
jne 0x18001479f
test byte [rbp - 0x51], 0xc0
fucomp st(6)
out dx, al
int 0xb0
invalid
mov eax, 1
imul rax, rax, 1
mov ecx, 1
imul rcx, rcx, 0
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 1
mov byte [rsp + rcx + 0xa0], al
jb 0x1800147ff
push rsp
push rdx
push rdx
push rbp
pop rbp
pop rdx
pop rdx
pop rsp
jae 0x1800147ff
int 0xc6
sar byte [r13 - 0x48], 0xc0
xlatb
int 0xcd
out dx, al
cli
out dx, al
int 0xc0
cli
cli
scasd eax, dword [rdi]
mov eax, 0xddddb0cd
int 0xc6
invalid
mov eax, 1
imul rax, rax, 2
mov byte [rsp + rax + 0xa0], 0x19
jb 0x18001483c
push rbx
push rbx
push rcx
nop
pop rcx
pop rbx
pop rbx
jae 0x18001483c
rol dh, 0xaf
mov al, 0xf6
scasd eax, dword [rdi]
cli
shr dh, 0xdd
out 0xcd, eax
scasd eax, dword [rdi]
out 0xc0, eax
mov r8d, 0xfab8b0e7
mov eax, 0xafd7fafa
out 0xb8, eax
out dx, al
sal dh, 0x7d
mov eax, 1
imul rax, rax, 2
movsx eax, byte [rsp + rax + 0xa0]
sub eax, 3
mov ecx, 1
imul rcx, rcx, 2
mov byte [rsp + rcx + 0xa0], al
jnp 0x18001488c
push rsp
push rbx
push rax
pop rax
pop rbx
pop rsp
jp 0x18001488c
out 0x45, eax
div dh
int 0x7d
fucomp st(6)
mov eax, 0xddfafaf6
scasd eax, dword [rdi]
not bh
rcr ch, 0xc6
out dx, al
idiv dl
mov al, 0xb0
cli
out dx, al
ffree st(0)
scasd eax, dword [rdi]
idiv dl
invalid
mov eax, 1
imul rax, rax, 2
mov ecx, 1
imul rcx, rcx, 1
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 2
mov byte [rsp + rcx + 0xa0], al
jo 0x1800148ec
push rbp
push rcx
push rbp
pop rbp
pop rcx
pop rbp
jno 0x1800148ec
cli
mov eax, 0xf6af7db0
jge 0x1800148b9
fld qword [rbp - 0x48]
xlatb
scasd eax, dword [rdi]
int 0xdd
int 0x7d
mov al, 0xfa
fld qword [rbp - 0x19]
not r15b
int 0xe7
sar dl, 0xc6
mov al, 0x45
mov eax, 1
imul rax, rax, 3
mov byte [rsp + rax + 0xa0], 0xea
jp 0x180014929
push rdi
push rsi
push rdx
push rdi
pop rdi
pop rdx
pop rsi
pop rdi
jnp 0x180014929
cli
out dx, al
out dx, al
scasd eax, dword [rdi]
invalid
mov eax, 1
imul rax, rax, 3
movsx eax, byte [rsp + rax + 0xa0]
add eax, 0x2d
mov ecx, 1
imul rcx, rcx, 3
mov byte [rsp + rcx + 0xa0], al
jns 0x180014979
push rsi
push rsp
push rsi
nop
pop rsi
pop rsp
pop rsi
js 0x180014979
rol dh, 0xdd
out dx, al
xlatb
invalid
mov eax, 1
imul rax, rax, 3
mov ecx, 1
imul rcx, rcx, 2
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 3
mov byte [rsp + rcx + 0xa0], al
jae 0x1800149d9
nop
jb 0x1800149d9
scasd eax, dword [rdi]
xlatb
scasd eax, dword [rdi]
invalid
mov eax, 1
imul rax, rax, 4
mov byte [rsp + rax + 0xa0], 0x3b
jp 0x180014a16
push rcx
push rax
nop
pop rax
pop rcx
jnp 0x180014a16
mov eax, 0xeeb045cd
cli
scasd eax, dword [rdi]
mov eax, 0xddc0d745
test byte [rbp - 6], 0xc6
int 0x45
jge 0x180014a4d
xlatb
cli
cli
rol byte [rbp + 0x45], 0xc0
cli
int 0xb8
cli
mov r8d, 1
mov eax, 1
imul rax, rax, 4
movsx eax, byte [rsp + rax + 0xa0]
add eax, 6
mov ecx, 1
imul rcx, rcx, 4
mov byte [rsp + rcx + 0xa0], al
jne 0x180014a66
push rsp
push rbx
push rbx
nop
pop rbx
pop rbx
pop rsp
je 0x180014a66
cli
invalid
mov al, 0xf6
xlatb
out 0xaf, eax
out dx, al
invalid
mov eax, 1
imul rax, rax, 4
mov ecx, 1
imul rcx, rcx, 3
add byte [rax + 0x6b], cl
leave
add ecx, dword [rdi]
mov esi, 0xa00c8c
add byte [rax], al
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 4
mov byte [rsp + rcx + 0xa0], al
jne 0x180014ac6
push rsp
push rcx
nop
pop rcx
pop rsp
je 0x180014ac6
xlatb
jge 0x180014a73
int 0xaf
int 0x7d
cli
test dh, 0xcd
scasd eax, dword [rdi]
jge 0x180014a78
invalid
mov eax, 1
imul rax, rax, 5
mov byte [rsp + rax + 0xa0], 0xed
jg 0x180014b03
push rdx
push rcx
push rsp
push rbx
pop rbx
pop rsp
pop rcx
pop rdx
jle 0x180014b03
invalid
mov eax, 1
imul rax, rax, 5
movsx eax, byte [rsp + rax + 0xa0]
add eax, 0x14
mov ecx, 1
imul rcx, rcx, 5
mov byte [rsp + rcx + 0xa0], al
jle 0x180014b53
push rcx
nop
pop rcx
jg 0x180014b53
mov al, 0xfa
cli
scasd eax, dword [rdi]
invalid
mov eax, 1
add dword [rax], eax
add byte [rax], al
imul rax, rax, 5
mov ecx, 1
imul rcx, rcx, 4
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 5
mov byte [rsp + rcx + 0xa0], al
jo 0x180014bb3
nop
jno 0x180014bb3
jge 0x180014b54
mov eax, 0x7db8d7f6
rol dh, 0xcd
invalid
mov eax, 1
imul rax, rax, 6
mov byte [rsp + rax + 0xa0], 0x1c
jns 0x180014bf0
push rbx
push rsi
pop rsi
pop rbx
js 0x180014bf0
invalid
mov eax, 1
imul rax, rax, 6
mov ecx, 1
imul rcx, rcx, 6
movzx eax, byte [rsp + rax + 0xa0]
mov byte [rsp + rcx + 0xa0], al
jns 0x180014c3d
push rdi
push rbp
push rdi
push rdi
pop rdi
pop rdi
pop rbp
pop rdi
js 0x180014c3d
int 0xb0
xlatb
jge 0x180014c0a
mov al, 0xb8
invalid
mov eax, 1
imul rax, rax, 6
mov ecx, 1
imul rcx, rcx, 5
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 6
mov byte [rsp + rcx + 0xa0], al
jl 0x180014c9d
push rsp
push rdx
nop
pop rdx
pop rsp
jge 0x180014c9d
int 0xf6
cli
xlatb
mul bh
cli
rol byte [rbp - 0x19], 0xc0
invalid
mov eax, 1
imul rax, rax, 7
mov byte [rsp + rax + 0xa0], 0x2c
jp 0x180014cda
push rbp
push rcx
push rsp
push rcx
pop rcx
pop rsp
pop rcx
pop rbp
jnp 0x180014cda
invalid
mov eax, 1
imul rax, rax, 7
movsx eax, byte [rsp + rax + 0xa0]
add eax, 0x1e
mov ecx, 1
imul rcx, rcx, 7
mov byte [rsp + rcx + 0xa0], al
jae 0x180014d2a
push rbx
push rbp
push rsi
nop
pop rsi
pop rbp
pop rbx
jb 0x180014d2a
fld qword [rbp - 0x19]
scasd eax, dword [rdi]
xlatb
out dx, al
mov eax, 0xddf67dc6
sar byte [rax + 0x7ddddd45], 0xe7
fld qword [rbp - 0xa]
mov al, 0x7d
cli
idiv dl
int 0xb0
cli
int 0xc0
mov eax, 0x1b8b8
add byte [rax], al
sar byte [rax + 0x1b8b8], 0
add byte [rax + 0x6b], cl
rol byte [rdi], 0xb9
add dword [rax], eax
add byte [rax], al
mov eax, 1
imul rax, rax, 7
mov ecx, 1
imul rcx, rcx, 6
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 7
mov byte [rsp + rcx + 0xa0], al
jb 0x180014d8a
jae 0x180014d8a
cli
xlatb
int 0xfa
mov r8b, 0xdd
mov al, 0xb8
mov al, 0xcd
int 0xc0
scasd eax, dword [rdi]
out dx, al
fld qword [rbp - 0x3a]
xlatb
jge 0x180014d27
invalid
out 0x45, eax
scasd eax, dword [rdi]
scasd eax, dword [rdi]
int 0xee
scasd eax, dword [rdi]
mov eax, 0xc07df6cd
invalid
mov eax, 1
imul rax, rax, 8
mov byte [rsp + rax + 0xa0], 0xd4
jne 0x180014dc7
push rcx
push rbx
push rax
push rsi
pop rsi
pop rax
pop rbx
pop rcx
je 0x180014dc7
cli
sal byte [rax + 0x7dcdfadd], 0xdd
xlatb
scasd eax, dword [rdi]
jge 0x180014d73
mov al, 0xcd
xlatb
xlatb
int 0xc6
cli
int 0xe7
mov eax, 0xcd7dfaf6
mov al, 0x45
int 0xcd
ffree st(0)
mov eax, 1
imul rax, rax, 8
movsx eax, byte [rsp + rax + 0xa0]
add eax, 0x34
mov ecx, 1
imul rcx, rcx, 8
mov byte [rsp + rcx + 0xa0], al
jno 0x180014e17
jo 0x180014e17
sal byte [rax - 0x3fba2233], 0xb0
scasd eax, dword [rdi]
out 0xb8, eax
xlatb
out 0xcd, eax
int 0xf6
int 0xf6
out 0xaf, eax
mov dh, 0xcd
ror ch, 0xb8
shl bh, 0xb8
invalid
mov eax, 1
imul rax, rax, 8
mov ecx, 1
imul rcx, rcx, 7
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 8
mov byte [rsp + rcx + 0xa0], al
jl 0x180014e77
push rdx
push rdi
nop
pop rdi
pop rdx
jge 0x180014e77
cli
mov al, 0xb0
out dx, al
cli
idiv byte [rax - 0x39823f06]
mov eax, 0xcdcdb8cd
cli
out dx, al
out dx, al
jge 0x180014ee6
sal dh, 0x45
test al, 0xd7
mov eax, 0xcdfafac6
cli
shr dh, 0xb8
add dword [rax], eax
add byte [rax], al
mov eax, 1
imul rax, rax, 9
mov byte [rsp + rax + 0xa0], 0x47
jnp 0x180014eb4
push rcx
push rcx
push rdi
push rdx
pop rdx
pop rdi
pop rcx
pop rcx
jp 0x180014eb4
mov eax, 0xcd7ddd45
scasd eax, dword [rdi]
cli
xlatb
fstp st(5)
mov r8d, 0xb0affae7
out 0xd7, eax
cli
mov al, 0xcd
scasd eax, dword [rdi]
int 0xcd
out 0x7d, eax
mov eax, 0xddaff6fa
cli
mov eax, 1
imul rax, rax, 9
movsx eax, byte [rsp + rax + 0xa0]
sub eax, 0x47
mov ecx, 1
imul rcx, rcx, 9
mov byte [rsp + rcx + 0xa0], al
jns 0x180014f04
push rax
push rsi
push rbx
nop
pop rbx
pop rsi
pop rax
js 0x180014f04
int 0xe7
cli
cli
idiv byte [rbp - 6]
mov eax, 0xc0eec6af
scasd eax, dword [rdi]
ffree st(0)
jge 0x180014edb
sal dh, 0xaf
out 0xb0, eax
rol al, 0xcd
rol byte [rbp - 0x33], 0xaf
invalid
mov eax, 1
imul rax, rax, 9
mov ecx, 1
imul rcx, rcx, 8
movsx ecx, byte [rsp + rcx + 0xa0]
movsx eax, byte [rsp + rax + 0xa0]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 9
mov byte [rsp + rcx + 0xa0], al
xor ecx, ecx
call qword [0x1800200d8]
mov qword [rsp + 0xe0], rax
mov r8d, 0x48
xor edx, edx
lea rcx, [rsp + 0xf0]
call qword [0x180020038]
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x108], rax
mov ecx, 0xf
call qword [0x180020288]
mov qword [rsp + 0x120], rax
lea rax, [0x180013860]
mov qword [rsp + 0xf8], rax
mov edx, 0x7f00
xor ecx, ecx
call qword [0x1800202b0]
mov qword [rsp + 0x118], rax
lea rcx, [rsp + 0xf0]
call qword [0x180020540]
jge 0x180014f76
add byte [rax], al
mov r8d, 0x40
xor edx, edx
lea rcx, [rsp + 0x60]
call qword [0x180020038]
je 0x180015002
push rdi
push rcx
push rax
pop rax
pop rcx
pop rdi
jne 0x180015002
mov al, 0xb8
xlatb
int 0x45
jge 0x180014fad
xlatb
int 0xcd
out dx, al
cli
mov r8b, 0xdd
xlatb
int 0x7d
shl bh, 0xc6
int 0xfa
out 0xfa, eax
scasd eax, dword [rdi]
jge 0x180014fbf
out dx, al
int 0xb8
add dword [rax], eax
add byte [rax], al
mov eax, 1
imul rax, rax, 0
mov byte [rsp + rax + 0x60], 0xa2
jbe 0x18001503c
push rcx
push rcx
nop
pop rcx
pop rcx
ja 0x18001503c
int 0xb0
mov al, 0xd7
mov r8d, 0x45b845f6
imul dh
rcl bh, 0xfa
ffree st(0)
ffree st(6)
int 0x7d
invalid
int 0xd7
sal dh, 0xdd
int 0x7d
invalid
mov eax, 1
imul rax, rax, 0
movsx eax, byte [rsp + rax + 0x60]
sub eax, 0x5d
mov ecx, 1
imul rcx, rcx, 0
mov byte [rsp + rcx + 0x60], al
ja 0x180015086
push rsp
push rbp
pop rbp
pop rsp
jbe 0x180015086
scasd eax, dword [rdi]
sal dh, 0x7d
out dx, al
out 0xc6, eax
xlatb
int 0xfa
scasd eax, dword [rdi]
jge 0x18001502f
xlatb
jge 0x1800150b9
out dx, al
out 0xcd, eax
cli
mov eax, 0xd7b0eeee
int 0xb8
cli
rol dh, 0xb0
mov r8d, 1
mov eax, 1
imul rax, rax, 1
mov byte [rsp + rax + 0x60], 0x2d
jle 0x1800150c0
push rax
push rbp
push rbx
nop
pop rbx
pop rbp
pop rax
jg 0x1800150c0
jge 0x18001509b
int 0xc0
mov eax, 0xb07db0f6
scasd eax, dword [rdi]
int 0xfa
out dx, al
sar byte [rax - 0x114f390a], 0xdd
ffree st(6)
int 0x7d
cli
mov eax, 0xc6f6fafa
mov byte [rbp - 0x12], 0xb8
add dword [rax], eax
add byte [rax], al
cli
cli
test dh, 0xc6
out dx, al
mov eax, 1
imul rax, rax, 1
movsx eax, byte [rsp + rax + 0x60]
sub eax, 2
mov ecx, 1
imul rcx, rcx, 1
mov byte [rsp + rcx + 0x60], al
je 0x18001510a
push rsp
nop
pop rsp
jne 0x18001510a
rol dh, 0xdd
xlatb
cli
out dx, al
cli
int 0xb8
cli
invalid
mov eax, 1
imul rax, rax, 1
mov ecx, 1
imul rcx, rcx, 0
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 1
mov byte [rsp + rcx + 0x60], al
jne 0x180015161
push rdi
pop rdi
je 0x180015161
scasd eax, dword [rdi]
out 0xe7, eax
scasd eax, dword [rdi]
invalid
mov eax, 1
imul rax, rax, 2
mov byte [rsp + rax + 0x60], 0xf7
jnp 0x18001519b
push rsp
push rcx
nop
pop rcx
pop rsp
jp 0x18001519b
invalid
mov eax, 1
imul rax, rax, 2
movsx eax, byte [rsp + rax + 0x60]
add eax, 0x23
mov ecx, 1
imul rcx, rcx, 2
mov byte [rsp + rcx + 0x60], al
jo 0x1800151e5
push rsp
push rdi
push rsi
pop rsi
pop rdi
pop rsp
jno 0x1800151e5
mov r8b, 0xcd
int 0xc6
int 0xfa
int 0xdd
int 0xb0
invalid
mov eax, 1
imul rax, rax, 2
mov ecx, 1
imul rcx, rcx, 1
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 2
mov byte [rsp + rcx + 0x60], al
js 0x18001523c
push rdx
push rdx
push rbx
nop
pop rbx
pop rdx
pop rdx
jns 0x18001523c
not bh
mov eax, 0xd7faafb8
invalid
mov eax, 1
imul rax, rax, 3
mov byte [rsp + rax + 0x60], 0xc9
jo 0x180015276
push rsp
pop rsp
jno 0x180015276
invalid
mov eax, 1
imul rax, rax, 3
movsx eax, byte [rsp + rax + 0x60]
add eax, 0x48
mov ecx, 1
imul rcx, rcx, 3
mov byte [rsp + rcx + 0x60], al
jo 0x1800152c0
push rax
nop
pop rax
jno 0x1800152c0
scasd eax, dword [rdi]
xlatb
invalid
mov eax, 1
imul rax, rax, 3
mov ecx, 1
imul rcx, rcx, 2
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 3
mov byte [rsp + rcx + 0x60], al
jo 0x180015317
push rdx
nop
pop rdx
jno 0x180015317
cli
invalid
mov eax, 1
imul rax, rax, 4
mov byte [rsp + rax + 0x60], 0x6f
ja 0x180015351
push rdi
push rsp
push rdx
nop
pop rdx
pop rsp
pop rdi
jbe 0x180015351
int 0xf6
out dx, al
sar byte [rax - 0x3282ba48], 0xfa
int 0xcd
shr dh, 0xf6
xlatb
out dx, al
invalid
mov eax, 1
imul rax, rax, 4
movsx eax, byte [rsp + rax + 0x60]
sub eax, 0x58
mov ecx, 1
imul rcx, rcx, 4
mov byte [rsp + rcx + 0x60], al
jge 0x18001539b
push rcx
push rdx
push rbx
nop
pop rbx
pop rdx
pop rcx
jl 0x18001539b
idiv byte [rbp - 0x40]
out 0xdd, eax
jge 0x180015330
invalid
mov eax, 1
imul rax, rax, 4
mov ecx, 1
imul rcx, rcx, 3
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
rol byte [rcx + rdi*4], 1
add byte [rax], al
add byte [rax + 0x6b], cl
leave
add ecx, dword [rdi]
mov esi, 0xf600c4c
mov esi, 0x33600444
sar dword [rcx + 1], 0x48
imul ecx, ecx, 4
add al, 0x60
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 4
mov byte [rsp + rcx + 0x60], al
jae 0x1800153f2
push rcx
push rsp
push rdx
nop
pop rdx
pop rsp
pop rcx
jb 0x1800153f2
int 0xb8
jge 0x1800153a2
jge 0x1800153b4
out dx, al
cli
out 0xe7, eax
mov r14b, 0xee
not bh
mov eax, 0xb8e7eed7
test dh, 0xdd
out dx, al
not bh
cli
scasd eax, dword [rdi]
invalid
mov eax, 1
imul rax, rax, 5
mov byte [rsp + rax + 0x60], 0x1c
je 0x18001542c
push rbp
push rsp
push rsi
nop
pop rsi
pop rsp
pop rbp
jne 0x18001542c
out dx, al
xlatb
int 0xe7
jge 0x1800153c9
invalid
mov eax, 1
imul rax, rax, 5
movsx eax, byte [rsp + rax + 0x60]
add eax, 0x36
mov ecx, 1
imul rcx, rcx, 5
mov byte [rsp + rcx + 0x60], al
jns 0x180015476
push rbx
pop rbx
js 0x180015476
mov eax, 0xcdaf457d
idiv dl
out 0xcd, eax
idiv byte [rax - 0x3f115023]
out dx, al
rol al, 0xb0
int 0xcd
int 0x45
out 0xdd, eax
fnsave dword [rax - 0x3f224f06]
ffree st(6)
int 0xfa
xlatb
test ch, 0xb8
add dword [rax], eax
add byte [rax], al
mov eax, 1
imul rax, rax, 5
mov ecx, 1
imul rcx, rcx, 4
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 5
mov byte [rsp + rcx + 0x60], al
ja 0x1800154cd
jbe 0x1800154cd
int 0xcd
test dh, 0xdd
out 0xdd, eax
cli
cli
out 0xb8, eax
mov al, 0x45
cli
xlatb
xlatb
int 0xaf
cli
rol byte [rbp - 0x51], 0xfa
int 0x45
jge 0x18001553d
fst st(7)
mov r8d, 0x4545cdaf
div dh
rol byte [rbp - 0x48], 0xb8
add dword [rax], eax
add byte [rax], al
mov eax, 1
imul rax, rax, 6
mov byte [rsp + rax + 0x60], 0x67
jg 0x180015507
jle 0x180015507
int 0xe7
xlatb
cli
mov al, 0xd7
scasd eax, dword [rdi]
out 0xee, eax
int 0xc6
cli
mov al, 0xf6
out 0x7d, eax
xlatb
invalid
mov eax, 1
imul rax, rax, 6
movsx eax, byte [rsp + rax + 0x60]
add eax, 9
mov ecx, 1
imul rcx, rcx, 6
mov byte [rsp + rcx + 0x60], al
js 0x180015551
push rax
push rdx
push rbx
pop rbx
pop rdx
pop rax
jns 0x180015551
int 0xf6
invalid
scasd eax, dword [rdi]
out dx, al
jge 0x180015586
xlatb
jge 0x18001553e
cli
scasd eax, dword [rdi]
int 0x7d
cli
mov eax, 0xc0fadd7d
invalid
mov eax, 1
imul rax, rax, 6
mov ecx, 1
imul rcx, rcx, 5
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 6
mov byte [rsp + rcx + 0x60], al
jp 0x1800155a8
push rbp
pop rbp
jnp 0x1800155a8
scasd eax, dword [rdi]
invalid
out 0xcd, eax
out dx, al
fnsave dword [rax - 0x114f0523]
cli
xlatb
fnstsw word [rbp - 0x3a]
fnstsw word [rax - 0x50821112]
out dx, al
rol al, 0xcd
xlatb
xlatb
int 0xc0
mov eax, 0xcdafafb8
invalid
mov eax, 1
imul rax, rax, 7
mov byte [rsp + rax + 0x60], 0xfe
jae 0x1800155e2
push rsp
push rsi
push rcx
push rsi
pop rsi
pop rcx
pop rsi
pop rsp
jb 0x1800155e2
out 0xf6, eax
test dh, 0xb0
idiv byte [rbp - 0xa]
mov al, 0xcd
fnstsw word [rbp - 0x51]
cli
test ch, 0xfa
test byte [rbp - 0x48], 0xc6
jge 0x18001559f
imul r14b
not bh
out 0xc0, eax
scasd eax, dword [rdi]
mov eax, 1
imul rax, rax, 7
movsx eax, byte [rsp + rax + 0x60]
add eax, 0x33
mov ecx, 1
imul rcx, rcx, 7
mov byte [rsp + rcx + 0x60], al
jbe 0x18001562c
push rax
push rdx
nop
pop rdx
pop rax
ja 0x18001562c
int 0xc0
mov al, 0xd7
scasd eax, dword [rdi]
out dx, al
invalid
mov eax, 1
imul rax, rax, 7
mov ecx, 1
imul rcx, rcx, 6
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
add al, 0x60
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 7
mov byte [rsp + rcx + 0x60], al
jae 0x180015683
push rdi
push rbx
push rax
push rdi
pop rdi
pop rax
pop rbx
pop rdi
jb 0x180015683
jge 0x1800156e2
out 0xc6, eax
out dx, al
cli
out dx, al
jge 0x1800156e9
fnstsw word [rax - 0x505ba48]
out dx, al
cli
mov al, 0x7d
jge 0x180015645
cli
test al, 0xcd
int 0xfa
fnstsw word [rbp - 0x40]
int 0xd7
mov eax, 1
imul rax, rax, 8
mov byte [rsp + rax + 0x60], 0x82
jg 0x1800156bd
push rbp
nop
pop rbp
jle 0x1800156bd
mov al, 0xd7
out dx, al
jge 0x180015698
cli
cli
cli
out 0xe7, eax
xlatb
cli
mov al, 0xfa
xlatb
test al, 0xe7
cli
cli
xlatb
out 0xee, eax
xlatb
mov r8b, 0x45
xlatb
cli
cli
fucom st(7)
scasd eax, dword [rdi]
mov eax, 1
add dword [rax], eax
add byte [rax], al
imul rax, rax, 8
movsx eax, byte [rsp + rax + 0x60]
sub eax, 0x70
mov ecx, 1
imul rcx, rcx, 8
mov byte [rsp + rcx + 0x60], al
jne 0x180015707
nop
je 0x180015707
rcl bh, 0x45
cli
cli
int 0xb0
invalid
out 0xfa, eax
int 0xf6
int 0xf6
jge 0x1800156be
out 0xaf, eax
fld qword [rbp - 0x40]
scasd eax, dword [rdi]
xlatb
shr byte [rdi - 0x4f500512], 0xcd
int 0xcd
invalid
mov eax, 1
imul rax, rax, 8
mov ecx, 1
imul rcx, rcx, 7
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 8
mov byte [rsp + rcx + 0x60], al
jle 0x18001575e
push rbp
push rcx
push rdx
nop
pop rdx
pop rcx
pop rbp
jg 0x18001575e
invalid
mov eax, 1
imul rax, rax, 9
mov byte [rsp + rax + 0x60], 9
je 0x180015798
push rdx
push rbp
push rax
push rbx
pop rbx
pop rax
pop rbp
pop rdx
jne 0x180015798
out 0xdd, eax
cli
int 0xc0
xlatb
int 0xfa
shr dh, 0xdd
int 0xd7
scasd eax, dword [rdi]
out 0xe7, eax
scasd eax, dword [rdi]
jge 0x180015779
invalid
xlatb
int 0xf6
mov al, 0x7d
invalid
mov eax, 1
imul rax, rax, 9
movsx eax, byte [rsp + rax + 0x60]
sub eax, 9
mov ecx, 1
imul rcx, rcx, 9
mov byte [rsp + rcx + 0x60], al
js 0x1800157e2
jns 0x1800157e2
int 0xfa
out 0xb8, eax
mov al, 0xfa
mov al, 0xfa
scasd eax, dword [rdi]
mov dh, 0x45
out dx, al
mov al, 0xb8
cli
out 0xc6, eax
mov eax, 0xeecdc6f6
cli
int 0x45
cli
mov eax, 0xd7eefab0
out dx, al
cli
cli
shr byte [rdi + 0x1b8dddd], 0
add byte [rax], al
mov eax, 1
imul rax, rax, 9
mov ecx, 1
imul rcx, rcx, 8
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 9
mov byte [rsp + rcx + 0x60], al
jno 0x180015839
push rdi
push rbx
nop
pop rbx
pop rdi
jo 0x180015839
mov eax, 0xeeb0cdc6
out 0xc0, eax
cli
invalid
mov eax, 1
imul rax, rax, 0xa
mov byte [rsp + rax + 0x60], 0x6e
jne 0x180015873
push rcx
push rsp
push rdi
nop
pop rdi
pop rsp
pop rcx
je 0x180015873
invalid
mov eax, 1
imul rax, rax, 0xa
movsx eax, byte [rsp + rax + 0x60]
sub eax, 0x6a
mov ecx, 1
imul rcx, rcx, 0xa
mov byte [rsp + rcx + 0x60], al
jl 0x1800158bd
nop
jge 0x1800158bd
mul bh
invalid
mov eax, 1
imul rax, rax, 0xa
mov ecx, 1
imul rcx, rcx, 9
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 0xa
mov byte [rsp + rcx + 0x60], al
jbe 0x180015914
push rbx
push rbx
push rsp
pop rsp
pop rbx
pop rbx
ja 0x180015914
not bh
sar dl, 0xfa
mov eax, 0xb845af7d
out dx, al
cli
out dx, al
div dh
fucom st(7)
imul dh
shl bh, 0xc0
rol byte [rbp - 0x33], 0xcd
invalid
mov eax, 1
imul rax, rax, 0xb
mov byte [rsp + rax + 0x60], 0xc8
jnp 0x18001594e
push rcx
push rcx
push rbx
nop
pop rbx
pop rcx
pop rcx
jp 0x18001594e
cli
invalid
mov eax, 1
imul rax, rax, 0xb
movsx eax, byte [rsp + rax + 0x60]
add eax, 0x50
mov ecx, 1
imul rcx, rcx, 0xb
mov byte [rsp + rcx + 0x60], al
jns 0x180015998
push rax
push rcx
push rdx
pop rdx
pop rcx
pop rax
js 0x180015998
jge 0x1800159bd
fnstsw word [rax - 0x5824f0a]
cli
out 0xf6, eax
fnstsw word [rax - 0x47284740]
xlatb
mov eax, 0x45fad7fa
sar dl, 0xb8
mov byte [rbp - 0x40], 0xc6
cli
invalid
mov eax, 1
imul rax, rax, 0xb
mov ecx, 1
imul rcx, rcx, 0xa
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 0xb
mov byte [rsp + rcx + 0x60], al
jno 0x1800159ef
leave
or ecx, dword [rax + 0x71600c44]
sub dl, byte [rax - 0x547d890]
int 0xaf
int 0x45
mov al, 0xc0
nop
jo 0x1800159ef
mov eax, 0xcdafcdfa
mov r8b, 0xc0
cli
imul byte [rdi - 0x28323933]
mov eax, 0xddb845cd
cli
mov eax, 0xaffab07d
invalid
mov eax, 1
imul rax, rax, 0xc
mov byte [rsp + rax + 0x60], 0xcd
jae 0x180015a29
jb 0x180015a29
imul byte [rdi - 0x18502850]
scasd eax, dword [rdi]
shl bh, 0x7d
invalid
mov eax, 1
imul rax, rax, 0xc
movsx eax, byte [rsp + rax + 0x60]
add eax, 0x50
mov ecx, 1
imul rcx, rcx, 0xc
mov byte [rsp + rcx + 0x60], al
jno 0x180015a73
push rsi
push rbp
push rdx
push rcx
pop rcx
pop rdx
pop rbp
pop rsi
jo 0x180015a73
sar byte [rax + 0x7dfaddee], 0xcd
scasd eax, dword [rdi]
out 0xc0, eax
mov al, 0xfa
scasd eax, dword [rdi]
invalid
mov eax, 1
imul rax, rax, 0xc
mov ecx, 1
imul rcx, rcx, 0xb
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 0xc
mov byte [rsp + rcx + 0x60], al
jne 0x180015aca
push rdi
pop rdi
je 0x180015aca
scasd eax, dword [rdi]
cli
invalid
mov eax, 1
imul rax, rax, 0xd
mov byte [rsp + rax + 0x60], 0x72
jp 0x180015b04
nop
jnp 0x180015b04
mov eax, 0x45f6b8c0
xlatb
int 0x45
invalid
mov eax, 1
imul rax, rax, 0xd
movsx eax, byte [rsp + rax + 0x60]
sub eax, 0x5c
mov ecx, 1
imul rcx, rcx, 0xd
mov byte [rsp + rcx + 0x60], al
jge 0x180015b4e
push rdi
push rbp
push rbx
push rcx
pop rcx
pop rbx
pop rbp
pop rdi
jl 0x180015b4e
invalid
mov eax, 1
imul rax, rax, 0xd
mov ecx, 1
imul rcx, rcx, 0xc
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 0xd
mov byte [rsp + rcx + 0x60], al
je 0x180015ba5
push rdi
pop rdi
jne 0x180015ba5
mov al, 0xfa
invalid
mov eax, 1
imul rax, rax, 0xe
mov byte [rsp + rax + 0x60], 0x9b
jne 0x180015bdf
push rdx
push rbp
nop
pop rbp
pop rdx
je 0x180015bdf
scasd eax, dword [rdi]
int 0xee
mov al, 0xdd
invalid
mov eax, 1
imul rax, rax, 0xe
movsx eax, byte [rsp + rax + 0x60]
sub eax, 0x3d
mov ecx, 1
imul rcx, rcx, 0xe
mov byte [rsp + rcx + 0x60], al
jg 0x180015c29
push rbx
push rsp
push rsi
pop rsi
pop rsp
pop rbx
jle 0x180015c29
xlatb
out 0xdd, eax
int 0xf6
mov al, 0xcd
int 0xd7
int 0xfa
scasd eax, dword [rdi]
mov al, 0xc6
out dx, al
mul bh
int 0xdd
int 0x7d
int 0xb0
int 0xee
cli
cli
cli
int 0xb8
cli
xlatb
invalid
mov eax, 1
imul rax, rax, 0xe
mov ecx, 1
imul rcx, rcx, 0xd
movsx ecx, byte [rsp + rcx + 0x60]
movsx eax, byte [rsp + rax + 0x60]
xor eax, ecx
mov ecx, 1
imul rcx, rcx, 0xe
mov byte [rsp + rcx + 0x60], al
mov qword [rsp + 0x58], 0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x38], 0x5a
mov dword [rsp + 0x30], 0x12c
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, 0x10c80000
lea r8, [rsp + 0x60]
mov rdx, qword [rsp + 0x130]
xor ecx, ecx
call qword [0x180020390]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x140]
call qword [0x1800202f0]
test eax, eax
je 0x180015cef
lea rcx, [rsp + 0x140]
call qword [0x180020408]
lea rcx, [rsp + 0x140]
call qword [0x180020280]
jmp 0x180015cb7
mov rdx, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x130]
call qword [0x180020278]
cmp dword [0x180020558], 0
jne 0x180015d15
mov eax, 1
jmp 0x180015d17
xor eax, eax
add rsp, 0x178
ret