Function at 0x202455d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
mov r15d, dword [rsp + 0x148]
mov rdi, qword [rsp + 0x140]
mov rax, qword [0x20562ac8]
xor rax, rsp
mov qword [rsp + 0xd0], rax
xor ebp, ebp
mov eax, r15d
and eax, 0x3f
cmp eax, 0x10
jae 0x20245640
cmp eax, 8
jb 0x20245816
cmp eax, 0xc
jb 0x20245850
cmp eax, 0xd
ja 0x20245872
mov r11d, 0xa9ccf55a
cmp eax, 0xc
jne 0x20245684
jmp 0x202457db
cmp eax, 0x17
jbe 0x20245660
mov r14, rcx
mov rbx, rdx
mov rdx, r9
cmp eax, 0x19
ja 0x202456f0
jmp 0x20245721
cmp eax, 0x13
jb 0x20245a6b
cmp eax, 0x15
jb 0x20245b13
cmp eax, 0x17
jne 0x202458c6
mov r10d, ecx
mov r11d, 0x1a38b6cc
mov eax, r11d
and eax, 0x1e
cmp eax, 0xf
ja 0x202456d0
cmp eax, 0xc
jb 0x2024593a
cmp eax, 0xd
ja 0x20245987
mov r15d, r11d
cmp eax, 0xc
je 0x202457db
mov eax, 0x1a
mov r11d, 0xa9ccf55a
mov rdx, r9
mov rbx, r10
mov rcx, r9
cmp eax, 0x17
ja 0x202456df
jmp 0x202457f6
mov rbx, r9
mov rcx, rdx
cmp eax, 0x17
jbe 0x202457f6
mov r14, rdx
mov rdx, r10
mov rdi, r8
mov r15d, r11d
cmp eax, 0x19
jbe 0x20245721
cmp eax, 0x1c
jbe 0x2024578a
cmp eax, 0x1d
jne 0x202457ab
mov rcx, rdi
sub rcx, rdx
test bpl, 1
cmove rsi, rdi
mov bpl, 1
mov r15d, 0xc1e30693
mov rdi, r14
jmp 0x20245607
cmp eax, 0x18
jne 0x202458da
mov rax, qword [r8 + 0x38]
mov r10, qword [rax]
test r10, r10
je 0x20246092
lea r11, [r8 + 0x38]
xor ebx, ebx
mov r9, rdx
mov r13, rcx
test r15w, r15w
js 0x202461c6
mov ecx, 0xffffffff
mov rax, qword [r8 + 0x18]
cmp r10, qword [rax]
jbe 0x202465d1
cmp r13d, 0xffffffff
jne 0x20245ff2
test r15d, 0x1000
je 0x20246510
mov rax, qword [r8 + 0x50]
inc dword [rax]
mov rax, qword [r11]
dec qword [rax]
jmp 0x20246244
cmp eax, 0x1a
je 0x202459d4
cmp eax, 0x1c
jne 0x20246244
mov rcx, rbx
call fcn.200781e0
xor ecx, ecx
jmp 0x202465d1
cmp eax, 0x1e
ja 0x20245908
test edi, edi
je 0x20245c50
xor ebx, ebx
mov rcx, rdx
mov rdi, rdx
call fcn.20077cc0
lea r10, [rsp + 0xc0]
xor eax, eax
mov r9, rdi
jmp 0x20246564
movzx eax, byte [0x20532095]
cmp al, 0x1f
jne 0x20245928
lea rcx, [0x20532080]
jmp 0x202465d1
cmp eax, 0x12
jbe 0x202459a6
mov r14, rdx
mov rdi, r8
cmp eax, 0x15
jb 0x20245b1f
mov rdi, r8
jmp 0x2024591f
cmp eax, 3
ja 0x20245a18
cmp eax, 1
jbe 0x20245d12
mov ecx, 0xffffffff
cmp eax, 3
jne 0x202465d1
mov dword [rsp + 0x28], 0x79850b48
mov rcx, r8
mov r8, rdi
call fcn.202455d0
mov ecx, eax
jmp 0x202465d1
mov r13, rcx
cmp eax, 9
jbe 0x20245955
cmp eax, 0xb
jne 0x20245b7a
call fcn.203cba24
movzx ecx, al
jmp 0x202465d1
cmp eax, 0xf
sete al
mov r10, r9
test al, al
je 0x20245997
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
lea r8, [rsp + 0xa0]
mov rdi, rdx
mov rdx, r8
mov r8d, r10d
call qword [case.0x200c7fcc.0]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rdi + 8]
mov rax, qword [rax + 8]
cmp rax, qword [rcx + 8]
sete al
mov ecx, dword [rsp + 0xa0]
cmp ecx, dword [rdi]
jmp 0x20245c37
cmp eax, 0x15
jne 0x2024591f
xor ecx, ecx
lock dec dword [rdx + 8]
cmove rcx, rdx
jmp 0x202465d1
mov r10, qword [rdx + 8]
test r10, r10
sete bl
movzx eax, byte [0x20532032]
cmp al, 0x4b
jne 0x20245b72
mov r11d, r15d
test r11d, 0x200
jne 0x202461ac
jmp 0x20246584
movzx eax, byte [0x205320b6]
cmp al, 0xb4
jne 0x20245bcd
mov r9, rdx
jmp 0x20245a7c
movzx ecx, dil
jmp 0x202465d1
test r15d, 0x100
je 0x20245bfd
jmp 0x20246244
mov r13, rdx
mov rcx, rdx
mov rdx, r9
mov r9, r10
mov rdi, r8
mov r15d, r11d
cmp eax, 9
ja 0x2024585c
cmp eax, 8
jne 0x20245baf
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0xc0], r9
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xb0], 0
jmp 0x20245aa4
xor eax, eax
mov rcx, rdx
mov rdx, r9
test al, al
jne 0x20245883
mov rcx, rdx
call fcn.203c96b0
mov ecx, eax
jmp 0x202465d1
mov r9, r10
mov r15d, r11d
cmp eax, 0x10
je 0x20245a77
cmp eax, 0x12
je 0x20246244
mov rdx, rcx
mov rcx, r8
mov rdi, r8
call fcn.200a9aa0
mov rcx, rdi
jmp 0x202465d1
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], r14
mov r9, rdx
mov r13, rcx
mov edx, ebx
cmp rbx, r14
jae 0x20246594
xor ecx, ecx
test r15b, 0x40
je 0x202465d1
mov qword [rsp + 0x48], 0
jmp 0x20246123
cmp eax, 5
jbe 0x20245d54
cmp eax, 7
jne 0x20245f33
mov r13, rdx
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x40], r9
lea rax, [0x20413328]
mov qword [rcx], rax
mov rbx, rcx
call fcn.200a5960
mov rax, rbx
lea rcx, [0x204122e8]
mov qword [rbx], rcx
mov rcx, qword [rbx + 0x60]
test rcx, rcx
je 0x20246020
mov r12, rax
jmp 0x20245fb6
mov rbx, rdx
cmp eax, 0x10
jne 0x202459b5
test r8d, r8d
je 0x20245aa4
test r15d, 0x100
jne 0x20245c44
mov rcx, r9
mov rdi, r9
call fcn.20077cc0
test r15b, 0x40
cmove rbx, rdi
mov rcx, rbx
jmp 0x202465d1
test r15b, r15b
js 0x20245c64
mov rax, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xb0]
cmp rdx, rax
jae 0x20245f29
mov r8, qword [rsp + 0xc0]
mov r11, qword [rsp + 0xb8]
inc rdx
neg rax
movzx ecx, byte [r8 + rdx - 1]
movzx r10d, byte [r11 + rdx - 1]
cmp cl, r10b
jne 0x20245ff9
mov qword [rsp + 0xb0], rdx
lea rcx, [rax + rdx]
inc rcx
inc rdx
xor r10d, r10d
cmp rcx, 1
jne 0x20245adc
xor ebx, ebx
jmp 0x20246522
mov r14, rcx
mov rbx, rdx
mov r10, r9
mov r11d, r15d
cmp eax, 0x13
jne 0x20245c25
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x80], 0
test r11d, 0x800
jne 0x20245e78
mov r9, r10
mov r13, rcx
mov rdx, rbx
mov r15d, r11d
mov rax, rcx
jmp 0x202464b8
mov r9, rdx
jmp 0x20246510
lea rax, [0x204122e8]
mov qword [r9], rax
mov r14, qword [r9 + 0x60]
test r14, r14
je 0x20245e06
test r15b, 0x40
jne 0x20246244
mov rcx, qword [r14 + 8]
mov eax, edx
test rcx, rcx
jne 0x20246151
jmp 0x202463cd
movzx eax, byte [0x205320d5]
lea r10, [0x205320c0]
cmp al, 0x1a
jne 0x20245dc7
mov rcx, r10
jmp 0x202465d1
mov dl, 0xe4
lea rcx, [0x205320a0]
nop word cs:[rax + rax]
mov al, 0x52
lock cmpxchg byte [0x205320b6], dl
je 0x20245e75
cmp al, 0xb4
je 0x202465d1
test r15b, r15b
jns 0x20245be0
mov dl, 0xc1
lea rcx, [0x20532080]
nop word cs:[rax + rax]
mov al, 0xeb
lock cmpxchg byte [0x20532095], dl
je 0x20245c6c
cmp al, 0x1f
jne 0x20245c10
jmp 0x202465d1
mov rax, qword [rdi + 8]
mov rcx, qword [r14 + 8]
cmp rcx, qword [rax + 8]
sete al
cmp dword [rdi], r10d
sete cl
and cl, al
movzx ecx, cl
jmp 0x202465d1
lea rcx, [0x205320a0]
jmp 0x202465d1
lea r11, [rsp + 0x68]
mov r9, rdx
mov r13, rcx
test r15b, r15b
js 0x20245df1
mov rcx, r9
jmp 0x202465d1
mov r8d, 0xffffffff
lea r9, [r8 - 0x1fe3ffbf]
add r8, 0xffffffffe01c0043
xor r11d, r11d
movabs rdi, 0x2e8ba2e8ba2e8ba3
lea rax, [0x2041fff0]
mov ebx, 0xe01c003a
add rbx, rax
lea rcx, [0x20532080]
nop word cs:[rax + rax]
mov rax, r8
mul rdi
mov r10, rdx
mov rax, r9
mul rdi
shr rdx, 2
imul rax, rdx, 0xffffffffffffffea
add rax, rbx
movzx eax, byte [r11 + rax + 7]
xor al, 0xa1
add byte [r11 + rcx], al
cmp r11, 0x14
je 0x20245d05
shr r10, 2
imul rax, r10, 0xffffffffffffffea
add rax, rbx
add rax, 8
movzx eax, byte [rax + r11]
xor al, 0xa1
add byte [r11 + rcx + 1], al
add r11, 2
add r8, 2
add r9, 2
jmp 0x20245cb0
mov al, 0x1f
xchg byte [0x20532095], al
jmp 0x202465d1
test eax, eax
je 0x20245f75
mov r11, qword [rdx + 0x38]
mov rax, qword [r11]
test rax, rax
je 0x20246009
mov r10, qword [rdx + 0x50]
mov qword [rsp + 0x38], r10
cmp dword [r10], 0
jle 0x2024604c
mov r13, rdx
mov qword [rsp + 0x40], r9
xor edx, edx
mov qword [rsp + 0x38], rdx
mov r12, rcx
jmp 0x20245e53
cmp eax, 4
jne 0x20245f56
mov r13, rcx
mov qword [rsp + 0x40], r9
xor ebx, ebx
xor eax, eax
sub eax, dword [r8 - 4]
cdqe
mov r12, r8
lea rcx, [r8 + rax]
add rcx, 0xffffffffffffff78
mov qword [rsp + 0x38], rcx
mov r14, rdx
call fcn.201109d0
mov rdx, r14
test edx, edx
je 0x20246032
lea r10, [rsp + 0xb8]
lea r11, [rsp + 0x98]
lea rax, [rsp + 0xb0]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x30], rcx
mov r9, qword [rsp + 0x40]
mov r8, r12
mov rcx, r13
jmp 0x2024605a
test r15d, 0x400
je 0x20246244
mov r11b, 0xa8
mov al, 0xd6
lock cmpxchg byte [0x205320d5], r11b
je 0x20245f62
cmp al, 0x1a
jne 0x20245dd7
jmp 0x20245bc5
mov ecx, 0xffffffff
test byte [r8 + 0x70], 2
je 0x2024645e
jmp 0x202465d1
test r15d, 0x2000
jne 0x20246436
mov r12, r13
mov r13, rdx
mov rbx, rcx
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x40], r9
lea rcx, [rsp + 0x78]
lea rax, [rsp + 0x98]
mov qword [rsp + 0x38], rax
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [case.0x200c7fcc.0]
xor eax, eax
mov r8, qword [rsp + 0x30]
mov rcx, rbx
test r15d, 0x1000
jne 0x2024642c
mov rbx, rcx
mov qword [rsp + 0x30], r8
xor r14d, r14d
mov rcx, qword [rsp + 0x38]
jmp 0x202460a2
mov r11d, r15d
mov eax, 0x8460b8a8
mov ecx, 0x7b9f4770
mov edx, 1
mov r8d, 0x8460b8a9
mov r9d, 0x7b9f476f
lea r10, [0x205320a0]
lea rdi, [0x20420010]
nop word cs:[rax + rax]
mov ebx, ecx
imul rbx, rbx, 0x51eb851f
shr rbx, 0x23
lea ebx, [rbx + rbx*4]
lea ebx, [rbx + rbx*4]
add ebx, eax
mov r14d, r9d
imul r14, r14, 0x51eb851f
shr r14, 0x23
lea r14d, [r14 + r14*4]
lea r14d, [r14 + r14*4]
add r14d, r8d
movzx r14d, byte [r14 + rdi]
xor r14b, 0x63
add byte [rdx + r10 - 1], r14b
movzx ebx, byte [rbx + rdi]
xor bl, 0x63
add byte [rdx + r10], bl
add eax, 0xfffffffe
add ecx, 2
add rdx, 2
add r8d, 0xfffffffe
add r9d, 2
cmp rdx, 0x17
jne 0x20245eb0
xor r10d, r10d
xor ebx, ebx
mov r15d, r11d
test r11d, 0x200
je 0x20246584
jmp 0x202461ac
xor r10d, r10d
xor ebx, ebx
jmp 0x20246522
movzx eax, byte [0x205320e9]
cmp al, 0xe0
jne 0x20246001
lea r11, [rsp + 0x50]
lea r10, [rsp + 0x80]
mov bl, 1
jmp 0x20245743
test r8d, r8d
je 0x20246044
mov r13, rcx
xor r10d, r10d
test r15d, 0x100
jne 0x20245f90
mov eax, edx
jmp 0x202462b5
mov r8d, ecx
mov dword [rsp + 0x28], 0x38031d4b
call fcn.202455d0
mov rcx, rax
and ecx, 1
jmp 0x202465d1
mov r12, r13
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x40], r9
mov rbx, rcx
mov r13, rdx
mov rcx, rdx
call fcn.20077cc0
mov rax, rbx
lea rcx, [rsp + 0x90]
test r15b, r15b
js 0x20245fea
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x2024609c
test r15d, 0x800
jne 0x202460fa
mov r9, qword [rsp + 0x40]
mov r8, qword [rsp + 0x30]
mov rdx, r13
mov r13, r12
jmp 0x202465ac
mov rcx, r13
jmp 0x202465d1
xor eax, eax
jmp 0x20246423
sub ecx, r10d
jmp 0x202465d1
mov r13, rcx
jmp 0x20246167
mov r13, rcx
mov ecx, 0xffffffff
test r15b, 0x40
je 0x202465d1
jmp 0x20245a0a
mov r12, rax
test r15b, 0x40
je 0x202460b0
jmp 0x202457ea
mov r9, qword [rsp + 0x40]
mov r8, r12
mov rcx, qword [rsp + 0x38]
jmp 0x202464ae
mov rcx, rdx
jmp 0x202465d1
lea r10, [rdx + 0x38]
mov rbx, qword [rsp + 0x38]
mov qword [rsp + 0x30], rbx
test r15b, r15b
js 0x2024607c
mov r13, rdx
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x40], r9
mov rbx, rcx
mov r12, rcx
mov rcx, qword [rsp + 0x38]
mov r14, rcx
jmp 0x202460a2
mov rdi, qword [rdx + 0x40]
mov rdi, qword [rdi]
test rdi, rdi
je 0x20246092
mov r13, rcx
mov ebx, edx
jmp 0x2024620c
mov ecx, 0xffffffff
jmp 0x202465d1
mov rbx, rax
xor r14d, r14d
call fcn.20077cc0
test r15d, 0x400
jne 0x202460d1
test edi, edi
je 0x202460d9
mov rcx, rbx
call fcn.20077cc0
test r15d, 0x200
je 0x20246244
mov rcx, rbx
jmp 0x202465d1
mov rcx, r14
jmp 0x202465d1
mov rdx, r13
test r15d, 0x100
mov r9, qword [rsp + 0x40]
mov r8, qword [rsp + 0x30]
mov rcx, rbx
mov r13, r12
je 0x20246167
jmp 0x202465d1
mov qword [rsp + 0x38], rcx
mov rbx, rax
mov rax, qword [rdx]
mov rax, qword [rax + 0x10]
mov rcx, rdx
call qword [case.0x200c7fcc.0]
test rax, rax
je 0x20245e68
mov rcx, rax
jmp 0x20245e38
mov rax, qword [rsp + 0x48]
cmp rax, qword [rsp + 0x78]
jae 0x20246192
mov rcx, qword [rsp + 0x60]
movzx ecx, byte [rcx + rax]
mov r10, qword [rsp + 0x68]
mov byte [r10 + rax], cl
test r15d, 0x400
je 0x20246167
inc qword [rsp + 0x48]
jmp 0x20246123
test r15d, 0x800
je 0x202461d2
cmp al, 0xe0
je 0x202461ac
test r15d, 0x400
jne 0x2024614a
mov cl, 0x1e
mov al, 0x41
lock cmpxchg byte [0x205320e9], cl
lea r14, [rsp + 0xc0]
lea rcx, [rsp + 0x80]
jne 0x20246151
test r15d, 0x200
jne 0x20246244
mov eax, edx
xor r10d, r10d
mov rdx, r9
test r15d, 0x2000
je 0x2024624b
jmp 0x202465cc
test r15b, 0x40
jne 0x202461c6
mov al, 0xb4
xchg byte [0x205320b6], al
lea rcx, [0x205320a0]
jmp 0x202465d1
lea rcx, [0x205320e0]
jmp 0x202465d1
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
mov rdi, r9
mov r12, r8
mov rbx, rdx
call qword [case.0x200c7fcc.0]
mov rdx, rbx
mov r8, r12
mov r9, rdi
mov rcx, rax
mov dword [0x20532744], 0x8d4cd459
test rax, rax
jne 0x20246399
jmp 0x202463cd
mov ecx, 0xffffffff
test byte [rdx + 0x70], 4
jne 0x2024623c
mov r14, qword [rdx + 0x68]
cmp r14, rdi
cmovb r14, rdi
cmp r14, rax
jbe 0x202465d1
add rdx, 0x68
mov rax, rdx
mov rcx, qword [rsp + 0x30]
jmp 0x20246409
xor r14d, r14d
jmp 0x202463be
xor ecx, ecx
jmp 0x202465d1
lea ecx, [r10 + 0x5a5b5827]
mov r9d, 0xcccccccd
imul r9, rcx
shr r9, 0x23
add r9d, r9d
lea ecx, [r9 + r9*4]
neg ecx
lea r9d, [r10 + rcx]
add r9d, 0x5a5b5827
movsxd r10, r10d
lea rcx, [0x205320e0]
lea r11, [0x20420050]
movzx r9d, byte [r9 + r11]
xor r9b, 0x30
add byte [r10 + rcx], r9b
inc r10d
cmp r10d, 8
jle 0x202462b2
test r15d, 0x4000
je 0x2024637d
mov r9, rdx
mov edx, eax
jmp 0x20246123
mov r9, rdx
test r15b, r15b
jns 0x202462bf
mov rdx, r9
jmp 0x2024624b
mov eax, 1
mov edx, 0xa4391455
mov r8d, 0x5bc6ebbe
mov r10d, 0xa4391456
mov r11d, 0x5bc6ebbc
mov edi, 0xcccccccd
lea rcx, [0x205320c0]
lea rbx, [0x20420030]
mov r14d, r11d
imul r14, rdi
shr r14, 0x24
lea r14d, [r14 + r14*4]
lea r14d, [r10 + r14*4]
movzx r12d, byte [rax + rcx - 1]
xor r12b, byte [r14 + rbx]
xor r12b, 8
mov byte [rax + rcx - 1], r12b
cmp rax, 0x15
je 0x20246356
mov r14d, r8d
imul r14, rdi
shr r14, 0x24
lea r14d, [r14 + r14*4]
lea r14d, [rdx + r14*4]
movzx r12d, byte [rax + rcx]
mov r14d, r14d
xor r12b, byte [r14 + rbx]
xor r12b, 8
mov byte [rax + rcx], r12b
add rax, 2
add edx, 0xfffffffe
add r8d, 2
add r10d, 0xfffffffe
add r11d, 2
jmp 0x202462ee
test r15d, 0x1000
je 0x20245c64
mov al, 0x1a
xchg byte [0x205320d5], al
test r15d, 0x200
je 0x20246441
jmp 0x202465d1
mov al, 0xe0
xchg byte [0x205320e9], al
mov bl, 1
test r15d, 0x1000
je 0x202457be
jmp 0x202465d1
mov rax, qword [rcx]
mov rax, qword [rax]
mov r12, rdx
mov edx, 1
mov rdi, r9
mov rbx, r8
call qword [case.0x200c7fcc.0]
mov r8, rbx
mov r9, rdi
xor ecx, ecx
mov ebx, r12d
mov edx, ebx
test r15d, 0x4000
je 0x202465d1
mov rcx, r14
mov rdi, r9
mov rbx, r8
mov r12, rdx
call fcn.20077cc0
mov r8, rbx
mov r9, rdi
lea r10, [rsp + 0x88]
lea r11, [rsp + 0xc0]
lea rcx, [rsp + 0xc8]
lea rax, [rsp + 0x48]
lea r14, [rsp + 0x68]
mov ebx, r12d
test r15w, r15w
js 0x20246434
mov qword [rax], r14
sub r14d, dword [r11]
mov dword [rcx], r14d
mov rax, qword [r10]
mov rax, qword [rax]
lea r11, [rsp + 0x58]
test r15d, 0x100
jne 0x20246454
movzx ecx, byte [rax]
jmp 0x202465d1
mov edx, ebx
mov rcx, r9
test edx, edx
je 0x202465d1
mov rcx, r9
mov rdi, r9
call fcn.20077cc0
mov rcx, rdi
jmp 0x202465d1
cmp byte [r10 - 1], r13b
jne 0x20245c5b
mov rax, qword [r8 + 0x50]
inc dword [rax]
mov rax, qword [r11]
dec qword [rax]
mov rax, qword [r11]
mov rax, qword [rax]
mov byte [rax], r13b
mov ecx, r13d
jmp 0x202465d1
mov r10, qword [rsp + 0x88]
movzx r10d, byte [r10 + rcx]
mov r11, qword [rsp + 0x58]
mov byte [r11 + rcx], r10b
test r15d, 0x200
je 0x202465cc
inc qword [rsp + 0x80]
lea rcx, [rsp + 0xc0]
test r15b, 0x40
jne 0x202465d1
mov rcx, qword [rsp + 0x80]
cmp rcx, rax
jae 0x202464fa
test r15d, 0x400
jne 0x2024647b
lea rdi, [rsp + 0x60]
lea rax, [rsp + 0x90]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x88]
lea r11, [rsp + 0x70]
lea r10, [rsp + 0xc8]
jmp 0x2024620c
test r15b, r15b
jns 0x202465cc
mov rcx, qword [rsp + 0x90]
jmp 0x202465d1
mov cl, 0xf2
mov al, 0x58
lock cmpxchg byte [0x20532032], cl
je 0x20246530
cmp al, 0x4b
je 0x20246584
test r15d, 0x400
jne 0x20246510
jmp 0x20246244
xor eax, eax
lea ecx, [rax + 0xe]
and ecx, 0xf
xor rcx, 0xf
cdqe
lea rdx, [0x20532020]
movzx r8d, byte [rax + rdx]
lea r11, [0x2041ffb0]
xor r8b, byte [rcx + r11]
xor r8b, 0x26
mov byte [rax + rdx], r8b
inc eax
cmp eax, 0x11
jg 0x2024656f
mov rcx, r9
test r15b, 0x40
jne 0x20246532
jmp 0x202465d1
mov al, 0x4b
xchg byte [0x20532032], al
test r15d, 0x800
jne 0x20246244
lea rcx, [0x20532020]
test bl, 1
cmove rcx, r10
jmp 0x202465d1
test rdi, rdi
je 0x202465b1
mov rax, qword [rsp + 0x60]
movzx eax, byte [rax + rdi - 1]
mov rcx, qword [rsp + 0x68]
mov byte [rcx + rdi - 1], al
dec rdi
jmp 0x20246594
test r15d, 0x100
jne 0x202465cc
lea r14, [rsp + 0x70]
lea rcx, [rsp + 0x98]
jmp 0x20246399
mov rcx, qword [rsp + 0x70]
test bpl, 1
cmove rsi, rcx
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.203c9080
mov rax, rsi
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret