Function at 0x180001150
Capabilities:
Check os version
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x138
movdqa xmmword [rsp + 0x120], xmm15
movdqa xmmword [rsp + 0x110], xmm14
movdqa xmmword [rsp + 0x100], xmm13
movdqa xmmword [rsp + 0xf0], xmm12
movdqa xmmword [rsp + 0xe0], xmm11
movdqa xmmword [rsp + 0xd0], xmm10
movdqa xmmword [rsp + 0xc0], xmm9
movdqa xmmword [rsp + 0xb0], xmm8
movdqa xmmword [rsp + 0xa0], xmm7
movdqa xmmword [rsp + 0x90], xmm6
movabs rdx, 0xa503787db1fedbfc
lea rbp, [rsp + 0x8c]
mov r8d, dword [0x180023458]
mov esi, dword [0x18002345c]
mov r9, rdx
neg r9
lea r11, section..data
mov r15d, 4
jmp 0x18000120b
not r15
add r11, 1
add rbp, 1
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
mov edi, ecx
and edi, 0xfffffffe
and eax, 1
or eax, edi
xor ecx, eax
test ecx, eax
sete al
setne r10b
cmp esi, 9
setg cl
cmp esi, 0xa
setl dil
and dil, r10b
and al, cl
or al, dil
mov edi, ecx
and dil, r10b
xor cl, r10b
or cl, dil
mov r10d, ecx
xor r10b, al
xor al, 1
xor r10b, 1
or al, cl
xor al, 1
or al, r10b
nop
test al, 1
je 0x180001260
cmp r15, 1
jb 0x18000137f
mov rax, r9
sub rax, r15
mov r15, rax
add r15, rdx
mov r10b, byte [r11]
mov byte [rbp], r10b
mov r8d, dword [0x180023458]
mov esi, dword [0x18002345c]
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
and eax, 0x56eb92ce
mov edi, ecx
and edi, 0xa9146d31
or edi, eax
xor edi, 0xa9146d30
and ecx, 0xfffffffe
or ecx, edi
cmp ecx, 0xffffffff
sete dil
setne r14b
cmp esi, 0xa
setl al
cmp esi, 9
setg cl
and dil, cl
or cl, r14b
xor cl, 1
and al, r14b
or al, dil
test cl, al
jne 0x180001200
nop word cs:[rax + rax]
nop dword [rax]
xor cl, al
jne 0x180001200
mov byte [rbp], r10b
mov r8d, dword [0x180023458]
mov esi, dword [0x18002345c]
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
and ecx, 0x72b268ce
and eax, 0x8d4d9731
or eax, ecx
mov ecx, eax
xor ecx, 0x8d4d9731
xor eax, 0x60920888
and eax, 0x61d79f88
mov edi, ecx
and edi, 0x9e286077
or edi, eax
xor edi, 0x9e286076
and ecx, 0xfffffffe
or ecx, edi
cmp ecx, 0xffffffff
setne dil
sete bl
cmp esi, 0xa
setl cl
cmp esi, 9
setg al
and bl, al
and cl, dil
or cl, bl
mov ebx, eax
and bl, dil
xor al, dil
or al, bl
xor al, 1
test cl, al
je 0x1800012f0
jmp 0x180001200
mov eax, dword [0x180023460]
lea ebp, [rax - 1]
imul ebp, eax
mov ecx, ebp
not ecx
and ebp, 0xc86c5ed7
mov eax, ecx
and eax, 0x3793a128
or eax, ebp
xor eax, 0x3793a129
and ecx, 0xfffffffe
or ecx, eax
cmp ecx, 0xffffffff
sete dl
cmp dword [0x180023464], 0xa
setl cl
xor dl, cl
mov eax, edx
xor al, 1
and cl, al
mov r12d, ecx
xor r12b, 1
xor cl, dl
or r12b, al
xor r12b, 1
or r12b, cl
cmp r12b, 1
jne 0x180001560
mov eax, dword [rsp + 0x8c]
mov qword [rsp + 0x28], rax
movabs r14, 0xc055a10e277010f4
movabs r9, 0xa51b31e69d7d10bc
movabs r10, 0x7d322c5033b0766a
movabs r15, 0x42c8bf73c0b1e575
movabs r11, 0x3a57dc7075c7d51f
xor r13d, r13d
nop
cmp r13, qword [rsp + 0x28]
je 0x180001562
mov rax, r13
not rax
mov rdi, r11
not rdi
mov rcx, r9
and rcx, rdi
mov rdx, r9
not rdx
mov rbp, r11
and rbp, rdx
or rbp, rcx
xor rbp, rdx
mov rdx, r15
not rdx
mov rbx, r13
and rbx, r15
mov rcx, r15
or rcx, rdx
and rcx, rax
and rax, rdx
or rax, rbx
mov ebx, r15d
and ebx, 0x3ff
and rdx, 0xfffffffffffffc00
or rdx, rbx
xor rdx, rax
and rcx, 0xfffffffffffffc00
or rcx, rdx
mov rax, r14
not rax
mov rdx, rdi
and rdx, r14
mov rbx, r11
and rbx, rax
or rbx, rdx
mov rdx, rbp
not rdx
or rdi, rdx
and rdx, r14
and rbp, rax
or rbp, rdx
xor rbp, rbx
not rdi
or rax, r14
and rax, rdi
or rax, rbp
mov rdx, rcx
not rdx
and rdx, r10
mov rdi, r10
not rdi
and rcx, rdi
or rcx, rdx
xor rcx, rdi
not rcx
not rax
or rax, rcx
movabs rdx, 0xce638a9b2e72e2ef
mov rcx, rdx
not rcx
or rcx, rdx
not rax
and rax, rcx
lea rdi, section..data
movzx eax, byte [rax + rdi + 4]
movzx ecx, byte [r13 + rdi + 0x404]
mov edx, ecx
not dl
mov ebx, edx
and bl, 3
and cl, 0xfc
or cl, bl
xor cl, al
xor cl, 3
and cl, al
or dl, al
mov eax, ecx
not al
mov ebx, eax
and bl, 0xc0
and cl, 0x3f
or cl, bl
mov ebx, edx
not bl
or al, dl
and dl, 0xc0
and bl, 0x3f
or bl, dl
xor bl, cl
not al
or al, bl
mov byte [r13 + rdi + 0x404], al
add r13, 1
test r12b, r12b
jne 0x180001420
nop dword [rax]
jmp 0x180001560
movabs r9, 0x499c98a93ce30372
movabs r10, 0x4883fd582586fd7c
lea rax, section..data
mov rcx, qword [rsp + 0x28]
lea r12, [rcx + rax]
add r12, 0x404
mov r11d, 1
mov qword [rsp + 0x30], r12
nop dword [rax + rax]
mov r13d, 4
lea rbp, [rsp + 0x64]
jmp 0x1800015bb
sub r13, r10
add r12, 1
add rbp, 1
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
and eax, 0x4d1b607f
mov edi, ecx
and edi, 0xb2e49f80
or edi, eax
xor edi, 0xb2e49f81
and ecx, 0xfffffffe
or ecx, edi
mov eax, ecx
not eax
and eax, 0xeba9c89a
and ecx, 0x14563765
or ecx, eax
xor ecx, 0x14563765
sete cl
setne dil
cmp esi, 0xa
setl al
cmp esi, 9
setg bl
and cl, bl
or bl, dil
xor bl, 1
and al, dil
or al, cl
mov ecx, ebx
and cl, al
xor al, bl
or al, cl
test al, al
je 0x180001620
cmp r13, 1
jb 0x180001730
add r13, r10
sub r13, r11
mov r14b, byte [r12]
mov byte [rbp], r14b
mov r8d, dword [0x180023458]
mov esi, dword [0x18002345c]
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
mov edi, ecx
and edi, 0xe58fbed7
and eax, 0x1a704128
or eax, edi
xor eax, 0xe58fbed6
or eax, ecx
cmp eax, 0xffffffff
sete dil
setne bl
cmp esi, 9
setg r15b
cmp esi, 0xa
setl al
mov ecx, eax
xor cl, bl
and cl, al
and r15b, dil
and al, bl
or al, r15b
cmp cl, al
jne 0x1800015b0
xor cl, 1
xor al, 1
or al, cl
xor al, 1
jne 0x1800015b0
nop word [rax + rax]
mov byte [rbp], r14b
mov r8d, dword [0x180023458]
mov esi, dword [0x18002345c]
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
mov edi, ecx
and edi, 0xbf7d435e
and eax, 0x4082bca1
or eax, edi
xor eax, 0xbf7d435f
or eax, ecx
cmp eax, 0xffffffff
setne dil
sete dl
cmp esi, 0xa
setl al
cmp esi, 9
setg bl
mov ecx, eax
or al, dl
and dl, bl
and cl, dil
or cl, dl
xor bl, dil
xor al, 1
or al, bl
mov edx, eax
xor dl, 1
cmp cl, dl
jne 0x1800015b0
xor cl, 1
or cl, al
xor cl, 1
je 0x1800016b0
jmp 0x1800015b0
mov eax, dword [0x180023460]
mov edx, dword [0x180023464]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
mov edi, eax
and edi, 0xd2013a91
and ecx, 0x2dfec56e
or ecx, edi
xor ecx, 0x2dfec56f
xor eax, ecx
test eax, ecx
sete dil
setne bl
cmp edx, 0xa
setl cl
cmp edx, 9
setg al
or al, bl
mov edx, eax
xor dl, 1
xor cl, dil
cmp dl, cl
jne 0x180001917
xor cl, 1
or al, cl
xor al, 1
jne 0x180001917
mov edi, 4
lea rbp, [rsp + 0x64]
mov r12, qword [rsp + 0x30]
mov r15, r12
jmp 0x1800017b8
add r15, 1
add rbp, 1
mov rcx, rdi
lea eax, [r8 - 1]
imul eax, r8d
mov edx, eax
not edx
and edx, 0xdcb368aa
and eax, 0x234c9755
or eax, edx
mov edx, eax
xor edx, 0x234c9754
and edx, 0xfffffffe
xor eax, 0xdcb368ab
or eax, edx
mov edx, eax
not edx
and edx, 0x4e9f131
and eax, 0xfb160ece
or eax, edx
xor eax, 0xfb160ece
setne bl
cmp esi, 9
setg al
mov edx, ebx
xor dl, al
and al, bl
or al, dl
xor al, 1
mov ebx, edx
and bl, al
xor al, dl
or al, bl
nop word [rax + rax]
test al, al
je 0x180001820
mov rdi, rcx
sub rdi, r9
sub rdi, r11
add rdi, r9
cmp rcx, 1
jb 0x1800015a0
mov r14b, byte [r15]
mov byte [rbp], r14b
mov r8d, dword [0x180023458]
mov esi, dword [0x18002345c]
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
and ecx, 0x48f56c28
and eax, 0xb70a93d7
or eax, ecx
mov ecx, eax
xor ecx, 0xb70a93d7
xor eax, 0x852428
and eax, 0x368db77f
mov edx, ecx
and edx, 0xc9724880
or edx, eax
xor edx, 0xc9724881
and ecx, 0xfffffffe
or ecx, edx
cmp ecx, 0xffffffff
setne dl
cmp esi, 9
setg cl
cmp esi, 0xa
setl al
xor al, dl
mov ebx, ecx
and bl, dl
xor cl, dl
or cl, bl
cmp al, cl
jne 0x1800017b0
or al, cl
xor al, 1
jne 0x1800017b0
nop dword [rax]
mov byte [rbp], r14b
mov r8d, dword [0x180023458]
mov esi, dword [0x18002345c]
lea eax, [r8 - 1]
imul eax, r8d
mov ecx, eax
not ecx
and ecx, 0xfffffffe
xor eax, 1
or eax, ecx
cmp eax, 0xffffffff
sete dl
setne al
cmp esi, 0xa
setl cl
xor al, cl
xor al, 1
mov ebx, ecx
xor bl, dl
or cl, dl
xor cl, 1
or cl, bl
xor cl, 1
test al, cl
jne 0x1800017b0
xor al, cl
je 0x1800018c0
jmp 0x1800017b0
mov edi, dword [rsp + 0x64]
test rdi, rdi
lea r11, section..data
mov rsi, qword [rsp + 0x30]
je 0x180002526
cmp edi, 0x1f
seta al
movabs rcx, 0xb634b479bd93591e
lea rdx, [rdi + rcx]
sub rcx, rdx
movabs rdx, 0xaa181d6cf7aef522
add rdx, rcx
movabs rcx, 0x55e7e29308510adf
add rcx, rdx
neg rcx
cmp rcx, 0x400
setb dl
cmp rcx, 0x3ff
seta cl
xor cl, al
mov ebx, eax
xor bl, dl
and al, dl
or al, bl
xor r13d, r13d
cmp cl, al
jne 0x180002425
or cl, al
xor cl, 1
jne 0x180002425
mov rcx, qword [rsp + 0x28]
lea rax, [rcx + r11]
add rax, 0x408
add rcx, rdi
movabs rdx, 0xf1614d1e7b3aed07
add rcx, rdx
movabs rbp, 0x4a8d3ea3e4c6d35c
sub rcx, rbp
sub rcx, rdx
add rcx, rbp
movabs rdx, 0xe93329c20f4f0809
add rcx, rdx
movabs rbp, 0xf9643660886c24d7
sub rcx, rbp
sub rcx, rdx
add rcx, r11
add rcx, rbp
add rcx, 0x408
movabs rdx, 0x414b13a5ab53ba95
movabs rbp, 0xbeb4ec5a54ac4567
add rbp, rdx
mov rdx, rdi
sub rdx, rbp
movabs rbp, 0xec25cb53e4685188
sub rdx, rbp
add rdx, r11
add rdx, rbp
cmp rax, rdx
setb dl
setae bl
lea rax, str.GEQAZvoloAUSIlvPvnZiUgmzqqvfZGKcIfcGTbXyksbtjPjmBxiRMuFnrRATEsYHWbCeWIyUviuulaCFaHbcynUdsqhmnrQTQhAVJTsEBgdtGEYQpdHOkoegMDYsHDTUscSzajCwPjmGASPryHQvZbeQCLrPREldjeGkBKWRbeWupzqTIgVJhCOGsEStivxsVSkkrbSSdPPoQRskfZhoSbYnSQOaSeDvRKbfJLflUekOGIfoCZsKGZXYMmcSthzamqTtRyxRBWMQkqnJuhGuRgxjuCTyhIgbedEWjtgHfhjGPEXiCMkKCcHZjiHUpMSbQgtzGemSqPbXysnDfSeqqWIFfmWYTayIAwznppvJWGvqkyLuEMWryYHUkLAYHBMRRJzMHiMGoPPKkpRqmBFOFrDqGsVcryuWxSfWbwMKqfJXCmBFPeKZKMxCFEnLXaFflGlFcotGbHYpjlnkdZAnfwosvibyLnZfyeBaIxdnzSetphqizGAPtGviWFnfVWhpJvTmkkKDtQmkyYAkEitEBEKzFiPRulDMtkmRnPFkwYsjEfGjuYbgQFaEYvFnbroEIkuFnadWZYbhtfsECmBlSXBnGgWUwaIImYpwBgQguMdnstUBrwLGeVbyOUiEeyjWTrFXHZCtIbzGwYQqzMDxOQHuGbWkLbGWVWHJCtvURoAKQtKSYhPlBAAOEiBQBuqYMCzhzjbWBLdSzhEjItQQPrkZCGAcuWzsWSvhCMuBxUMsrRYaHXkAOJmeAffRGtTHZLTwJvdpWZvRDxlhCFqadVfObyJZqEFzgQZGgFyXPEDSHIoFdwIUfVLspTwOUuPjBAjOVLBVyAZPyAxZXJxeEeBPAnJQDiZhCCAmYJekzOBAIGcBdxfZFupKzrYfbnmYErnrBwZAalvJoGoHRDnQDOsRGbZdDcZtehTMHuzGFYwxejTVofMKjixCtfLYBYIlEtdEkCqdGRhonvxwZYEjZdPvRbRbVuhamrKQXuhsrYpCqaGEFmBiSXZcBDFPiPO
cmp rcx, rax
seta al
setbe cl
and cl, bl
and al, dl
or al, cl
xor bl, al
cmp bl, 1
jne 0x180001a56
test al, al
je 0x180001a56
xor r13d, r13d
jmp 0x180002425
add rsi, 4
mov qword [rsp + 0x30], rsi
mov r13d, edi
not r13d
mov eax, r13d
and eax, 0x1f
mov qword [rsp + 0x68], rdi
mov ecx, edi
and ecx, 0xffffffe0
or ecx, eax
xor r13d, ecx
and r13d, ecx
movabs rax, 0x33f0eb01c5ba4a97
sub rax, r13
movabs rdx, 0xcc0f14fe3a45b589
add rdx, rax
movabs rdi, 0x291d1105cfa1dbf0
add rdx, rdi
sub rdi, rdx
mov rsi, rdi
shr rsi, 5
movabs rdx, 0xed83c20d0e2fd609
add rsi, rdx
movabs rbp, 0x1c8b5bdcf91fdfe6
add rsi, rbp
mov rax, rsi
sub rax, rdx
movabs rdx, 0x289ca48b12706fc7
add rax, rdx
sub rax, rbp
sub rax, rdx
add rax, 1
mov rdx, rax
not rdx
movabs rbp, 0x44088c5126382294
mov rbx, rdx
and rbx, rbp
not rbp
and rbp, rax
or rbp, rbx
movabs rcx, 0x44088c5126382295
xor rcx, rbp
or rcx, rdx
not rcx
test rdi, rdi
mov qword [rsp + 0x48], rcx
je 0x180002268
movabs rbp, 0xac8cf2ce70573cfa
add rax, rbp
movabs rdx, 0x1c1b3e392c9d099b
add rax, rdx
sub rax, rcx
sub rax, rdx
sub rax, rbp
mov qword [rsp + 0x58], rax
sub rcx, rsi
movabs rax, 0xa0f1dea074fb5ee
add rax, rcx
mov qword [rsp + 0x38], rax
pcmpeqd xmm11, xmm11
movdqa xmm15, xmmword [0x180005060]
movdqa xmm14, xmmword [str.aaaaaaaaaaaaaaaa]
mov rax, qword [rsp + 0x28]
add rax, r11
add rax, 0x418
mov qword [rsp + 0x50], rax
mov rax, 0xffffffffffffffff
xor edi, edi
movdqa xmm9, xmmword [0x180005100]
movdqa xmm10, xmmword [0x180005110]
nop word [rax + rax]
mov qword [rsp + 0x40], rdi
movabs rdx, 0x851e08b92cdcb9c7
mov rcx, rdx
and rcx, rax
mov r11, rax
not rdx
mov rax, rdi
and rax, rdx
movabs rsi, 0xd5152227cec6f5a8
mov rbx, rsi
not rbx
movabs rdi, 0x770fc232af43c771
and rbx, rdi
or rax, rcx
not rdi
mov rbp, rsi
and rbp, rdi
or rbp, rbx
xor rax, rdx
xor rbp, rdi
movabs rdi, 0x9ce2e1036621dfff
mov r8, rdi
not r8
mov r12, rax
mov r10, rdi
or r10, r8
and r10, rax
not rax
and r12, r8
mov r9d, edi
and r9d, 0x3c0
mov r15, rsi
and r8, 0xfffffffffffffc3f
and r15, rbp
xor rbp, rsi
movabs rbx, 0x787b162c9ca14792
mov rdx, rbx
mov rcx, r11
mov qword [rsp + 0x70], r11
and rdx, r11
and rax, rdi
not rbx
mov rdi, qword [rsp + 0x40]
and rdi, rbx
or rdi, rdx
or r8, r9
xor rdi, rbx
movabs rbx, 0xa5e09aa5c39d6b51
mov rdx, rbx
and rdx, 0xffffffffffffffdf
not rbx
mov r14d, ebx
and r10, 0xfffffffffffffc3f
and r14d, 0x20
or r14, rdx
xor r14, rbx
movabs r11, 0xf9cb5381d8dfe703
mov r9, r11
or rbp, r15
not r9
mov rbx, rdi
xor rbx, r9
movabs rsi, 0x46b5fb07f15ec0e
mov rdx, rsi
not rdx
mov r15, rcx
and rbx, rdi
or r15, r11
or rdx, rsi
not r15
or r12, rax
and r15, rdx
mov rsi, r14
xor rsi, r9
mov edx, r11d
not edx
xor r8, r12
and edx, 0x20
mov rax, rbx
and rax, r15
xor r15, rbx
or r10, r8
or r15, rax
mov rcx, rdx
not rcx
movabs r8, 0xc84974cdcda30672
mov rax, r8
not rax
mov rbx, rcx
and rsi, r14
and rbx, r8
and edx, eax
or rdx, rbx
mov rbx, rsi
not rbx
or ecx, ebx
and rbx, r8
and rsi, rax
or rsi, rbx
mov rbx, r10
not rbx
xor rdx, rsi
movabs r12, 0x4f5fc2fa5eb951c0
mov rsi, r12
not rsi
and r10, rsi
not ecx
or eax, r8d
and eax, ecx
and rbx, r12
or rax, rdx
mov rdx, rdi
not rdx
movabs r8, 0xe01b5b26a9ba9029
mov rcx, r8
not rcx
or r10, rbx
mov rbx, rdx
and rbx, r8
and rdi, rcx
or rdi, rbx
xor r10, rsi
mov rbx, r15
not rbx
and rbx, rax
not rax
and rax, r15
mov rsi, r14
not rsi
or rdx, rsi
and rsi, r8
and r14, rcx
or r14, rsi
xor r14, rdi
not rbp
not rdx
or rcx, r8
and rcx, rdx
movabs rdi, 0xb6af433e1a25b6b9
mov rdx, rdi
not rdx
not r10
or rdx, rdi
or rcx, r14
mov rdi, rcx
not rdi
or rax, rbx
movabs rbx, 0xbb144d2170756d
and rdi, rbx
not rbx
and rcx, rbx
or rbp, r10
or rcx, rdi
xor rcx, rbx
mov rbx, r11
and rbx, r9
not rbp
xor r9, r11
or r9, rbx
not rcx
and rbp, rdx
not r9
or r9, rcx
movabs rdx, 0x5e7a06566dabd8a1
mov rcx, rdx
not rcx
lea r10, section..data
movdqu xmm13, xmmword [rbp + r10 + 4]
or rcx, rdx
not r9
and r9, rcx
mov rbx, rax
movdqu xmm8, xmmword [rbp + r10 + 0x14]
and rbx, r9
movabs rbp, 0x5bebec5c35b710ca
mov rdx, rbp
and rdx, 0xfffffffffffffc1f
not rbp
mov ecx, ebp
xor r9, rax
and ecx, 0x3e0
or rcx, rdx
xor rcx, rbp
movabs rsi, 0xe01ad037bb8bd907
mov rdx, rsi
or r9, rbx
mov rax, r9
not rdx
movabs rdi, 0x779ae1d10413ba94
mov rbx, rdi
and rbx, rdx
not rdi
mov rbp, rsi
not rax
and rbp, rdi
or rbp, rbx
xor rbp, rdi
mov rbx, rax
and rbx, rcx
xor rcx, rax
movabs r8, 0x80e323b4c65ca53f
mov rax, r8
not rax
mov rdi, rdx
and rdi, r8
and rsi, rax
or rsi, rdi
mov rdi, rbp
not rdi
or rdx, rdi
and rdi, r8
and rbp, rax
or rbp, rdi
mov rdi, qword [rsp + 0x40]
xor rbp, rsi
not rdx
or rax, r8
and rax, rdx
or rax, rbp
or rcx, rbx
not rax
or rax, rcx
movabs rdx, 0xe61987dd9f5a4a45
mov rcx, rdx
not rcx
or rcx, rdx
not rax
and rax, rcx
mov rcx, qword [rsp + 0x50]
movdqu xmm1, xmmword [rcx + rdi - 0x10]
movdqu xmm2, xmmword [rcx + rdi]
movdqa xmm3, xmm1
pxor xmm3, xmm11
movdqa xmm0, xmmword [section..rdata]
movdqa xmm5, xmm0
pandn xmm5, xmm1
pandn xmm1, xmm0
por xmm1, xmm5
pxor xmm1, xmm0
por xmm1, xmmword [0x180005020]
movdqa xmm5, xmm1
movdqa xmm0, xmmword [0x180005010]
por xmm3, xmm0
movdqa xmm6, xmm15
pxor xmm5, xmm11
movdqa xmm12, xmm13
pandn xmm6, xmm5
movdqa xmm4, xmmword [0x180005030]
movdqa xmm5, xmm4
pandn xmm5, xmm13
pandn xmm13, xmm4
por xmm13, xmm5
movdqa xmm5, xmm3
pxor xmm5, xmm11
pand xmm1, xmm15
por xmm6, xmm1
movdqa xmm1, xmm15
pxor xmm12, xmm11
pandn xmm1, xmm5
movdqa xmm5, xmm13
pxor xmm5, xmmword [str._n_n_n_n_n_n_n_n_n_n_n_n_n_n_n_n]
por xmm12, xmm0
pxor xmm13, xmmword [0x180005050]
pand xmm3, xmm15
por xmm1, xmm3
movdqa xmm3, xmm12
pxor xmm3, xmm11
pand xmm13, xmm5
pxor xmm1, xmm6
pandn xmm12, xmm13
pxor xmm3, xmm13
movdqa xmm5, xmm1
movdqa xmm0, xmmword [0x180005070]
movdqa xmm13, xmm0
movdqa xmm6, xmm0
por xmm3, xmm12
pandn xmm6, xmm2
movdqa xmm7, xmm8
movdqa xmm0, xmmword [0x180005080]
movdqa xmm4, xmm0
pandn xmm4, xmm8
pandn xmm8, xmm0
pandn xmm5, xmm3
por xmm8, xmm4
movdqa xmm4, xmm2
pxor xmm4, xmm0
pxor xmm4, xmm8
pandn xmm3, xmm1
pand xmm4, xmm2
pandn xmm2, xmm13
por xmm6, xmm2
por xmm3, xmm5
pxor xmm7, xmm11
pxor xmm6, xmm13
por xmm6, xmm7
movdqa xmm1, xmm6
pxor xmm1, xmm11
pandn xmm6, xmm4
pxor xmm4, xmm1
movdqu xmmword [rcx + rdi - 0x10], xmm3
por xmm4, xmm6
movdqu xmmword [rcx + rdi], xmm4
movdqu xmm4, xmmword [rax + r10 + 4]
movdqu xmm12, xmmword [rax + r10 + 0x14]
mov rax, qword [rsp + 0x30]
movdqu xmm1, xmmword [rax + r9]
movdqu xmm2, xmmword [rax + r9 + 0x10]
movdqa xmm8, xmm1
movdqa xmm0, xmmword [0x180005090]
pxor xmm8, xmm0
pand xmm8, xmm1
movdqa xmm6, xmm1
movdqa xmm3, xmmword [str.________________]
movdqa xmm7, xmm3
pandn xmm6, xmm0
pandn xmm7, xmm4
movdqa xmm1, xmm4
pxor xmm1, xmm0
pand xmm1, xmm4
pandn xmm4, xmm3
por xmm7, xmm4
pxor xmm7, xmm3
movdqa xmm4, xmm6
pand xmm4, xmm8
por xmm7, xmmword [0x1800050b0]
pxor xmm8, xmm6
movdqa xmm6, xmm1
pxor xmm6, xmm11
movdqa xmm0, xmm7
por xmm6, xmm7
pxor xmm7, xmm11
por xmm8, xmm4
movdqa xmm4, xmm14
pandn xmm4, xmm7
movdqa xmm7, xmm14
pandn xmm7, xmm1
pand xmm0, xmm14
pandn xmm1, xmm14
por xmm1, xmm7
pxor xmm6, xmm11
movdqa xmm3, xmmword [0x1800050d0]
movdqa xmm7, xmm3
por xmm4, xmm0
pandn xmm7, xmm2
movdqa xmm0, xmm2
movdqa xmm5, xmmword [0x1800050e0]
pxor xmm0, xmm5
pand xmm0, xmm2
pxor xmm1, xmm4
pandn xmm2, xmm3
por xmm7, xmm2
pxor xmm7, xmm3
por xmm6, xmm1
por xmm7, xmmword [str._v_v_v_v_v_v_v_v_v_v_v_v_v_v_v_vssssssssssssssss]
movdqa xmm4, xmm7
movdqa xmm2, xmm12
pxor xmm2, xmm5
movdqa xmm1, xmm12
pandn xmm1, xmm2
pxor xmm4, xmm11
pand xmm2, xmm12
movdqa xmm3, xmm9
pandn xmm3, xmm4
movdqa xmm5, xmm0
pxor xmm5, xmm11
por xmm5, xmm7
pand xmm7, xmm9
por xmm3, xmm7
movdqa xmm4, xmm9
pandn xmm4, xmm0
pandn xmm0, xmm9
por xmm0, xmm4
pxor xmm0, xmm3
pxor xmm5, xmm11
movdqa xmm3, xmm1
por xmm5, xmm0
pxor xmm3, xmm11
movdqa xmm0, xmm2
pxor xmm0, xmm11
por xmm0, xmm3
movdqa xmm3, xmm10
pandn xmm3, xmm1
pandn xmm1, xmm10
por xmm1, xmm3
movdqa xmm3, xmm8
pandn xmm3, xmm6
pandn xmm6, xmm8
movdqa xmm4, xmm10
pandn xmm4, xmm2
pandn xmm2, xmm10
por xmm2, xmm4
por xmm6, xmm3
pxor xmm2, xmm1
pxor xmm0, xmm11
por xmm0, xmm2
movdqa xmm1, xmm5
pandn xmm1, xmm0
pandn xmm0, xmm5
por xmm0, xmm1
movdqu xmmword [rax + r9], xmm6
movdqu xmmword [rax + r9 + 0x10], xmm0
add rdi, 0x40
add qword [rsp + 0x58], 0xfffffffffffffffe
mov rax, qword [rsp + 0x70]
add rax, 0xffffffffffffffc0
add qword [rsp + 0x38], 2
jne 0x180001bb0
jmp 0x18000226a
xor edi, edi
cmp qword [rsp + 0x48], 0
lea r11, section..data
je 0x180002417
mov rax, rdi
not rax
mov rcx, rax
and rcx, 0xfffffffffffffc1f
mov edx, edi
and edx, 0x3e0
or rdx, rcx
not rdx
or rdx, rax
not rdx
movdqu xmm5, xmmword [rdx + r11 + 4]
movdqu xmm8, xmmword [rdx + r11 + 0x14]
mov rax, qword [rsp + 0x30]
movdqu xmm3, xmmword [rax + rdi]
movdqu xmm9, xmmword [rax + rdi + 0x10]
pcmpeqd xmm0, xmm0
movdqa xmm6, xmm3
pxor xmm6, xmm0
movdqa xmm10, xmmword [0x180005120]
pxor xmm3, xmm10
movdqa xmm1, xmm3
pand xmm1, xmm10
por xmm6, xmm10
movdqa xmm11, xmm6
pxor xmm11, xmm0
movdqa xmm4, xmmword [0x180005130]
movdqa xmm7, xmm5
pandn xmm7, xmm4
pandn xmm4, xmm5
por xmm4, xmm7
movdqa xmm7, xmmword [0x180005140]
pxor xmm7, xmm4
pxor xmm4, xmmword [0x180005150]
pxor xmm5, xmm0
pand xmm4, xmm7
por xmm5, xmm10
movdqa xmm2, xmm5
pxor xmm2, xmm0
movdqa xmm7, xmmword [0x180005030]
pandn xmm1, xmm7
pand xmm3, xmmword [str._b_b_b_b_b_b_b_b_b_b_b_b_b_b_b_b]
por xmm3, xmm1
pand xmm6, xmm7
pandn xmm7, xmm11
por xmm7, xmm6
pxor xmm7, xmm3
movdqa xmm3, xmm4
pxor xmm3, xmm0
movdqa xmm1, xmmword [0x180005170]
por xmm3, xmm5
pand xmm5, xmm1
movdqa xmm6, xmm1
pandn xmm6, xmm4
pandn xmm4, xmm1
por xmm4, xmm6
pandn xmm1, xmm2
por xmm1, xmm5
pxor xmm1, xmm4
pxor xmm3, xmm0
por xmm3, xmm1
movdqa xmm1, xmm7
pandn xmm1, xmm3
pandn xmm3, xmm7
por xmm3, xmm1
movdqa xmm4, xmmword [0x180005180]
movdqa xmm1, xmm9
pxor xmm1, xmm4
pand xmm1, xmm9
pandn xmm9, xmm4
movdqa xmm2, xmmword [str.cccccccccccccccc]
por xmm2, xmm8
pxor xmm0, xmm2
pxor xmm4, xmm8
pand xmm4, xmm8
movdqa xmm5, xmm9
pand xmm5, xmm1
pxor xmm1, xmm9
por xmm1, xmm5
pandn xmm2, xmm4
pxor xmm4, xmm0
por xmm4, xmm2
movdqa xmm0, xmm1
pandn xmm0, xmm4
pandn xmm4, xmm1
por xmm4, xmm0
movdqu xmmword [rax + rdi], xmm3
movdqu xmmword [rax + rdi + 0x10], xmm4
mov rdi, qword [rsp + 0x68]
cmp r13, rdi
je 0x180002526
movabs r9, 0xc2d035cc016cb898
movabs rsi, 0xbf935b48c1c1cdb0
movabs r8, 0xb235d2c73184a3ac
movabs r11, 0x3cb62868685055b0
movabs r10, 0x262da10c3016a2ab
mov rdx, r13
not rdx
lea rax, section..data
mov rcx, qword [rsp + 0x28]
lea r12, [rcx + rax + 0x408]
mov rbp, r8
not rbp
mov r14, rsi
and r14, 0xfffffffffffffc00
not rsi
mov rbx, r9
not rbx
and rbx, r11
not r11
mov r15, r9
and r15, r11
or r15, rbx
xor r15, r11
lea r11, section..data
mov rbx, r9
and rbx, r15
xor r15, r9
or r15, rbx
not r15
mov r9, r10
not r9
or r9, r10
mov r10, rdi
nop
mov rdi, r8
and rdi, rdx
mov rbx, r13
and rbx, rbp
or rbx, rdi
xor rbx, rbp
mov eax, esi
and eax, 0x3ff
or rax, r14
xor rax, rsi
mov rdi, rbx
and rdi, rax
xor rax, rbx
or rax, rdi
or rax, r15
not rax
and rax, r9
movzx eax, byte [rax + r11 + 4]
movzx ebx, byte [r12 + r13]
not al
mov ecx, eax
or cl, bl
not cl
xor al, bl
not al
and al, bl
mov ebx, ecx
and bl, al
xor al, cl
or al, bl
mov byte [r12 + r13], al
add r13, 1
add rdx, 0xffffffffffffffff
cmp r13, r10
jb 0x1800024c0
movsxd rdi, dword [0x180006440]
mov ecx, dword [0x180023468]
mov edx, dword [0x18002346c]
lea ebp, [rcx - 1]
imul ebp, ecx
mov ecx, ebp
not ecx
mov ebx, ecx
and ebx, 0xfffffffe
and ebp, 1
or ebp, ebx
not ebp
or ebp, ecx
cmp ebp, 0xffffffff
setne bl
sete al
cmp edx, 0xa
setl cl
cmp edx, 9
setg dl
and al, dl
and cl, bl
or cl, al
mov eax, edx
and al, bl
xor dl, bl
or dl, al
mov eax, edx
xor al, 1
cmp cl, al
jne 0x180002592
xor cl, 1
or cl, dl
xor cl, 1
jne 0x180002592
nop word cs:[rax + rax]
jmp 0x180002590
mov rax, qword [rsp + 0x28]
lea r12, [rax + r11]
add r12, 0x407
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [r12 + 1], 0
lea r12, [r12 + 1]
jne 0x1800025b0
lea rax, [rdi + r11]
add rax, 0x404
mov qword [rsp + 0x30], rax
mov rax, r12
add rax, 1
mov qword [rsp + 0x40], rax
nop dword [rax + rax]
cmp byte [rax], 0
lea rax, [rax + 1]
jne 0x1800025e0
mov rcx, rax
nop dword [rax]
cmp byte [rcx], 0
lea rcx, [rcx + 1]
jne 0x1800025f0
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x70], rax
mov eax, dword [0x180023470]
mov ecx, dword [0x180023474]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
and eax, 0xbb655251
and edx, 0x449aadae
or edx, eax
mov eax, edx
xor eax, 0x449aadae
and eax, 0xfffffffe
xor edx, 0xbb655250
or edx, eax
cmp edx, 0xffffffff
sete dl
setne bl
cmp ecx, 0xa
setl al
cmp ecx, 9
setg cl
or cl, bl
xor cl, 1
xor al, dl
mov edx, ecx
and dl, al
xor al, cl
or al, dl
jne 0x180002686
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
test al, al
je 0x180002670
mov rcx, qword gs:[0x60]
mov rdi, qword [rcx + 0x18]
test al, al
je 0x18000265e
add rdi, 0x10
movabs r15, 0x914e95816c352ee9
mov eax, dword [0x180023478]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0x19a10d26
mov edx, eax
and edx, 0xe65ef2d9
or edx, ecx
xor edx, 0xe65ef2d8
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
setne al
cmp dword [0x18002347c], 9
setg r11b
mov ecx, r11d
xor cl, al
mov edx, ecx
xor dl, 1
and r11b, al
or r11b, cl
xor cl, r11b
xor cl, 1
or r11b, dl
xor r11b, 1
or r11b, cl
mov r14, rdi
mov r14, qword [r14]
cmp r14, rdi
je 0x180002832
mov rbx, r12
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x180002720
movabs rax, 0x13706da1c6f222b3
mov rdx, rax
sub rbx, rax
movabs rax, 0x39be16531410adb5
mov rcx, rax
sub rbx, rax
add rbx, rdx
movabs rax, 0x539f065778345afc
sub rbx, rax
sub rbx, qword [rsp + 0x40]
add rbx, rax
add rbx, rcx
je 0x180002837
mov rbp, qword [r14 + 0x60]
xor esi, esi
mov r13, rbx
nop word cs:[rax + rax]
nop
movzx r9d, word [rbp + rsi*2]
movsx r10d, byte [r12 + rsi + 1]
lea eax, [r9 - 0x41]
cmp ax, 0x19
ja 0x1800027b0
test r11b, r11b
je 0x180002830
lea r8d, [r9 + 0x20]
jmp 0x1800027b8
mov r8d, r9d
test r11b, r11b
je 0x180002820
lea eax, [r10 - 0x41]
lea ecx, [r10 + 0x20]
cmp al, 0x1a
cmovae ecx, r10d
sub r8d, ecx
sete r10b
test r9w, r9w
setne al
mov ecx, eax
or cl, r10b
mov edx, ecx
xor dl, 1
xor al, r10b
cmp dl, al
jne 0x180002809
xor al, 1
or cl, al
xor cl, 1
jne 0x180002809
mov rax, r15
not rax
add r13, rax
add r13, r15
add rsi, 1
cmp rbx, rsi
jne 0x180002780
jmp 0x180002840
test r8d, r8d
jne 0x180002704
jmp 0x180002840
jmp 0x180002820
jmp 0x180002830
xor r14d, r14d
jmp 0x180002844
test r11b, r11b
je 0x180002910
mov r14, qword [r14 + 0x30]
mov eax, dword [0x180023480]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and eax, 0xfffffffe
xor ecx, 1
or ecx, eax
cmp ecx, 0xffffffff
setne cl
sete dl
cmp dword [0x180023484], 9
setg al
xor dl, al
mov ebx, eax
and bl, cl
xor al, cl
or al, bl
mov ecx, edx
xor cl, al
or al, dl
xor al, 1
or al, cl
lea rsi, section..data
nop word [rax + rax]
test al, al
je 0x180002890
movsxd rax, dword [r14 + 0x3c]
mov edi, dword [r14 + rax + 0x88]
mov r8d, dword [r14 + rdi + 0x1c]
mov eax, dword [0x180023488]
mov ebp, dword [0x18002348c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
mov ebx, eax
and ebx, 0xfffffffe
and edx, 1
or edx, ebx
xor eax, edx
test eax, edx
sete bl
setne r9b
cmp ebp, 0xa
setl dl
cmp ebp, 9
setg al
and bl, al
or al, r9b
mov ecx, eax
xor cl, 1
and dl, r9b
or dl, bl
cmp cl, dl
jne 0x180002912
xor dl, 1
or al, dl
xor al, 1
jne 0x180002912
nop dword [rax + rax]
jmp 0x180002900
jmp 0x180002910
add r8, r14
mov r10d, dword [r14 + rdi + 0x20]
mov r9d, dword [r14 + rdi + 0x24]
add r10, r14
add r9, r14
mov rax, qword [rsp + 0x28]
lea rbp, [rax + rsi]
add rbp, 0x408
nop word cs:[rax + rax]
nop
mov esi, dword [r10]
add rsi, r14
xor edi, edi
nop dword [rax + rax]
movzx eax, byte [rbp + rdi]
movzx r11d, byte [rsi + rdi]
cmp al, r11b
sete bl
test al, al
setne dl
mov ecx, edx
xor cl, bl
or dl, bl
xor dl, 1
or dl, cl
jne 0x18000297d
xor dl, 1
add rdi, 1
test dl, dl
jne 0x180002950
cmp al, r11b
je 0x18000298c
add r9, 2
add r10, 4
jmp 0x180002940
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r14, rax
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 0x50]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r14
mov qword [rsp + 0x28], rax
mov edi, dword [0x180023460]
mov r14d, dword [0x180023464]
lea r9d, [rdi - 1]
imul r9d, edi
mov r8d, r9d
not r8d
mov edx, r9d
and edx, 0x7551ceb1
mov esi, r8d
and esi, 0x8aae314e
or esi, edx
xor esi, 0x8aae314f
mov ebp, r8d
and ebp, 0xfffffffe
or esi, ebp
cmp esi, 0xffffffff
setne r10b
cmp r14d, 9
setg bl
cmp r14d, 0xa
setl dl
xor dl, r10b
mov eax, ebx
and al, r10b
xor bl, r10b
or bl, al
cmp dl, bl
jne 0x180002a22
or dl, bl
xor dl, 1
jne 0x180002a22
nop
jmp 0x180002a20
and r9d, 1
or ebp, r9d
xor r8d, ebp
test r8d, ebp
sete r8b
setne al
cmp r14d, 0xa
setl dl
cmp r14d, 9
setg bl
or bl, al
xor bl, 1
xor dl, r8b
test bl, dl
jne 0x180002a58
xor bl, dl
je 0x180002cb0
mov rax, qword [rsp + 0x30]
lea r10, [rax + 0x108]
movabs r15, 0x7afea2fe94c059c
xor r11d, r11d
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 6]
cmp r11, rax
jae 0x180002cb2
lea rcx, [r11 + r11*4]
mov r9d, dword [r10 + rcx*8 + 0xc]
mov r14d, dword [r10 + rcx*8 + 0x10]
add r9, qword [rsp + 0x28]
mov ecx, dword [r10 + rcx*8 + 0x14]
lea rax, section..data
lea rdx, [rcx + rax]
add rdx, 0x404
mov edi, dword [0x180023458]
mov esi, dword [0x18002345c]
jmp 0x180002acf
add r14, r15
add r14, 0xffffffffffffffff
add rdx, 1
add r9, 1
lea ecx, [rdi - 1]
imul ecx, edi
mov edi, ecx
not edi
mov ebx, edi
and ebx, 0x24f427c3
and ecx, 0xdb0bd83c
or ecx, ebx
xor ecx, 0xdb0bd83d
xor edi, ecx
test edi, ecx
setne dil
cmp esi, 9
setg bl
mov ecx, ebx
xor cl, dil
and bl, dil
or bl, cl
xor cl, 1
mov esi, ecx
xor sil, bl
or bl, cl
xor bl, 1
or bl, sil
nop word [rax + rax]
test bl, bl
je 0x180002b20
cmp r14, 1
jb 0x180002c2a
sub r14, r15
mov cl, byte [rdx]
mov byte [r9], cl
mov edi, dword [0x180023458]
mov esi, dword [0x18002345c]
lea ecx, [rdi - 1]
imul ecx, edi
mov ebx, ecx
not ebx
mov ebp, ebx
and ebp, 0x3e977386
and ecx, 0xc1688c79
or ecx, ebp
xor ecx, 0xc1688c78
xor ebx, ecx
test ebx, ecx
sete bpl
setne r13b
cmp esi, 0xa
setl cl
cmp esi, 9
setg bl
and bpl, bl
or bl, r13b
mov r8d, ebx
xor r8b, 1
and cl, r13b
or cl, bpl
cmp r8b, cl
jne 0x180002ac0
xor cl, 1
or bl, cl
xor bl, 1
jne 0x180002ac0
nop word cs:[rax + rax]
nop
movzx ecx, byte [rdx]
mov byte [r9], cl
movzx ecx, byte [rdx]
mov byte [r9], cl
mov edi, dword [0x180023458]
mov esi, dword [0x18002345c]
lea ebp, [rdi - 1]
imul ebp, edi
mov ecx, ebp
not ecx
and ebp, 0x226f70d
mov ebx, ecx
and ebx, 0xfdd908f2
or ebx, ebp
xor ebx, 0xfdd908f3
and ecx, 0xfffffffe
or ecx, ebx
mov ebp, ecx
not ebp
and ebp, 0xa8b55070
and ecx, 0x574aaf8f
or ecx, ebp
xor ecx, 0x574aaf8f
setne al
cmp esi, 9
setg cl
mov ebx, eax
xor bl, cl
and cl, al
or cl, bl
xor cl, 1
test bl, cl
jne 0x180002ac0
xor bl, cl
je 0x180002bb0
jmp 0x180002ac0
movabs rcx, 0x3c676cdee5d4c3d
mov rax, rcx
sub rax, r11
sub rax, rcx
movabs rcx, 0xa26f845cc5877d5a
add rax, rcx
neg rax
lea r11, [rcx + rax]
add r11, 1
mov edi, dword [0x180023460]
mov r14d, dword [0x180023464]
lea eax, [rdi - 1]
imul eax, edi
mov edx, eax
not edx
mov ebp, edx
and ebp, 0x96e47d6e
and eax, 0x691b8291
or eax, ebp
xor eax, 0x96e47d6f
or eax, edx
cmp eax, 0xffffffff
setne al
cmp r14d, 9
setg bl
mov edx, ebx
or dl, al
mov ecx, edx
xor cl, 1
xor bl, al
cmp cl, bl
jne 0x180002a71
xor bl, 1
or dl, bl
xor dl, 1
jne 0x180002a71
jmp 0x180002cb0
movabs rax, 0xc459dbeaf4908cbf
mov r11, rax
mov rcx, qword [rsp + 0x30]
sub r11, qword [rcx + 0x30]
mov edx, 0xffffffe0
sub r11, rax
mov r15d, dword [rcx + 0xb0]
mov rax, qword [rsp + 0x28]
add r15, rax
add r11, rax
add rdx, 0x1f
mov qword [rsp + 0x50], rdx
movabs r10, 0x5ce7a154405d5842
movabs r13, 0x35fa8bd2d2cc3301
movabs r9, 0x7c44d21b64fa1d5
jmp 0x180002d12
mov eax, dword [r15 + 4]
add r15, rax
lea ebp, [rdi - 1]
imul ebp, edi
mov esi, ebp
not esi
mov ecx, esi
and ecx, 0xd07065ea
mov edx, ebp
and edx, 0x2f8f9a15
or edx, ecx
mov ecx, edx
xor ecx, 0x2f8f9a15
xor edx, 0x10002122
and edx, 0x198fa332
mov ebx, ecx
and ebx, 0xe6705ccd
or ebx, edx
xor ebx, 0xe6705ccc
and ecx, 0xfffffffe
or ecx, ebx
mov edx, ecx
not edx
and edx, 0x69015a21
and ecx, 0x96fea5de
or ecx, edx
xor ecx, 0x96fea5de
setne cl
cmp r14d, 9
setg dl
mov ebx, edx
or bl, cl
xor bl, 1
xor dl, cl
mov ecx, ebx
and cl, dl
xor dl, bl
or dl, cl
cmp dl, 1
jne 0x180003140
test dl, dl
je 0x180003140
cmp dword [r15], 0
je 0x1800031c2
mov r8d, dword [r15 + 4]
cmp r8, 8
jb 0x180003149
and esi, 0xfffffffe
xor ebp, 1
or ebp, esi
mov ecx, ebp
not ecx
and ecx, 0x10146657
and ebp, 0xefeb99a8
or ebp, ecx
xor ebp, 0xefeb99a8
setne sil
sete cl
cmp r14d, 0xa
setl bl
cmp r14d, 9
setg dl
and cl, dl
and bl, sil
or bl, cl
mov ecx, edx
and cl, sil
xor dl, sil
or dl, cl
xor dl, 1
test bl, dl
jne 0x180002e08
xor bl, dl
je 0x1800031c0
movabs rax, 0x1fffffff8
add r8, rax
shr r8, 1
mov rax, qword [rsp + 0x50]
mov rcx, rax
not rcx
movabs rdx, 0x6a1054ec6e267db3
and rcx, rdx
not rdx
mov rsi, rax
and rsi, rdx
or rsi, rcx
xor rsi, rdx
mov rcx, r8
not rcx
mov rdx, rsi
and rdx, rcx
not rsi
and rsi, r8
or rsi, rdx
not rsi
movabs rax, 0xdc8f54009de97eed
mov rdx, rax
not rdx
or rsi, rcx
or rdx, rax
not rsi
and rsi, rdx
mov qword [rsp + 0x38], rsi
xor ebp, ebp
cmp rbp, qword [rsp + 0x38]
je 0x180003149
movzx ebx, word [r15 + rbp*2 + 8]
mov eax, ebx
shr eax, 0xc
mov esi, ebx
not esi
mov ecx, ebx
and ecx, 0x9c54
mov edx, esi
and edx, 0x63ab
or edx, ecx
xor edx, 0x6c54
and esi, 0xfffff000
or esi, edx
mov ecx, esi
not ecx
and ecx, 0x4bb4
and esi, 0xd605b44b
or esi, ecx
xor esi, 0xd605b44b
cmp ebx, 0xa000
jae 0x180002f01
cmp eax, 3
jne 0x1800030c7
mov eax, dword [r15]
mov rcx, qword [rsp + 0x28]
lea rax, [rcx + rax*4]
mov ecx, esi
add dword [rax + rcx*4], r11d
mov edi, dword [0x180023460]
mov r14d, dword [0x180023464]
jmp 0x1800030c7
cmp eax, 0xa
jne 0x1800030c7
mov eax, dword [r15]
mov r8d, esi
movabs rcx, 0x8e57f15a86d0e0cc
mov rdx, rcx
add r8, rcx
movabs rcx, 0xef41d08a0a64f92b
sub r8, rcx
sub r8, rdx
movabs rdx, 0x38467ab49bf62c3f
sub r8, rdx
add r8, qword [rsp + 0x28]
add r8, rdx
movabs rdx, 0x5f7aa95cf846c2e1
add r8, rdx
add r8, rcx
sub r8, rdx
movabs rdx, 0xbef4978afbe99fe9
lea rcx, [r8 + rdx]
movabs rsi, 0x645e42eeb1eaf9f2
add rcx, rsi
sub rdx, rcx
sub rdx, rax
add rdx, rsi
neg rdx
mov rax, qword [rdx]
movabs rcx, 0x8a8fecdbfbc24536
mov rsi, rcx
add rax, rcx
movabs rcx, 0x8fe3891cc6d75312
sub rax, rcx
sub rax, rsi
add rax, r11
add rax, rcx
mov qword [rdx], rax
mov edi, dword [0x180023460]
lea eax, [rdi - 1]
imul eax, edi
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x42db122
and eax, 0xfbd24edd
or eax, edx
mov r14d, dword [0x180023464]
xor eax, 0x42db123
or eax, ecx
cmp eax, 0xffffffff
sete dl
setne al
cmp r14d, 9
setg bl
cmp r14d, 0xa
setl cl
and cl, al
and dl, bl
or dl, cl
mov ecx, ebx
and cl, al
xor bl, al
or bl, cl
mov eax, ebx
xor al, 1
cmp dl, al
jne 0x1800030c7
xor dl, 1
or dl, bl
xor dl, 1
jne 0x1800030c7
nop word [rax + rax]
mov eax, dword [r15]
mov rcx, qword [r8 + rax]
movabs rdx, 0x64a4b8fbece65dad
mov rsi, rdx
sub rcx, rdx
add rcx, r11
movabs rdx, 0x8e325d2a756ee6a1
add rcx, rdx
add rcx, rsi
sub rcx, rdx
mov qword [r8 + rax], rcx
mov eax, dword [r15]
mov rcx, r8
sub rcx, r10
add rcx, r9
add rcx, r10
add rcx, rax
add rcx, r13
sub rcx, r9
sub rcx, r13
add qword [rcx], r11
mov edi, dword [0x180023460]
mov r14d, dword [0x180023464]
lea eax, [rdi - 1]
imul eax, edi
mov ecx, eax
not ecx
and eax, 0x9baa547b
mov edx, ecx
and edx, 0x6455ab84
or edx, eax
xor edx, 0x6455ab85
and ecx, 0xfffffffe
or ecx, edx
cmp ecx, 0xffffffff
sete al
cmp r14d, 0xa
setl dl
mov ebx, edx
xor bl, al
or dl, al
xor dl, 1
or dl, bl
xor dl, 1
test bl, dl
jne 0x1800030c7
xor bl, dl
je 0x180003020
movabs rax, 0xd360d3e4e3cbdf58
sub rbp, rax
movabs rcx, 0x69dc96f0212c3afc
sub rbp, rcx
add rbp, rax
add rbp, rcx
add rbp, 1
lea eax, [rdi - 1]
imul eax, edi
mov ecx, eax
not ecx
and ecx, 0xfffffffe
xor eax, 1
or eax, ecx
cmp eax, 0xffffffff
sete al
cmp r14d, 0xa
setl dl
mov ebx, edx
xor bl, al
or dl, al
xor dl, 1
or dl, bl
mov eax, edx
xor al, 1
cmp bl, al
jne 0x180002e7a
xor bl, 1
or bl, dl
xor bl, 1
jne 0x180002e7a
jmp 0x1800031c0
test dl, dl
je 0x180003140
jmp 0x180002d93
lea eax, [rdi - 1]
imul eax, edi
mov ecx, eax
not ecx
and ecx, 0x5b13b23f
and eax, 0xa4ec4dc0
or eax, ecx
mov ecx, eax
xor ecx, 0xa4ec4dc0
and ecx, 0xfffffffe
xor eax, 0x5b13b23e
or eax, ecx
cmp eax, 0xffffffff
setne al
cmp r14d, 9
setg dl
cmp r14d, 0xa
setl bl
xor bl, al
xor bl, 1
mov ecx, edx
and cl, al
xor dl, al
or dl, cl
xor dl, 1
test bl, dl
jne 0x180002d0b
xor bl, dl
jne 0x180002d0b
nop word cs:[rax + rax]
jmp 0x1800031b0
jmp 0x1800031c0
lea eax, [rdi - 1]
imul eax, edi
mov ecx, eax
not ecx
and ecx, 0x6816c9b4
and eax, 0x97e9364b
or eax, ecx
mov ecx, eax
xor ecx, 0x97e9364b
xor eax, 0x8104820
and eax, 0xcd17e23
mov edx, ecx
and edx, 0xf32e81dc
or edx, eax
xor edx, 0xf32e81dd
and ecx, 0xfffffffe
or ecx, edx
mov eax, ecx
not eax
and eax, 0x309ccb5d
and ecx, 0xcf6334a2
or ecx, eax
xor ecx, 0xcf6334a2
sete cl
setne al
cmp r14d, 9
setg dl
cmp r14d, 0xa
setl bl
and bl, al
and cl, dl
or cl, bl
mov ebx, edx
and bl, al
xor dl, al
or dl, bl
mov eax, edx
xor al, 1
cmp cl, al
jne 0x180003252
xor cl, 1
or cl, dl
xor cl, 1
jne 0x180003252
nop dword [rax + rax]
jmp 0x180003250
mov rcx, qword [rsp + 0x28]
lea rdx, [rcx + 2]
mov rax, qword [rsp + 0x30]
mov ebp, dword [rax + 0x90]
add rbp, rcx
mov esi, dword [rbp + 0xc]
test rsi, rsi
je 0x180004880
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x68], rdx
add rsi, qword [rsp + 0x28]
mov qword [rsp + 0x38], rsi
mov ecx, dword [0x180023470]
mov eax, dword [0x180023474]
lea edx, [rcx - 1]
imul edx, ecx
mov ecx, edx
not ecx
and ecx, 0x41f60ae4
and edx, 0xbe09f51b
or edx, ecx
mov ecx, edx
xor ecx, 0xbe09f51b
xor edx, 0x41b00a84
and edx, 0x67b84e86
mov ebp, ecx
and ebp, 0x9847b179
or ebp, edx
xor ebp, 0x9847b178
and ecx, 0xfffffffe
or ecx, ebp
mov edx, ecx
not edx
and edx, 0x555016f9
and ecx, 0xaaafe906
or ecx, edx
xor ecx, 0xaaafe906
sete r8b
setne dl
cmp eax, 9
setg bl
cmp eax, 0xa
setl al
mov ecx, eax
xor cl, dl
and cl, al
and bl, r8b
and al, dl
or al, bl
mov edx, ecx
and dl, al
xor al, cl
or al, dl
jne 0x180003340
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
test al, al
je 0x18000332a
mov rcx, qword gs:[0x60]
mov r8, qword [rcx + 0x18]
test al, al
je 0x180003318
add r8, 0x10
mov eax, dword [0x180023468]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0xb033f8d7
mov edx, eax
and edx, 0x4fcc0728
or edx, ecx
xor edx, 0x4fcc0729
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
sete al
cmp dword [0x18002346c], 0xa
setl r9b
xor al, r9b
xor al, 1
and r9b, al
xor r9b, 1
mov ecx, r9d
xor cl, al
or r9b, al
xor r9b, 1
or r9b, cl
mov eax, dword [0x180023478]
mov ecx, dword [0x18002347c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
mov ebp, eax
and ebp, 0xfffffffe
and edx, 1
or edx, ebp
xor eax, edx
test eax, edx
sete al
setne bl
cmp ecx, 0xa
setl r14b
cmp ecx, 9
setg cl
and al, cl
or cl, bl
and r14b, bl
or r14b, al
xor r14b, 1
mov eax, ecx
xor al, r14b
or r14b, cl
xor r14b, 1
or r14b, al
mov r10, r8
mov r10, qword [r10]
cmp r10, r8
je 0x180003507
test r9b, r9b
je 0x180004856
mov rbp, r12
cmp byte [rbp + 1], 0
lea rbp, [rbp + 1]
jne 0x18000341b
movabs rax, 0xb159e713e3546214
sub rbp, rax
movabs rcx, 0x34fa7dc47e23a88e
sub rbp, rcx
add rbp, rax
movabs rax, 0xa1d15c9979e9d858
sub rbp, rax
sub rbp, qword [rsp + 0x40]
add rbp, rax
add rbp, rcx
je 0x18000350c
mov r11, qword [r10 + 0x60]
xor edi, edi
mov r13, rbp
movzx eax, word [r11 + rdi*2]
movsx ebx, byte [r12 + rdi + 1]
lea ecx, [rax - 0x41]
cmp cx, 0x19
ja 0x18000348c
test r14b, 1
je 0x180004840
lea ecx, [rax + 0x20]
jmp 0x180003498
mov ecx, eax
test r14b, 1
je 0x180004850
lea edx, [rbx - 0x41]
lea esi, [rbx + 0x20]
cmp dl, 0x1a
cmovae esi, ebx
sub ecx, esi
setne dl
sete sil
test ax, ax
sete bl
setne al
and dl, al
or al, sil
mov r15d, eax
xor r15b, 1
and bl, sil
or bl, dl
cmp r15b, bl
jne 0x1800034fd
xor bl, 1
or al, bl
xor al, 1
jne 0x1800034fd
movabs rcx, 0x2e77052c882088fa
mov rax, rcx
sub rax, r13
not rax
add rax, rcx
add rdi, 1
mov r13, rax
cmp rbp, rdi
jne 0x180003469
jmp 0x180003516
test ecx, ecx
jne 0x180003403
jmp 0x180003516
xor r9d, r9d
jmp 0x18000351a
test r14b, 1
je 0x180004866
mov r9, qword [r10 + 0x30]
mov eax, dword [0x180023480]
mov ecx, dword [0x180023484]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
mov ebp, eax
and ebp, 0xfffffffe
and edx, 1
or edx, ebp
not edx
or edx, eax
cmp edx, 0xffffffff
sete r8b
setne bl
cmp ecx, 9
setg dl
cmp ecx, 0xa
setl al
mov ecx, eax
xor cl, bl
and cl, al
and dl, r8b
and al, bl
or al, dl
mov edx, ecx
and dl, al
xor al, cl
or al, dl
mov r15, qword [rsp + 0x70]
test al, al
je 0x18000356e
movsxd rax, dword [r9 + 0x3c]
mov edi, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rdi + 0x1c]
mov eax, dword [0x180023488]
mov edx, dword [0x18002348c]
lea ebp, [rax - 1]
imul ebp, eax
mov eax, ebp
not eax
mov ebx, eax
and ebx, 0x5e36f184
and ebp, 0xa1c90e7b
or ebp, ebx
xor ebp, 0x5e36f185
or ebp, eax
cmp ebp, 0xffffffff
setne r10b
sete cl
cmp edx, 0xa
setl al
cmp edx, 9
setg bl
mov edx, eax
or al, cl
and cl, bl
and dl, r10b
or dl, cl
xor bl, r10b
xor al, 1
or al, bl
mov ecx, eax
xor cl, 1
cmp dl, cl
movabs r13, 0xc10fc0f587dd2a86
jne 0x1800035fa
xor dl, 1
or dl, al
xor dl, 1
je 0x18000485a
add r8, r9
mov ebp, dword [r9 + rdi + 0x20]
mov esi, dword [r9 + rdi + 0x24]
add rbp, r9
add rsi, r9
mov ebx, dword [rbp]
add rbx, r9
mov rdi, r15
movzx r14d, byte [rdi]
movzx r11d, byte [rbx]
cmp r14b, r11b
sete r10b
setne dl
test r14b, r14b
setne cl
sete al
and dl, al
and cl, r10b
or cl, dl
xor al, cl
cmp al, 1
jne 0x18000364a
add rdi, 1
add rbx, 1
test cl, cl
jne 0x180003616
cmp r14b, r11b
je 0x180003659
add rsi, 2
add rbp, 4
jmp 0x18000360d
movzx eax, word [rsi]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, qword [rsp + 0x38]
call r9
mov esi, dword [0x180023460]
mov edi, dword [0x180023464]
lea edx, [rsi - 1]
imul edx, esi
mov ebp, edx
not ebp
and ebp, 0xac9c987
and edx, 0xf5363678
or edx, ebp
mov ebp, edx
xor ebp, 0xf5363678
xor edx, 0x8814105
and edx, 0xfdb7677d
mov ebx, ebp
and ebx, 0x2489882
or ebx, edx
xor ebx, 0x2489883
and ebp, 0xfffffffe
or ebp, ebx
mov edx, ebp
not edx
and edx, 0x64a286c6
and ebp, 0x9b5d7939
or ebp, edx
xor ebp, 0x9b5d7939
setne r8b
sete cl
cmp edi, 0xa
setl dl
cmp edi, 9
setg bl
and cl, bl
and dl, r8b
or dl, cl
mov ecx, ebx
and cl, r8b
xor bl, r8b
or bl, cl
mov ecx, ebx
xor cl, 1
cmp dl, cl
jne 0x180003acd
xor dl, 1
or dl, bl
xor dl, 1
jne 0x180003acd
mov eax, dword [0x180023470]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
mov edx, eax
and edx, 0xfffffffe
and ecx, 1
or ecx, edx
xor eax, ecx
test eax, ecx
sete bl
cmp dword [0x180023474], 0xa
setl dl
xor bl, dl
mov ecx, ebx
xor cl, 1
and dl, cl
mov eax, edx
xor al, 1
xor dl, bl
or al, cl
xor al, 1
or al, dl
jne 0x180003779
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
test al, al
je 0x180003763
mov rcx, qword gs:[0x60]
mov r8, qword [rcx + 0x18]
test al, al
je 0x180003751
add r8, 0x10
mov eax, dword [0x180023468]
mov ecx, dword [0x18002346c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
mov ebp, eax
and ebp, 0xe64ef37a
and edx, 0x19b10c85
or edx, ebp
xor edx, 0x19b10c84
xor eax, edx
test eax, edx
sete al
setne dl
cmp ecx, 0xa
setl r9b
cmp ecx, 9
setg cl
and al, cl
or cl, dl
xor cl, 1
and r9b, dl
or r9b, al
mov eax, ecx
and al, r9b
xor r9b, cl
or r9b, al
mov ecx, dword [0x180023478]
mov eax, dword [0x18002347c]
lea edx, [rcx - 1]
imul edx, ecx
mov ecx, edx
not ecx
and ecx, 0x2efd97e1
and edx, 0xd102681e
or edx, ecx
mov ebp, edx
xor ebp, 0xd102681e
xor edx, 0xae994a0
and edx, 0x1ae99cae
mov ecx, ebp
and ecx, 0xe5166351
or ecx, edx
xor ecx, 0xe5166350
and ebp, 0xfffffffe
or ebp, ecx
cmp ebp, 0xffffffff
sete r14b
setne cl
cmp eax, 9
setg bl
cmp eax, 0xa
setl al
and al, cl
and r14b, bl
or r14b, al
mov eax, ebx
xor al, cl
and bl, cl
or bl, al
mov eax, ebx
xor al, r14b
xor r14b, 1
xor al, 1
or r14b, bl
xor r14b, 1
or r14b, al
mov r10, r8
mov r10, qword [r10]
cmp r10, r8
je 0x180003970
test r9b, r9b
je 0x180004858
mov rbp, r12
cmp byte [rbp + 1], 0
lea rbp, [rbp + 1]
jne 0x18000388c
movabs rax, 0x7f4e03063f33b5da
mov rcx, rax
sub rbp, rax
movabs rax, 0x84290d69165a99ee
add rbp, rax
sub rbp, qword [rsp + 0x40]
sub rbp, rax
movabs rax, 0xeb711388f8b817f7
sub rbp, rax
add rbp, rcx
add rbp, rax
je 0x180003975
mov r11, qword [r10 + 0x60]
xor edi, edi
mov rsi, rbp
movzx r15d, word [r11 + rdi*2]
movsx ebx, byte [r12 + rdi + 1]
lea ecx, [r15 - 0x41]
cmp cx, 0x19
ja 0x180003902
test r14b, 1
je 0x180004852
lea ecx, [r15 + 0x20]
jmp 0x18000390f
mov ecx, r15d
test r14b, 1
je 0x180004854
lea edx, [rbx - 0x41]
lea eax, [rbx + 0x20]
cmp dl, 0x1a
cmovae eax, ebx
sub ecx, eax
sete dl
test r15w, r15w
setne al
mov ebx, eax
or bl, dl
xor bl, 1
xor al, dl
test bl, al
jne 0x180003966
xor bl, al
jne 0x180003966
add rsi, r13
movabs rcx, 0x7a0c23157cb1754a
mov rax, rcx
sub rax, rsi
add rax, r13
not rax
add rax, rcx
add rdi, 1
mov rsi, rax
cmp rbp, rdi
jne 0x1800038dd
jmp 0x18000397f
test ecx, ecx
jne 0x180003874
jmp 0x18000397f
xor r9d, r9d
jmp 0x180003983
test r14b, 1
je 0x18000486e
mov r9, qword [r10 + 0x30]
mov ecx, dword [0x180023480]
mov eax, dword [0x180023484]
lea edx, [rcx - 1]
imul edx, ecx
mov ecx, edx
not ecx
and edx, 0x73a44d1a
mov ebp, ecx
and ebp, 0x8c5bb2e5
or ebp, edx
xor ebp, 0x8c5bb2e4
and ecx, 0xfffffffe
or ecx, ebp
mov edx, ecx
not edx
and edx, 0xdedff30c
and ecx, 0x21200cf3
or ecx, edx
xor ecx, 0x21200cf3
sete r8b
setne dl
cmp eax, 9
setg bl
cmp eax, 0xa
setl al
mov ecx, eax
xor cl, dl
and cl, al
and bl, r8b
and al, dl
or al, bl
mov edx, ecx
and dl, al
xor al, cl
or al, dl
test al, al
je 0x1800039f4
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
mov eax, dword [0x180023488]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
and eax, 0xa829bd96
and edx, 0x57d64269
or edx, eax
mov eax, edx
xor eax, 0x57d64268
and eax, 0xfffffffe
xor edx, 0xa829bd97
or edx, eax
cmp edx, 0xffffffff
sete al
cmp dword [0x18002348c], 0xa
setl bl
xor al, bl
mov edx, eax
not dl
and dl, bl
test dl, al
jne 0x180003a5c
xor dl, al
je 0x18000485c
add r8, r9
mov ebp, dword [r9 + rcx + 0x20]
mov esi, dword [r9 + rcx + 0x24]
add rbp, r9
add rsi, r9
mov r11, qword [rsp + 0x70]
mov ebx, dword [rbp]
add rbx, r9
mov rdi, r11
movzx eax, byte [rdi]
movzx r10d, byte [rbx]
cmp al, r10b
sete cl
test al, al
sete dl
xor cl, dl
xor dl, cl
cmp dl, 1
jne 0x180003aa4
add rdi, 1
add rbx, 1
test cl, cl
jne 0x180003a7d
cmp al, r10b
je 0x180003ab3
add rsi, 2
add rbp, 4
jmp 0x180003a74
movzx eax, word [rsi]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rsi, qword [rsp + 0x38]
mov rcx, rsi
call r9
jmp 0x180003289
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax]
mov edx, dword [rax + 0x10]
mov rax, qword [rsp + 0x28]
add rdx, rax
mov qword [rsp + 0x48], rdx
add rcx, rax
mov qword [rsp + 0x38], rcx
lea r8d, [rsi - 1]
imul r8d, esi
mov esi, r8d
not esi
mov eax, r8d
and eax, 0x2845276c
mov ecx, esi
and ecx, 0xd7bad893
or ecx, eax
xor ecx, 0xd7bad892
and esi, 0xfffffffe
or ecx, esi
cmp ecx, 0xffffffff
sete dl
cmp edi, 0xa
setl cl
xor dl, cl
mov eax, edx
xor al, 1
and cl, al
mov ebx, ecx
xor bl, 1
xor cl, dl
or bl, al
xor bl, 1
or bl, cl
test bl, bl
je 0x180003b40
mov rax, qword [rsp + 0x38]
mov rbp, qword [rax]
test rbp, rbp
je 0x1800047cf
mov rax, rbp
not rax
mov rcx, rax
and rcx, 0xffffffffffff0000
movzx edx, bp
or rdx, rcx
not rdx
or rdx, rax
mov rax, qword [rsp + 0x68]
add rax, rbp
test rbp, rbp
not rdx
cmovns rdx, rax
mov qword [rsp + 0x78], rdx
mov eax, dword [0x180023470]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and ecx, 0x882f8458
mov edx, eax
and edx, 0x77d07ba7
or edx, ecx
xor edx, 0x77d07ba6
and eax, 0xfffffffe
or eax, edx
mov ecx, eax
not ecx
and ecx, 0x9b581f71
and eax, 0x64a7e08e
or eax, ecx
xor eax, 0x64a7e08e
setne cl
cmp dword [0x180023474], 9
setg al
mov edx, eax
or dl, cl
xor al, cl
mov ecx, edx
xor cl, al
xor al, 1
xor cl, 1
or al, dl
xor al, 1
or al, cl
jne 0x180003c15
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
test al, al
je 0x180003bff
mov rcx, qword gs:[0x60]
mov r8, qword [rcx + 0x18]
test al, al
je 0x180003bed
add r8, 0x10
mov eax, dword [0x180023468]
mov ecx, dword [0x18002346c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
mov ebp, eax
and ebp, 0x48aef551
and edx, 0xb7510aae
or edx, ebp
xor edx, 0x48aef550
or edx, eax
cmp edx, 0xffffffff
sete al
setne dl
cmp ecx, 9
setg r9b
cmp ecx, 0xa
setl cl
and cl, dl
and al, r9b
or al, cl
mov ecx, r9d
and cl, dl
xor r9b, dl
or r9b, cl
xor r9b, 1
mov ecx, eax
and cl, r9b
xor r9b, al
or r9b, cl
mov eax, dword [0x180023478]
mov ecx, dword [0x18002347c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
and eax, 0xfffffffe
xor edx, 1
or edx, eax
mov eax, edx
not eax
and eax, 0xfa6fbef3
and edx, 0x590410c
or edx, eax
xor edx, 0x590410c
sete al
setne bl
cmp ecx, 0xa
setl r14b
cmp ecx, 9
setg cl
xor cl, bl
mov ebx, r14d
xor bl, al
or r14b, al
xor r14b, 1
or r14b, bl
xor r14b, 1
mov eax, ecx
and al, r14b
xor r14b, cl
or r14b, al
mov r10, r8
mov r10, qword [r10]
cmp r10, r8
je 0x180003dd1
test r9b, r9b
je 0x18000486c
mov rbp, r12
cmp byte [rbp + 1], 0
lea rbp, [rbp + 1]
jne 0x180003d12
movabs rax, 0x7f9ed6c696738036
sub rbp, rax
movabs rcx, 0x98e36219825fc63
sub rbp, rcx
add rbp, rax
sub rbp, qword [rsp + 0x40]
add rbp, rcx
je 0x180003dd6
mov r11, qword [r10 + 0x60]
xor edi, edi
mov r15, rbp
movzx eax, word [r11 + rdi*2]
movsx ebx, byte [r12 + rdi + 1]
lea ecx, [rax - 0x41]
cmp cx, 0x19
ja 0x180003d73
test r14b, 1
je 0x18000485e
lea ecx, [rax + 0x20]
jmp 0x180003d7f
mov ecx, eax
test r14b, 1
je 0x180004860
lea edx, [rbx - 0x41]
lea esi, [rbx + 0x20]
cmp dl, 0x1a
cmovae esi, ebx
sub ecx, esi
setne bl
sete sil
test ax, ax
setne al
sete dl
and dl, sil
and bl, al
or bl, dl
mov edx, eax
and dl, sil
xor al, sil
or al, dl
xor al, 1
test bl, al
jne 0x180003dc7
xor bl, al
jne 0x180003dc7
add r15, 0xffffffffffffffff
add rdi, 1
cmp rbp, rdi
jne 0x180003d50
jmp 0x180003de0
test ecx, ecx
jne 0x180003cfa
jmp 0x180003de0
xor r8d, r8d
jmp 0x180003de4
test r14b, 1
je 0x18000487a
mov r8, qword [r10 + 0x30]
mov eax, dword [0x180023480]
mov ecx, dword [0x180023484]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
and eax, 0xfffffffe
xor edx, 1
or edx, eax
mov eax, edx
not eax
and eax, 0xfa25d823
and edx, 0x5da27dc
or edx, eax
xor edx, 0x5da27dc
sete dl
setne bl
cmp ecx, 0xa
setl al
cmp ecx, 9
setg cl
or cl, bl
xor cl, 1
xor al, dl
mov edx, ecx
and dl, al
xor al, cl
or al, dl
test al, al
je 0x180003e3a
movsxd rax, dword [r8 + 0x3c]
mov esi, dword [r8 + rax + 0x88]
mov r9d, dword [r8 + rsi + 0x1c]
mov eax, dword [0x180023488]
mov edx, dword [0x18002348c]
lea ebp, [rax - 1]
imul ebp, eax
mov eax, ebp
not eax
and eax, 0xbc543e84
and ebp, 0x43abc17b
or ebp, eax
mov eax, ebp
xor eax, 0x43abc17b
xor ebp, 0x90000c80
and ebp, 0xd088ccd1
mov ebx, eax
and ebx, 0x2f77332e
or ebx, ebp
xor ebx, 0x2f77332f
and eax, 0xfffffffe
or eax, ebx
mov ebp, eax
not ebp
and ebp, 0x57193e46
and eax, 0xa8e6c1b9
or eax, ebp
xor eax, 0xa8e6c1b9
setne bl
sete cl
cmp edx, 0xa
setl al
cmp edx, 9
setg dl
and cl, dl
and al, bl
or al, cl
mov ecx, edx
and cl, bl
xor dl, bl
or dl, cl
xor dl, 1
test al, dl
jne 0x180003edf
xor al, dl
je 0x180004872
add r9, r8
mov edi, dword [r8 + rsi + 0x20]
mov esi, dword [r8 + rsi + 0x24]
add rdi, r8
add rsi, r8
mov ebp, dword [rdi]
add rbp, r8
mov rbx, qword [rsp + 0x58]
mov r14b, 1
movzx r11d, byte [rbx]
movzx r10d, byte [rbp]
cmp r11b, r10b
setne dl
test r11b, r11b
sete cl
mov eax, ecx
and al, dl
xor cl, dl
or cl, al
jne 0x180003f2d
add rbx, 1
add rbp, 1
test r14b, r14b
je 0x180003f2d
jne 0x180003eff
cmp r11b, r10b
je 0x180003f3c
add rsi, 2
add rdi, 4
jmp 0x180003ef2
movzx eax, word [rsi]
mov eax, dword [r9 + rax*4]
add r8, rax
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call r8
mov rcx, qword [rsp + 0x48]
mov qword [rcx], rax
mov esi, dword [0x180023460]
mov edi, dword [0x180023464]
lea eax, [rsi - 1]
imul eax, esi
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0xef9cc771
and eax, 0x1063388e
or eax, edx
xor eax, 0x1063388f
xor ecx, eax
test ecx, eax
setne al
sete dl
cmp edi, 9
setg bl
xor dl, bl
mov ecx, ebx
and cl, al
xor bl, al
or bl, cl
cmp dl, bl
jne 0x1800047be
or dl, bl
xor dl, 1
jne 0x1800047be
mov eax, dword [0x180023470]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and eax, 0xfffffffe
xor ecx, 1
or ecx, eax
mov eax, ecx
not eax
and eax, 0x708b222d
and ecx, 0x8f74ddd2
or ecx, eax
xor ecx, 0x8f74ddd2
setne cl
cmp dword [0x180023474], 9
setg al
mov edx, eax
or dl, cl
xor dl, 1
xor al, cl
mov ecx, edx
and cl, al
xor al, dl
or al, cl
je 0x180004441
jmp 0x180004469
movzx eax, word [rsi]
mov eax, dword [r10 + rax*4]
add r8, rax
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call r8
mov rcx, qword [rsp + 0x48]
mov qword [rcx], rax
mov eax, dword [0x180023470]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and eax, 0x40a28311
and ecx, 0xbf5d7cee
or ecx, eax
mov eax, ecx
xor eax, 0xbf5d7cee
xor ecx, 0x40820210
and ecx, 0x7eda5258
mov edx, eax
and edx, 0x8125ada7
or edx, ecx
xor edx, 0x8125ada6
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
setne cl
cmp dword [0x180023474], 9
setg al
mov edx, eax
or dl, cl
xor al, cl
mov ecx, edx
xor cl, al
xor al, 1
xor cl, 1
or al, dl
xor al, 1
or al, cl
jne 0x1800040c3
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
test al, al
je 0x1800040ad
mov rcx, qword gs:[0x60]
mov r8, qword [rcx + 0x18]
test al, al
je 0x18000409b
add r8, 0x10
mov eax, dword [0x180023468]
mov ecx, dword [0x18002346c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
and eax, 0xfffffffe
xor edx, 1
or edx, eax
cmp edx, 0xffffffff
sete al
setne dl
cmp ecx, 9
setg bl
cmp ecx, 0xa
setl r9b
mov ecx, r9d
xor cl, dl
and cl, r9b
and bl, al
and r9b, dl
or r9b, bl
mov eax, ecx
xor al, 1
xor cl, r9b
xor r9b, 1
or r9b, al
xor r9b, 1
or r9b, cl
mov eax, dword [0x180023478]
mov ecx, dword [0x18002347c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
mov ebp, eax
and ebp, 0x10b44ec7
and edx, 0xef4bb138
or edx, ebp
xor edx, 0x10b44ec6
or edx, eax
cmp edx, 0xffffffff
sete al
setne dl
cmp ecx, 0xa
setl r15b
cmp ecx, 9
setg cl
and al, cl
or cl, dl
xor cl, 1
and r15b, dl
or r15b, al
mov eax, ecx
and al, r15b
xor r15b, cl
or r15b, al
mov r10, r8
mov r10, qword [r10]
cmp r10, r8
je 0x180004286
test r9b, 1
je 0x180004874
mov rbp, r12
cmp byte [rbp + 1], 0
lea rbp, [rbp + 1]
jne 0x1800041a9
movabs rax, 0xfdef3a6d1807ade1
sub rbp, rax
movabs rcx, 0xa3ab4b203beb9a94
sub rbp, rcx
add rbp, rax
sub rbp, qword [rsp + 0x40]
add rbp, rcx
je 0x18000428b
mov r11, qword [r10 + 0x60]
xor r13d, r13d
mov rsi, rbp
movzx r14d, word [r11 + r13*2]
movsx ecx, byte [r12 + r13 + 1]
lea edx, [r14 - 0x41]
cmp dx, 0x19
ja 0x18000420c
test r15b, r15b
je 0x180004868
lea edi, [r14 + 0x20]
jmp 0x180004218
mov edi, r14d
test r15b, r15b
je 0x18000486a
lea edx, [rcx - 0x41]
lea eax, [rcx + 0x20]
cmp dl, 0x1a
cmovae eax, ecx
sub edi, eax
setne dl
sete cl
test r14w, r14w
setne al
sete bl
and bl, cl
and dl, al
or dl, bl
mov ebx, eax
and bl, cl
xor al, cl
or al, bl
mov ecx, eax
xor cl, 1
cmp dl, cl
jne 0x18000427c
xor dl, 1
or dl, al
xor dl, 1
jne 0x18000427c
movabs rax, 0xca061b90ed732b66
add rsi, rax
sub rax, rsi
not rax
add r13, 1
mov rsi, rax
cmp rbp, r13
jne 0x1800041e8
jmp 0x180004294
test edi, edi
jne 0x180004190
jmp 0x180004294
xor r8d, r8d
jmp 0x180004298
test r15b, r15b
je 0x18000487e
mov r8, qword [r10 + 0x30]
mov eax, dword [0x180023480]
mov ecx, dword [0x180023484]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
mov ebp, eax
and ebp, 0xfffffffe
and edx, 1
or edx, ebp
not edx
or edx, eax
cmp edx, 0xffffffff
setne al
sete dl
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
and cl, dl
and al, bl
or al, cl
mov ecx, ebx
xor cl, dl
or bl, dl
xor bl, 1
or bl, cl
xor al, 1
mov ecx, eax
xor cl, bl
or al, bl
xor al, 1
or al, cl
test al, 1
je 0x1800042ee
movsxd rax, dword [r8 + 0x3c]
mov esi, dword [r8 + rax + 0x88]
mov r9d, dword [r8 + rsi + 0x1c]
mov eax, dword [0x180023488]
mov edx, dword [0x18002348c]
lea ebp, [rax - 1]
imul ebp, eax
mov eax, ebp
not eax
and eax, 0xd13b4308
and ebp, 0x2ec4bcf7
or ebp, eax
mov eax, ebp
xor eax, 0x2ec4bcf6
and eax, 0xfffffffe
xor ebp, 0xd13b4309
or ebp, eax
cmp ebp, 0xffffffff
setne bl
sete cl
cmp edx, 0xa
setl al
cmp edx, 9
setg dl
and cl, dl
and al, bl
or al, cl
mov ecx, edx
and cl, bl
xor dl, bl
or dl, cl
xor dl, 1
test al, dl
jne 0x18000436a
xor al, dl
je 0x180004878
add r9, r8
mov edi, dword [r8 + rsi + 0x20]
mov esi, dword [r8 + rsi + 0x24]
add rdi, r8
add rsi, r8
mov ebp, dword [rdi]
add rbp, r8
mov rbx, qword [rsp + 0x58]
mov r14b, 1
movzx r11d, byte [rbx]
movzx r10d, byte [rbp]
cmp r11b, r10b
sete dl
test r11b, r11b
setne cl
mov eax, ecx
xor al, dl
or cl, dl
xor cl, 1
or cl, al
jne 0x1800043bb
add rbx, 1
add rbp, 1
test r14b, r14b
je 0x1800043bb
jne 0x18000438a
cmp r11b, r10b
je 0x1800043ca
add rsi, 2
add rdi, 4
jmp 0x18000437d
movzx eax, word [rsi]
mov eax, dword [r9 + rax*4]
add r8, rax
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call r8
mov rcx, qword [rsp + 0x48]
mov qword [rcx], rax
mov eax, dword [0x180023460]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
mov edx, eax
and edx, 0xfffffffe
and ecx, 1
or ecx, edx
not ecx
or ecx, eax
cmp ecx, 0xffffffff
sete cl
cmp dword [0x180023464], 0xa
setl al
mov edx, eax
xor dl, cl
or al, cl
xor al, 1
or al, dl
mov ecx, edx
xor cl, 1
cmp cl, al
jne 0x180003b88
or cl, al
xor cl, 1
je 0x180003fb5
jmp 0x180003b88
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
mov rcx, qword gs:[0x60]
test al, al
je 0x180004453
mov rcx, qword gs:[0x60]
mov r8, qword [rcx + 0x18]
test al, al
je 0x180004441
add r8, 0x10
mov eax, dword [0x180023468]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and eax, 0xdfbfe2f1
and ecx, 0x20401d0e
or ecx, eax
mov eax, ecx
xor eax, 0x20401d0e
and eax, 0xfffffffe
xor ecx, 0xdfbfe2f0
or ecx, eax
cmp ecx, 0xffffffff
sete al
cmp dword [0x18002346c], 0xa
setl cl
xor al, cl
mov r9d, eax
not r9b
and r9b, cl
mov ecx, r9d
and cl, al
xor r9b, al
or r9b, cl
mov eax, dword [0x180023478]
mov ecx, dword [0x18002347c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
not eax
and eax, 0xfffffffe
xor edx, 1
or edx, eax
cmp edx, 0xffffffff
setne r15b
sete al
cmp ecx, 0xa
setl dl
cmp ecx, 9
setg cl
and cl, al
and r15b, dl
or r15b, cl
mov ecx, edx
xor cl, al
or dl, al
xor dl, 1
or dl, cl
xor r15b, 1
mov eax, r15d
xor al, dl
or r15b, dl
xor r15b, 1
or r15b, al
mov r10, r8
mov r10, qword [r10]
cmp r10, r8
je 0x180004663
test r9b, r9b
je 0x180004870
mov rsi, r12
cmp byte [rsi + 1], 0
lea rsi, [rsi + 1]
jne 0x180004548
movabs rax, 0xe18f61ab8718e035
add rsi, rax
movabs rcx, 0x3338daed8f1c8508
sub rsi, rcx
sub rsi, rax
movabs rax, 0xa4818792f7d1ae9c
add rsi, rax
sub rsi, qword [rsp + 0x40]
sub rsi, rax
movabs rax, 0xba358f99592002dd
sub rsi, rax
add rsi, rcx
add rsi, rax
je 0x180004668
mov r11, qword [r10 + 0x60]
xor ebp, ebp
mov rbx, rsi
movzx r14d, word [r11 + rbp*2]
movsx ecx, byte [r12 + rbp + 1]
lea edx, [r14 - 0x41]
cmp dx, 0x19
ja 0x1800045cb
test r15b, 1
je 0x180004862
lea edi, [r14 + 0x20]
jmp 0x1800045d8
mov edi, r14d
test r15b, 1
je 0x180004864
lea edx, [rcx - 0x41]
lea eax, [rcx + 0x20]
cmp dl, 0x1a
cmovae eax, ecx
sub edi, eax
sete cl
setne dl
test r14w, r14w
sete al
setne r14b
or al, dl
xor dl, r14b
xor cl, r14b
xor al, 1
or al, cl
cmp dl, al
jne 0x180004659
or dl, al
xor dl, 1
jne 0x180004659
movabs rdx, 0x4cd4f58e29cb779
add rbx, rdx
movabs rax, 0x928414d3aaaf152b
mov rcx, rax
add rbx, rax
mov rax, rdx
sub rax, rbx
movabs rdx, 0x24751a59b71c1d6e
add rax, rdx
add rax, rcx
not rax
add rax, rdx
add rbp, 1
mov rbx, rax
cmp rsi, rbp
jne 0x1800045a6
jmp 0x180004672
test edi, edi
jne 0x180004530
jmp 0x180004672
xor r8d, r8d
jmp 0x180004676
test r15b, 1
je 0x18000487c
mov r8, qword [r10 + 0x30]
mov eax, dword [0x180023480]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and eax, 0xe90278cf
and ecx, 0x16fd8730
or ecx, eax
mov eax, ecx
xor eax, 0x16fd8730
xor ecx, 0x20026041
and ecx, 0x34be6151
mov edx, eax
and edx, 0xcb419eae
or edx, ecx
xor edx, 0xcb419eaf
and eax, 0xfffffffe
or eax, edx
cmp eax, 0xffffffff
setne cl
cmp dword [0x180023484], 9
setg al
mov edx, eax
or dl, cl
xor al, cl
mov ecx, edx
xor cl, al
xor al, 1
xor cl, 1
or al, dl
xor al, 1
or al, cl
test al, al
je 0x1800046e0
movsxd rax, dword [r8 + 0x3c]
mov esi, dword [r8 + rax + 0x88]
mov r10d, dword [r8 + rsi + 0x1c]
mov eax, dword [0x180023488]
mov ebp, dword [0x18002348c]
lea ebx, [rax - 1]
imul ebx, eax
mov edx, ebx
not edx
and ebx, 0x87497e5b
mov eax, edx
and eax, 0x78b681a4
or eax, ebx
xor eax, 0x78b681a5
and edx, 0xfffffffe
or edx, eax
cmp edx, 0xffffffff
sete bl
setne r9b
cmp ebp, 0xa
setl dl
cmp ebp, 9
setg al
and bl, al
or al, r9b
mov ecx, eax
xor cl, 1
and dl, r9b
or dl, bl
cmp cl, dl
jne 0x18000475a
xor dl, 1
or al, dl
xor al, 1
je 0x180004876
add r10, r8
mov edi, dword [r8 + rsi + 0x20]
mov esi, dword [r8 + rsi + 0x24]
add rdi, r8
add rsi, r8
mov ebp, dword [rdi]
add rbp, r8
mov rbx, qword [rsp + 0x58]
mov r14b, 1
movzx r11d, byte [rbx]
movzx r9d, byte [rbp]
cmp r11b, r9b
sete dl
test r11b, r11b
setne cl
mov eax, ecx
xor al, dl
or cl, dl
xor cl, 1
or cl, al
jne 0x1800047ab
add rbx, 1
add rbp, 1
test r14b, r14b
je 0x1800047ab
jne 0x18000477a
cmp r11b, r9b
je 0x18000400d
add rsi, 2
add rdi, 4
jmp 0x18000476d
add qword [rsp + 0x38], 8
add qword [rsp + 0x48], 8
jmp 0x180003af4
mov rbp, qword [rsp + 0x50]
add rbp, 0x14
xor r8d, 1
or esi, r8d
mov eax, esi
not eax
and eax, 0xa6ead17d
and esi, 0x59152e82
or esi, eax
xor esi, 0x59152e82
setne r8b
sete bl
cmp edi, 0xa
setl cl
cmp edi, 9
setg dl
mov eax, ecx
or cl, bl
and bl, dl
and al, r8b
or al, bl
xor dl, r8b
xor cl, 1
or cl, dl
mov edx, ecx
xor dl, 1
cmp al, dl
mov rdx, qword [rsp + 0x68]
jne 0x180003269
xor al, 1
or al, cl
xor al, 1
jne 0x180003269
jmp 0x180003250
jmp 0x180004840
jmp 0x180004850
jmp 0x180004852
jmp 0x180004854
jmp 0x180004856
jmp 0x180004858
jmp 0x18000485a
jmp 0x18000485c
jmp 0x18000485e
jmp 0x180004860
jmp 0x180004862
jmp 0x180004864
jmp 0x180004866
jmp 0x180004868
jmp 0x18000486a
jmp 0x18000486c
jmp 0x18000486e
jmp 0x180004870
jmp 0x180004872
jmp 0x180004874
jmp 0x180004876
jmp 0x180004878
jmp 0x18000487a
jmp 0x18000487c
jmp 0x18000487e
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x28]
mov rcx, qword [rsp + 0x28]
add rcx, rax
movaps xmm6, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm8, xmmword [rsp + 0xb0]
movaps xmm9, xmmword [rsp + 0xc0]
movaps xmm10, xmmword [rsp + 0xd0]
movaps xmm11, xmmword [rsp + 0xe0]
movaps xmm12, xmmword [rsp + 0xf0]
movaps xmm13, xmmword [rsp + 0x100]
movaps xmm14, xmmword [rsp + 0x110]
movaps xmm15, xmmword [rsp + 0x120]
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp rcx