Function at 0x1800117d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push r15
lea rbp, [rsp - 0x398]
sub rsp, 0x498
mov rax, qword [0x18014f1c0]
xor rax, rsp
mov qword [rbp + 0x378], rax
xor eax, eax
mov dword [rbp + 0x80], 0x626f5d53
mov dword [rbp + 0xb1], eax
xorps xmm0, xmm0
xor r15d, r15d
mov dword [rbp + 0x84], 0x6c59695d
mov dword [rbp + 0x88], 0x75447267
mov dword [rbp + 0x8c], 0x70427d45
mov dword [rbp + 0x90], 0x49704a41
mov dword [rbp + 0x94], 0x7d744b72
mov dword [rbp + 0x98], 0xb086b27a
mov dword [rbp + 0x9c], 0x8187808b
mov byte [rbp + 0xa0], 0x56
movups xmmword [rbp + 0xa1], xmm0
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, 0x125e7
movzx edx, byte [rbp + rax + 0x80]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
sub r8b, 0x51
mov byte [rbp + rax + 0x80], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x35
jb 0x180011870
lea rdx, [rbp + 0x80]
xor ecx, ecx
call qword [0x180116508]
test rax, rax
je 0x180012a2d
xor eax, eax
mov dword [rbp + 0x40], 0x40477173
mov qword [rbp + 0x71], rax
xorps xmm0, xmm0
mov word [rbp + 0x79], ax
movabs r9, 0xa68a5fd1800a6e82
mov byte [rbp + 0x7b], al
movups xmmword [rbp + 0x61], xmm0
mov dword [rbp + 0x44], 0x36794575
mov dword [rbp + 0x48], 0x497e344f
mov dword [rbp + 0x4c], 0x5264497d
mov dword [rbp + 0x50], 0x65527c61
mov dword [rbp + 0x54], 0x595e6350
mov dword [rbp + 0x58], 0x72587458
mov dword [rbp + 0x5c], 0x651f5e5b
mov byte [rbp + 0x60], 0x2c
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax + 0x40]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 0x72
mov byte [rbp + rax + 0x40], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x3c
jb 0x180011940
lea rdx, [rbp + 0x40]
xor ecx, ecx
call qword [0x180116508]
mov rcx, rax
call qword [0x1801164e8]
test eax, eax
je 0x180012a2d
call fcn.180004630
test al, al
je 0x180011a4b
xor eax, eax
mov dword [rbp - 0x30], 0x13679eb5
mov dword [rbp - 0x14], eax
movabs r9, 0x9986567d4b47177e
mov word [rbp - 0x10], ax
mov dword [rbp - 0x2c], 0x17536751
mov dword [rbp - 0x28], 0x69685452
mov dword [rbp - 0x24], 0x551e5d5d
mov dword [rbp - 0x20], 0x34f6e6a
mov dword [rbp - 0x1c], 0x464a7257
mov dword [rbp - 0x18], 0xeb384472
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add r8, r9
movzx edx, byte [rbp + rax - 0x30]
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add rcx, rdx
add rcx, r8
sub cl, 0x72
mov byte [rbp + rax - 0x30], cl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x22
jae 0x180012a4a
jmp 0x180011a00
cmp dword [0x1801537c4], r15d
je 0x180011a86
mov rcx, qword [0x1801537d8]
lea rdx, [rbp + 0x2f0]
call qword [0x180116118]
cmp dword [rbp + 0x2f0], 0x103
je 0x180011d2d
mov byte [0x1801537c1], r15b
mov dword [0x1801537c4], r15d
xor eax, eax
mov qword [rsp + 0x4c0], rdi
mov qword [rbp + 0xd5], rax
movabs r9, 0xe4443009187a0378
mov dword [rbp + 0xdd], eax
mov word [rbp + 0xe1], ax
mov dword [rbp + 0xc0], 0xcfd0cee2
mov dword [rbp + 0xc4], 0xcbe6bdcb
mov dword [rbp + 0xc8], 0x392f4029
mov dword [rbp + 0xcc], 0x2e3a280e
mov dword [rbp + 0xd0], 0x264a24fe
mov byte [rbp + 0xd4], 0xc4
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x488], r13
mov qword [rsp + 0x480], r14
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add r8, r9
movzx edx, byte [rbp + rax + 0xc0]
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add rcx, rdx
add rcx, r8
sub cl, 0x48
mov byte [rbp + rax + 0xc0], cl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x23
jb 0x180011b01
xorps xmm0, xmm0
mov qword [rbp + 0x320], r15
mov r13, 0xffffffffffffffff
mov qword [rbp + 0x328], r15
movups xmmword [rbp + 0x310], xmm0
mov r8, r13
lea rax, [rbp + 0xc0]
inc r8
cmp byte [rax + r8], r15b
jne 0x180011b75
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x310]
call fcn.18000e8f0
lea rcx, [rbp + 0x310]
call fcn.180008520
mov r8d, eax
xor edx, edx
mov ecx, 0x1fffff
mov r14d, eax
call qword [0x1801160c0]
mov rdi, rax
test rax, rax
jne 0x180011ddd
call qword [0x180116108]
xor eax, eax
mov dword [rbp + 0x1f0], 0x38343341
mov qword [rbp + 0x206], rax
xorps xmm0, xmm0
mov word [rbp + 0x20e], ax
movabs r9, 0x5f412d2d2293a7ea
movups xmmword [rbp + 0x1f6], xmm0
mov word [rbp + 0x1f4], 0x8936
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add r8, r9
movzx edx, byte [rbp + rax + 0x1f0]
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add rcx, rdx
add rcx, r8
sub cl, 0x66
mov byte [rbp + rax + 0x1f0], cl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x20
jb 0x180011c03
xor eax, eax
mov dword [rbp + 0x1a0], 0xc03f35d6
mov byte [rbp + 0x1c3], al
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b3], xmm0
mov dword [rbp + 0x1a4], 0x4efc422f
movabs r9, 0xc439f9e3b781343b
mov dword [rbp + 0x1a8], 0xfb4e464e
mov dword [rbp + 0x1ac], 0xa396a4a8
mov word [rbp + 0x1b0], 0xb9a7
mov byte [rbp + 0x1b2], 0xd0
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax + 0x1a0]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 0x63
mov byte [rbp + rax + 0x1a0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x24
jb 0x180011cb0
mov r9d, 0x10
lea r8, [rbp + 0x1f0]
lea rdx, [rbp + 0x1a0]
xor ecx, ecx
call qword [0x1801164f0]
lea rcx, [rbp + 0x310]
call fcn.180017340
xor al, al
jmp 0x18001292e
xor eax, eax
mov dword [rbp - 0x60], 0xd2dede3b
mov qword [rbp - 0x44], rax
movabs r9, 0xc3f3ba17bd91174e
mov dword [rbp - 0x3c], eax
mov dword [rbp - 0x5c], 0xde16d0c6
mov dword [rbp - 0x58], 0xd7db15c3
mov dword [rbp - 0x54], 0xdbdfdcce
mov dword [rbp - 0x50], 0xf1eb1dc5
mov dword [rbp - 0x4c], 0xf3e1e4ee
mov dword [rbp - 0x48], 0x4b38e1e1
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop dword [rax + rax]
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add r8, r9
movzx edx, byte [rbp + rax - 0x60]
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add rcx, rdx
add rcx, r8
sub cl, 0x22
mov byte [rbp + rax - 0x60], cl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x28
jb 0x180011d80
xor r9d, r9d
lea r8, [rbp - 0x60]
xor edx, edx
xor ecx, ecx
call qword [0x1801164f0]
mov al, 1
jmp 0x180012946
mov edx, r14d
lea rcx, [rbp + 0x2a0]
call fcn.18000ea00
mov rdx, rax
lea rcx, [rbp + 0x358]
call fcn.18000ed90
lea rcx, [rbp + 0x2a0]
call fcn.180017340
xor eax, eax
mov dword [rsp + 0x60], 0x34340036
mov dword [rsp + 0x79], eax
movabs r9, 0xad709f8ceac9031a
mov word [rsp + 0x7d], ax
mov byte [rsp + 0x7f], al
mov dword [rsp + 0x64], 0xc2043a01
mov dword [rsp + 0x68], 0xccc83bce
mov dword [rsp + 0x6c], 0xc6c6303d
mov dword [rsp + 0x70], 0xc637c330
mov dword [rsp + 0x74], 0xdc2a33c4
mov byte [rsp + 0x78], 0x84
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rsp + rax + 0x60]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 0x4a
mov byte [rsp + rax + 0x60], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x20
jb 0x180011e60
xorps xmm0, xmm0
mov qword [rbp + 0x238], r15
movups xmmword [rbp + 0x228], xmm0
mov qword [rbp + 0x240], r15
lea rax, [rsp + 0x60]
mov r8, r13
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r15b
jne 0x180011ed0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x228]
call fcn.18000e8f0
lea rdx, [rbp + 0x228]
lea rcx, [rbp + 0x338]
call fcn.18000ed90
lea rcx, [rbp + 0x228]
call fcn.180017340
cmp qword [rbp + 0x350], 0xf
lea r8, [rbp + 0x338]
lea rax, [rbp + 0x358]
cmova r8, qword [rbp + 0x338]
cmp qword [rbp + 0x370], 0xf
cmova rax, qword [rbp + 0x358]
sub r8, rax
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180011f53
inc rax
test ecx, ecx
jne 0x180011f40
test edx, edx
je 0x180011ffe
mov rcx, rdi
call qword [0x180116088]
xor eax, eax
mov dword [rbp + 0x10], 0xbfa4be52
mov word [rbp + 0x39], ax
xorps xmm0, xmm0
movups xmmword [rbp + 0x29], xmm0
mov dword [rbp + 0x14], 0xad76b1bb
movabs r9, 0xa5fde492b0a570aa
mov dword [rbp + 0x18], 0xbaadabb9
mov dword [rbp + 0x1c], 0xaa7ea3a3
mov dword [rbp + 0x20], 0xbaafa2b5
mov dword [rbp + 0x24], 0x6ceb6a4
mov byte [rbp + 0x28], 0x64
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add r8, r9
movzx edx, byte [rbp + rax + 0x10]
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add rcx, rdx
add rcx, r8
add cl, 0x5a
mov byte [rbp + rax + 0x10], cl
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x2b
jae 0x180012a64
jmp 0x180011fb3
mov qword [0x1801537d8], rdi
call fcn.180008700
test al, al
jne 0x180012042
cmp byte [0x1801537c1], r15b
je 0x180012042
lea rcx, [rbp + 0x338]
call fcn.180017340
lea rcx, [rbp + 0x358]
call fcn.180017340
lea rcx, [rbp + 0x310]
call fcn.180017340
mov al, 1
jmp 0x18001292e
xor eax, eax
mov qword [rsp + 0x4b0], rbx
mov qword [rbp + 0x123], rax
movabs r9, 0xddf29c35c1d540b3
mov dword [rbp + 0x12b], eax
mov word [rbp + 0x12f], ax
mov byte [rbp + 0x131], al
mov dword [rbp + 0x110], 0xb3f794f3
mov dword [rbp + 0x114], 0xf5ea96b0
mov dword [rbp + 0x118], 0xf0e4f4f1
mov dword [rbp + 0x11c], 0xd1c68cec
mov word [rbp + 0x120], 0xd7d0
mov byte [rbp + 0x122], 0x20
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x4b8], rsi
mov qword [rsp + 0x490], r12
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax + 0x110]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 0x1b
mov byte [rbp + rax + 0x110], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x22
jb 0x1800120c2
lea rdx, [rbp + 0x110]
lea rcx, [0x180151dc0]
call fcn.180018c50
mov rcx, rax
call fcn.180018bc0
mov rsi, r15
mov rbx, r15
movabs r12, 0x7fffffff0000
nop dword [rax + rax]
xorps xmm0, xmm0
lea r8, [rbp + 0x2c0]
mov r9d, 0x30
mov rdx, rbx
mov rcx, rdi
movups xmmword [rbp + 0x2c0], xmm0
movups xmmword [rbp + 0x2d0], xmm0
movups xmmword [rbp + 0x2e0], xmm0
call qword [0x180116218]
mov rcx, qword [rbp + 0x2d8]
test rax, rax
je 0x18001219e
cmp dword [rbp + 0x2d0], 0x80
jne 0x18001219e
cmp dword [rbp + 0x2e8], 0x40000
jne 0x18001219e
cmp rcx, 0x1000
je 0x1800121b4
test rcx, rcx
mov eax, 0x1000
cmovne rax, rcx
add rbx, rax
cmp rbx, r12
jb 0x180012140
jmp 0x1800121bb
mov rsi, qword [rbp + 0x2c8]
mov r12, qword [rsp + 0x490]
xor eax, eax
mov qword [rbp + 0xfb], rax
movabs r9, 0x740ffe882c6402bb
mov dword [rbp + 0x103], eax
mov word [rbp + 0x107], ax
mov byte [rbp + 0x109], al
mov qword [0x1801537d0], rsi
mov rsi, qword [rsp + 0x4b8]
mov dword [rbp + 0xf0], 0x83c7e4c3
mov dword [rbp + 0xf4], 0x89fe8e80
mov word [rbp + 0xf8], 0x8f88
mov byte [rbp + 0xfa], 0xd8
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax + 0xf0]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
sub r8b, 0x1d
mov byte [rbp + rax + 0xf0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x1a
jb 0x180012230
lea rdx, [rbp + 0xf0]
lea rcx, [0x180151dc0]
call fcn.180018c50
mov rcx, rax
call fcn.180018bc0
mov rdx, rdi
lea rcx, [rbp + 0x210]
call fcn.180005a60
mov rdx, rax
call fcn.180013d20
mov rcx, qword [rbp + 0x210]
test rcx, rcx
je 0x18001230e
mov rax, qword [rbp + 0x220]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800122f7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180012a7e
call fcn.1800cec30
xorps xmm0, xmm0
mov qword [rbp + 0x220], r15
movdqu xmmword [rbp + 0x210], xmm0
xor eax, eax
mov dword [rbp + 0x140], 0xd39ffa9b
mov dword [rbp + 0x14b], eax
movabs r9, 0x1b7f32c1eef02cd8
mov word [rbp + 0x14f], ax
mov dword [rbp + 0x144], 0xc9d4c7d6
mov word [rbp + 0x148], 0xf7f6
mov byte [rbp + 0x14a], 0xa
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax + 0x140]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 0x18
mov byte [rbp + rax + 0x140], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x11
jb 0x180012360
lea rdx, [rbp + 0x140]
lea rcx, [0x180151dc0]
call fcn.180018c50
mov rcx, rax
call fcn.180018bc0
mov dword [0x1801537c8], r14d
call fcn.180008700
cmp al, 1
jne 0x1800123e3
call fcn.18000a3d0
jmp 0x180012900
xor eax, eax
mov dword [rbp + 0x160], 0xabe7d8fb
mov qword [rbp + 0x16b], rax
movabs r9, 0xe2f65f9c4addc715
mov word [rbp + 0x173], ax
mov dword [rbp + 0x164], 0xddaedcac
mov word [rbp + 0x168], 0xdfdc
mov byte [rbp + 0x16a], 0x8c
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop dword [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax + 0x160]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 0x6d
mov byte [rbp + rax + 0x160], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x15
jb 0x180012430
lea rdx, [rbp + 0x160]
lea rcx, [0x180151dc0]
call fcn.180018c50
mov rcx, rax
call fcn.180018bc0
mov eax, dword [0x1801537c8]
movabs r9, 0xd725d065148a216d
mov dword [0x1801537cc], eax
xor eax, eax
mov qword [rbp - 0x6c], rax
mov dword [rbp - 0x64], eax
mov dword [rbp - 0x80], 0x1f331f51
mov dword [rbp - 0x7c], 0x2b331f2d
mov dword [rbp - 0x78], 0x151d1911
mov dword [rbp - 0x74], 0x14111732
mov dword [rbp - 0x70], 0x7b111116
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax - 0x80]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 5
mov byte [rbp + rax - 0x80], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x20
jb 0x1800124f0
xorps xmm0, xmm0
mov qword [rbp + 0x278], r15
movups xmmword [rbp + 0x268], xmm0
mov qword [rbp + 0x280], r15
lea rax, [rbp - 0x80]
mov r8, r13
inc r8
cmp byte [rax + r8], r15b
jne 0x180012557
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x268]
call fcn.18000e8f0
lea rdx, [rbp + 0x268]
lea rcx, [rbp]
call fcn.180005e90
xor eax, eax
mov dword [rsp + 0x40], 0xbbff92f3
mov dword [rsp + 0x4b], eax
movabs r9, 0x2cf0c9fbd560c934
mov byte [rsp + 0x4f], al
mov dword [rsp + 0x44], 0xa1b499b6
mov word [rsp + 0x48], 0xa7a6
mov byte [rsp + 0x4a], 0x52
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rsp + rax + 0x40]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
sub r8b, 0x6c
mov byte [rsp + rax + 0x40], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x10
jb 0x1800125c0
lea rdx, [rsp + 0x40]
lea rcx, [0x180151dc0]
call fcn.180018c50
mov rcx, rax
call fcn.180018bc0
mov rbx, qword [rbp]
mov rcx, rbx
call fcn.1800059f0
test al, al
je 0x18001263a
test rbx, rbx
je 0x180012960
mov rcx, rbx
call fcn.1800059f0
test al, al
je 0x180012960
cmp rbx, r13
je 0x180012960
lea rcx, [rbp]
call fcn.18003ab70
mov rcx, qword [0x1801537d8]
lea r8, [rbp + 0x330]
mov r9d, 8
mov qword [rsp + 0x20], r15
lea rdx, [rax + 0x48]
call qword [0x180116068]
mov rdx, qword [rbp + 0x330]
lea rcx, [rbp + 0x248]
call fcn.18003a720
cmp qword [rbp + 0x260], 0xf
lea rdx, [rbp + 0x248]
mov r8, qword [rbp + 0x258]
lea rcx, [0x180151dc0]
cmova rdx, qword [rbp + 0x248]
call fcn.18001d170
mov rcx, rax
call fcn.180018bc0
lea rcx, [rbp + 0x248]
call fcn.180017340
mov rax, qword [0x180151dc0]
mov rbx, qword [rbp]
movsxd rcx, dword [rax + 4]
lea rax, [0x180151dd8]
add rcx, rax
mov eax, dword [rcx]
and eax, 0xfffff9ff
bts eax, 0xb
mov dword [rcx], eax
mov rcx, rbx
call fcn.1800059f0
test al, al
lea rcx, [0x180151dc0]
cmove rbx, r13
mov rdx, rbx
call fcn.180014c80
mov rcx, rax
call fcn.180018bc0
xor eax, eax
mov dword [rsp + 0x50], 0xa39fba9b
mov dword [rsp + 0x5b], eax
movabs r9, 0x6285e9ac932b9ee0
mov byte [rsp + 0x5f], al
mov dword [rsp + 0x54], 0xa9a4b0a6
mov word [rsp + 0x58], 0xa7a6
mov byte [rsp + 0x5a], 0xca
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop word [rax + rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rsp + rax + 0x50]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
sub r8b, 0x20
mov byte [rsp + rax + 0x50], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x10
jb 0x180012760
lea rdx, [rsp + 0x50]
lea rcx, [0x180151dc0]
call fcn.180018c50
mov rcx, rax
call fcn.180018bc0
mov rcx, qword [rbp]
call fcn.180006c40
xor eax, eax
mov dword [rbp + 0x180], 0xbb7f5273
mov qword [rbp + 0x18b], rax
movabs r10, 0x1211635d1392b044
mov byte [rbp + 0x193], al
mov dword [rbp + 0x184], 0x41b45bb6
mov word [rbp + 0x188], 0x4746
mov byte [rbp + 0x18a], 0x92
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add r8, r10
movzx edx, byte [rbp + rax + 0x180]
mov eax, edx
and rax, r8
imul r9, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r9, rdx
add r9, r8
add r9b, 0x24
mov byte [rbp + rax + 0x180], r9b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x14
jb 0x180012811
lea rdx, [rbp + 0x180]
lea rcx, [0x180151dc0]
call fcn.180018c50
mov rcx, rax
call fcn.180018bc0
mov ecx, 0x10
call fcn.1800cec64
lea rcx, [0x1800094a0]
mov r9, rax
lea r8, [0x180020f50]
xor edx, edx
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x308]
mov qword [rsp + 0x28], rcx
xor ecx, ecx
mov qword [rax], rdi
mov dword [rsp + 0x20], r15d
call fcn.1800ded38
mov qword [rbp + 0x300], rax
test rax, rax
je 0x180012a38
cmp dword [rbp + 0x308], r15d
je 0x180012a84
movaps xmm0, xmmword [rbp + 0x300]
lea rcx, [rbp + 0x290]
movdqa xmmword [rbp + 0x290], xmm0
call fcn.1800cdbc4
test eax, eax
jne 0x180012a84
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x300], xmm0
lea rcx, [rbp + 0x338]
call fcn.180017340
lea rcx, [rbp + 0x358]
call fcn.180017340
lea rcx, [rbp + 0x310]
call fcn.180017340
mov al, 1
mov rbx, qword [rsp + 0x4b0]
mov rdi, qword [rsp + 0x4c0]
mov r13, qword [rsp + 0x488]
mov r14, qword [rsp + 0x480]
mov rcx, qword [rbp + 0x378]
xor rcx, rsp
call fcn.1800cec10
add rsp, 0x498
pop r15
pop rbp
ret
xor eax, eax
mov dword [rbp + 0x1d0], 0xdce0e3f5
mov qword [rbp + 0x1d6], rax
movabs r9, 0x278237f3694eaf38
mov word [rbp + 0x1de], ax
mov byte [rbp + 0x1e0], al
mov word [rbp + 0x1d4], 0xb585
mov qword [rsp + 0x30], r15
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
add rcx, r9
movzx edx, byte [rbp + rax + 0x1d0]
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
mov rax, qword [rsp + 0x30]
add r8, rcx
add r8, rdx
add r8b, 0x78
mov byte [rbp + rax + 0x1d0], r8b
mov rax, qword [rsp + 0x30]
inc rax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp rax, 0x11
jb 0x1800129a0
xor r9d, r9d
lea r8, [rbp + 0x1d0]
xor edx, edx
xor ecx, ecx
call qword [0x1801164f0]
lea rcx, [rbp + 0x338]
call fcn.180017340
lea rcx, [rbp + 0x358]
call fcn.180017340
lea rcx, [rbp + 0x310]
call fcn.180017340
xor al, al
jmp 0x180012926
xor ecx, ecx
int 0x29
xor al, al
jmp 0x180012946
mov ecx, 6
mov dword [rbp + 0x308], r15d
call fcn.1800cdb7c
int3
xor r9d, r9d
lea rdx, [rbp - 0x30]
xor r8d, r8d
xor ecx, ecx
call qword [0x1801164f0]
xor ecx, ecx
call fcn.1800dc6d8
int3
xor r9d, r9d
lea rdx, [rbp + 0x10]
xor r8d, r8d
xor ecx, ecx
call qword [0x1801164f0]
xor ecx, ecx
call fcn.1800dc6d8
int3
call fcn.1800d8460
int3
mov ecx, 1
call fcn.1800cdb7c
int3