Function at 0x180001090
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
cmp dword [0x180020a6c], 0xa
jl 0x1800010c2
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800010c2
nop
jmp 0x1800010c0
mov eax, 0x10
call entry0
sub rsp, rax
mov r10, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
mov ebx, dword [0x180020a74]
mov edi, dword [0x180020a78]
cmp edi, 0xa
jl 0x180001102
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x180001102
nop
jmp 0x180001100
lea r8, section..data
cmp edi, 0xa
jl 0x18000111d
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
jne 0x180001910
mov r11d, 3
mov rcx, r10
mov rax, r8
mov dl, byte [r8]
nop dword [rax]
mov byte [rcx], dl
mov ebx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp edi, 0xa
jl 0x180001162
test esi, esi
je 0x180001162
cmp edi, 0xa
jl 0x180001190
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
jne 0x1800011ac
jmp 0x180001190
cmp edi, 0xa
jl 0x18000116f
test esi, esi
jne 0x180001910
add rax, 1
add rcx, 1
sub r11, 1
jb 0x1800011b0
movzx edx, byte [rax]
jmp 0x180001130
mov byte [rcx], dl
cmp dword [0x180020a78], 0xa
jl 0x180001130
mov esi, dword [0x180020a74]
lea edi, [rsi - 1]
imul edi, esi
and edi, 1
je 0x180001130
mov byte [rcx], dl
jmp 0x180001190
cmp dword [0x180020a6c], 0xa
jl 0x1800019ac
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800019ac
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
cmp edi, 0xa
jl 0x1800011f6
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
jne 0x180001940
mov r9d, 3
mov rcx, r8
mov dl, byte [r8]
jmp 0x180001210
mov dl, byte [rcx]
nop word cs:[rax + rax]
mov byte [rax], dl
mov ebx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp edi, 0xa
jl 0x18000124d
test esi, esi
je 0x18000124d
cmp edi, 0xa
jl 0x180001380
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
jne 0x1800013a4
jmp 0x180001380
cmp edi, 0xa
jl 0x18000125a
test esi, esi
jne 0x180001930
add rcx, 1
add rax, 1
sub r9, 1
jae 0x180001204
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
cmp edi, 0xa
jl 0x18000128c
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
jne 0x180001950
mov r9d, 3
mov rcx, r8
mov dl, byte [r8]
nop dword [rax + rax]
mov byte [rax], dl
mov ebx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp edi, 0xa
jl 0x1800012d2
test esi, esi
je 0x1800012d2
cmp edi, 0xa
jl 0x180001300
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
jne 0x18000131c
jmp 0x180001300
cmp edi, 0xa
jl 0x1800012df
test esi, esi
jne 0x180001920
add rcx, 1
add rax, 1
sub r9, 1
jb 0x180001320
movzx edx, byte [rcx]
jmp 0x1800012a0
mov byte [rax], dl
cmp dword [0x180020a78], 0xa
jl 0x1800012a0
mov ebx, dword [0x180020a74]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
je 0x1800012a0
mov byte [rax], dl
jmp 0x180001300
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
lea ecx, [rbx - 1]
imul ecx, ebx
test cl, 1
sete cl
cmp edi, 0xa
setl dl
or dl, cl
cmp dword [0x180020a6c], 0xa
jl 0x1800013a8
mov ecx, dword [0x180020a70]
lea ebx, [rcx - 1]
imul ebx, ecx
and ebx, 1
je 0x1800013a8
mov r9d, 3
mov rcx, r8
test dl, dl
jne 0x180001204
jmp 0x180001940
mov byte [rax], dl
cmp dword [0x180020a78], 0xa
jl 0x180001210
mov ebx, dword [0x180020a74]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
je 0x180001210
mov byte [rax], dl
jmp 0x180001380
test dl, dl
je 0x180001980
mov r9d, 3
mov rbx, r8
mov dl, byte [r8]
jmp 0x1800013c0
mov dl, byte [rbx]
mov byte [rax], dl
mov ecx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
cmp edi, 0xa
jl 0x1800013fd
test esi, esi
je 0x1800013fd
cmp edi, 0xa
jl 0x180001540
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
jne 0x180001564
jmp 0x180001540
cmp edi, 0xa
jl 0x18000140a
test esi, esi
jne 0x180001970
add rbx, 1
add rax, 1
sub r9, 1
jae 0x1800013be
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp edi, 0xa
setl cl
or cl, dl
cmp dword [0x180020a6c], 0xa
jl 0x180001568
mov edx, dword [0x180020a70]
lea ebx, [rdx - 1]
imul ebx, edx
and ebx, 1
je 0x180001568
test cl, cl
je 0x180001990
mov r9d, 3
mov rcx, r8
mov bl, byte [r8]
nop word cs:[rax + rax]
nop dword [rax]
mov byte [rax], bl
mov edi, dword [0x180020a74]
mov esi, dword [0x180020a78]
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
cmp esi, 0xa
jl 0x1800014b2
test edx, edx
je 0x1800014b2
cmp esi, 0xa
jl 0x1800014e0
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
jne 0x1800014fc
jmp 0x1800014e0
cmp esi, 0xa
jl 0x1800014bf
test edx, edx
jne 0x180001960
add rcx, 1
add rax, 1
sub r9, 1
jb 0x180001500
movzx ebx, byte [rcx]
jmp 0x180001480
mov byte [rax], bl
cmp dword [0x180020a78], 0xa
jl 0x180001480
mov edx, dword [0x180020a74]
lea edi, [rdx - 1]
imul edi, edx
and edi, 1
je 0x180001480
mov byte [rax], bl
jmp 0x1800014e0
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
mov r9d, 3
mov rbx, r8
cmp esi, 0xa
jl 0x1800013be
lea ecx, [rdi - 1]
imul ecx, edi
mov rbx, r8
and ecx, 1
je 0x1800013be
jmp 0x180001980
mov byte [rax], dl
cmp dword [0x180020a78], 0xa
jl 0x1800013c0
mov ecx, dword [0x180020a74]
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
je 0x1800013c0
mov byte [rax], dl
jmp 0x180001540
test cl, cl
je 0x1800019a4
mov r9d, 3
mov rsi, r8
mov cl, byte [r8]
jmp 0x180001580
mov cl, byte [rsi]
mov byte [rax], cl
mov ebx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
cmp edi, 0xa
jl 0x1800015bd
test edx, edx
je 0x1800015bd
cmp edi, 0xa
jl 0x1800016d9
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
jne 0x1800016fd
jmp 0x1800016d9
cmp edi, 0xa
jl 0x1800015ca
test edx, edx
jne 0x1800019a2
add rsi, 1
add rax, 1
sub r9, 1
jae 0x18000157e
mov edx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
cmp ecx, 0xa
jl 0x180001701
test eax, eax
je 0x180001701
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
cmp edi, 0xa
jl 0x180001622
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
jne 0x1800019a6
mov r9d, 3
mov rcx, r8
mov dl, byte [r8]
mov byte [rax], dl
mov ebx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp edi, 0xa
jl 0x180001660
test esi, esi
je 0x180001660
cmp edi, 0xa
jl 0x180001680
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
jne 0x18000169c
jmp 0x180001680
cmp edi, 0xa
jl 0x18000166d
test esi, esi
jne 0x1800019a0
add rcx, 1
add rax, 1
sub r9, 1
jb 0x1800016a0
movzx edx, byte [rcx]
jmp 0x18000162e
mov byte [rax], dl
cmp dword [0x180020a78], 0xa
jl 0x18000162e
mov ebx, dword [0x180020a74]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
je 0x18000162e
mov byte [rax], dl
jmp 0x180001680
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
mov r9d, 3
mov rsi, r8
cmp edi, 0xa
jl 0x18000157e
lea ecx, [rbx - 1]
imul ecx, ebx
mov rsi, r8
and ecx, 1
je 0x18000157e
jmp 0x1800019a4
mov byte [rax], cl
cmp dword [0x180020a78], 0xa
jl 0x180001580
mov edx, dword [0x180020a74]
lea ebx, [rdx - 1]
imul ebx, edx
and ebx, 1
je 0x180001580
mov byte [rax], cl
jmp 0x1800016d9
cmp ecx, 0xa
jl 0x18000170e
test eax, eax
jne 0x180001a66
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
cmp edi, 0xa
jl 0x180001734
test ecx, ecx
jne 0x180001a62
cmp edi, 0xa
jl 0x180001741
test ecx, ecx
jne 0x1800019aa
mov r9d, 3
mov rsi, r8
mov cl, byte [r8]
jmp 0x180001751
mov cl, byte [rsi]
mov byte [rax], cl
mov ebx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
cmp edi, 0xa
jl 0x18000178e
test edx, edx
je 0x18000178e
cmp edi, 0xa
jl 0x1800018b7
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
jne 0x1800018db
jmp 0x1800018b7
cmp edi, 0xa
jl 0x18000179b
test edx, edx
jne 0x1800019aa
add rsi, 1
add rax, 1
sub r9, 1
jae 0x18000174f
mov eax, 0x10
call entry0
sub rsp, rax
mov r10, rsp
cmp dword [0x180020a6c], 0xa
jl 0x1800018df
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800018df
cmp edi, 0xa
jl 0x1800017ef
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
jne 0x180001a64
mov eax, 3
mov rcx, r8
mov dl, byte [r8]
mov byte [r10], dl
mov edi, dword [0x180020a74]
mov ebx, dword [0x180020a78]
lea esi, [rdi - 1]
imul esi, edi
and esi, 1
cmp ebx, 0xa
jl 0x18000182d
test esi, esi
je 0x18000182d
cmp ebx, 0xa
jl 0x18000184d
lea ebx, [rdi - 1]
imul ebx, edi
and ebx, 1
jne 0x18000186a
jmp 0x18000184d
cmp ebx, 0xa
jl 0x18000183a
test esi, esi
jne 0x1800019a8
add rcx, 1
add r10, 1
sub rax, 1
jb 0x18000186f
movzx edx, byte [rcx]
jmp 0x1800017fa
mov byte [r10], dl
cmp dword [0x180020a78], 0xa
jl 0x1800017fa
mov ebx, dword [0x180020a74]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
je 0x1800017fa
mov byte [r10], dl
jmp 0x18000184d
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
lea ecx, [rdi - 1]
imul ecx, edi
and ecx, 1
cmp ebx, 0xa
jl 0x180001895
test ecx, ecx
jne 0x180001a62
mov r9d, 3
mov rsi, r8
cmp ebx, 0xa
jl 0x18000174f
mov rsi, r8
test ecx, ecx
je 0x18000174f
jmp 0x1800019aa
mov byte [rax], cl
cmp dword [0x180020a78], 0xa
jl 0x180001751
mov edx, dword [0x180020a74]
lea ebx, [rdx - 1]
imul ebx, edx
and ebx, 1
je 0x180001751
mov byte [rax], cl
jmp 0x1800018b7
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
cmp edi, 0xa
jl 0x180001109
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x180001109
jmp 0x180001100
jmp 0x180001910
jmp 0x180001920
jmp 0x180001930
jmp 0x180001940
jmp 0x180001950
jmp 0x180001960
jmp 0x180001970
jmp 0x180001980
jmp 0x180001990
jmp 0x1800019a0
jmp 0x1800019a2
jmp 0x1800019a4
jmp 0x1800019a6
jmp 0x1800019a8
jmp 0x1800019aa
mov r15d, dword [r10]
test r15, r15
je 0x180001acf
xor ecx, ecx
cmp r15d, 0x10
jb 0x180001aa1
lea rax, [r15 - 1]
cmp rax, 0x400
jae 0x180001aa1
mov ecx, r15d
and ecx, 0xfffffff0
lea rdx, [rcx - 0x10]
mov rax, rdx
shr rax, 4
add rax, 1
mov r8d, eax
and r8d, 1
test rdx, rdx
je 0x180001a68
mov rdx, r8
sub rdx, rax
xor esi, esi
lea r10, section..data
movaps xmm0, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
mov eax, esi
and eax, 0x3e0
movups xmm1, xmmword [rax + r10 + 4]
movups xmm2, xmmword [rsi + r10 + 0x404]
xorps xmm2, xmm1
movups xmm1, xmmword [rsi + r10 + 0x414]
xorps xmm2, xmm0
movups xmmword [rsi + r10 + 0x404], xmm2
lea eax, [rsi + 0x10]
and eax, 0x3f0
movups xmm2, xmmword [rax + r10 + 4]
xorps xmm1, xmm0
xorps xmm1, xmm2
movups xmmword [rsi + r10 + 0x414], xmm1
add rsi, 0x20
add rdx, 2
jne 0x180001a0b
jmp 0x180001a6a
jmp 0x180001a62
jmp 0x180001a64
jmp 0x180001a66
xor esi, esi
test r8, r8
je 0x180001a9c
mov eax, esi
and eax, 0x3f0
lea rdx, section..data
movups xmm0, xmmword [rax + rdx + 4]
movups xmm1, xmmword [rsi + rdx + 0x404]
xorps xmm1, xmm0
xorps xmm1, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
movups xmmword [rsi + rdx + 0x404], xmm1
cmp rcx, r15
je 0x180001acf
lea rax, section..data
mov edx, ecx
and edx, 0x3ff
movzx edx, byte [rdx + rax + 4]
xor dl, byte [rcx + rax + 0x404]
xor dl, 0xc
mov byte [rcx + rax + 0x404], dl
add rcx, 1
cmp rcx, r15
jb 0x180001aa8
cmp edi, 0xa
jl 0x180001ae2
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x180001ae2
nop
jmp 0x180001ae0
lea r14, section..data
lea r8, [r15 + r14]
add r8, 0x404
lea r10, [r15 + r14]
add r10, 0x404
mov r11d, 3
mov rax, r9
mov rcx, r10
mov bl, byte [r10]
nop
mov byte [rax], bl
mov esi, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea edi, [rsi - 1]
imul edi, esi
and edi, 1
cmp edx, 0xa
jl 0x180001b42
test edi, edi
je 0x180001b42
cmp edx, 0xa
jl 0x180001b70
lea edx, [rsi - 1]
imul edx, esi
and edx, 1
jne 0x180001b8c
jmp 0x180001b70
cmp edx, 0xa
jl 0x180001b4f
test edi, edi
jne 0x180001c70
add rcx, 1
add rax, 1
sub r11, 1
jb 0x180001b90
movzx ebx, byte [rcx]
jmp 0x180001b10
mov byte [rax], bl
cmp dword [0x180020a78], 0xa
jl 0x180001b10
mov edx, dword [0x180020a74]
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
je 0x180001b10
mov byte [rax], bl
jmp 0x180001b70
cmp dword [0x180020a6c], 0xa
jl 0x180001c84
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001c84
cmp edx, 0xa
jl 0x180001bc6
lea eax, [rsi - 1]
imul eax, esi
and eax, 1
jne 0x180001c82
mov r11d, 3
mov rax, r9
mov rcx, r8
mov dl, byte [r8]
nop word cs:[rax + rax]
nop
mov byte [rax], dl
mov esi, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea ebx, [rsi - 1]
imul ebx, esi
and ebx, 1
cmp edi, 0xa
jl 0x180001c12
test ebx, ebx
je 0x180001c12
cmp edi, 0xa
jl 0x180001c30
lea edi, [rsi - 1]
imul edi, esi
and edi, 1
jne 0x180001c4c
jmp 0x180001c30
cmp edi, 0xa
jl 0x180001c1b
test ebx, ebx
jne 0x180001c80
add rcx, 1
add rax, 1
sub r11, 1
jb 0x180001c50
movzx edx, byte [rcx]
jmp 0x180001be0
mov byte [rax], dl
cmp dword [0x180020a78], 0xa
jl 0x180001be0
mov esi, dword [0x180020a74]
lea edi, [rsi - 1]
imul edi, esi
and edi, 1
je 0x180001be0
mov byte [rax], dl
jmp 0x180001c30
cmp edi, 0xa
jl 0x180001aff
lea eax, [rsi - 1]
imul eax, esi
and eax, 1
je 0x180001aff
jmp 0x180001ae0
jmp 0x180001c70
jmp 0x180001c80
jmp 0x180001c82
lea rax, [r10 + 4]
mov qword [rbp - 8], rax
mov r9d, dword [r9]
test r9, r9
je 0x180001d08
xor eax, eax
cmp r9d, 0x20
jb 0x180001cdc
lea rcx, [r9 - 1]
cmp rcx, 0x400
lea r14, section..data
jae 0x180001ce3
lea rcx, [r9 + r14]
add rcx, 4
cmp qword [rbp - 8], rcx
jae 0x180002327
lea rcx, [r10 + r9]
add rcx, 4
lea rdx, str.qbEBGdlIdJnfxQRQnLhhTOniQYpKtvBZbYLwvsfQbHQDQocuyGcTOYUdHVHIFTyuRSxrlRVkadgEaIzpRtFxXFPhYweOgxPmlQxRaJySXiztBkJbSztWazpbayzyrIKUMOiSdmEzUbwcKcfOHpeIvsKYEkZDYYYPfVfmznDwvWHCHzKsXRKYxcOtfbtlCrmGYggkmbEjMXdrqLUlxWsakSGRAijcYmFhIILVdVRRhWoHzCxYBhWqEEzZvffzVMIMEbEQDIuIVYgjQLmQgtWtWFukudexvuxbkUhrkMUeYXfZJCyGLmhcLnwViCMISJWgbpaPjwQFSyZawQTyVfCBzWeoAqUoUlzwKbyReHHxgyhdFTDwRGQzVzRbqVdRCdeUVddbSoTwvemWIaltmmnucudcAhaOIragvMaSKLQZZMEkUGRKwGAJrzHuGbGSwgCUfILHKXRnhJnVpeXZpLRIzOVLMwfSRCYETfSJOTmYnqXWsMCxqnjAfifUdYMSJpwnMJkefwMaPuhEPCbyCKnpzHYPQWfQjYgErOqSmiEVpuYCiUPBEpwAXIiCraXGOpgUnzWwDzUqvfoVTJHnjEQaXpRWdCkfOvzFoLZgQYPeqbEgivTyDQIAVycOxnBTqDLTliFfzfqFQwLcDaldhBAKzorgDAPxuYQUZljZYWzblWFVZZTERCcFmLLFfACTorHecemKwzPBaouTFpxPGXhGAugDmldtFxfXYkakuTFbjfZYZzDxHDvEzTwXPSpMsDaHUQxILHRZQnufZDogDAklJKznhUWenYfAZVOpewoeDsWfoEdtHhxdwcgQmfrTWxHYDlOFyrLGLnciWftaJgXHuAcWGxDcRSRebPCbmzvAfGxSmIhVGrdseLaEwPWslYLFoVTVABASEuziwUKGXXVvpsHyRGVzkIZVTejvqgJrILPzaTUSjVrakCesDOicHPgzUkJkWYzqVdeeoLwWyusjpBtIDqFwtMGaaoMlbLZpXGveWefPeUktSzCxIgRBvVX
cmp rcx, rdx
jbe 0x180002327
xor eax, eax
lea r14, section..data
lea rcx, [r15 + r14]
add rcx, 0x408
mov edx, eax
and edx, 0x3ff
movzx edx, byte [rdx + r14 + 4]
xor byte [rcx + rax], dl
add rax, 1
cmp rax, r9
jb 0x180001cee
cmp dword [0x180020a7c], 0xa
jl 0x180001d24
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001d24
jmp 0x180001d22
add r15, 0x408
movsxd rax, dword [0x180004440]
add rax, r14
add rax, 0x404
mov qword [rbp - 0x10], rax
mov r12, qword [rbp - 8]
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001d43
mov qword [rbp], r12
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001d53
mov r13, r12
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001d62
mov qword [rbp - 0x28], r13
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001d71
mov rbx, r13
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001d7f
mov r14, rbx
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001d8b
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180001dc7
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001dfa
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002319
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
mov esi, dword [rdi]
add rsi, r9
mov rdx, r12
movzx ecx, byte [rdx]
movzx eax, byte [rsi]
test cl, cl
je 0x180001e2b
add rdx, 1
add rsi, 1
cmp cl, al
je 0x180001e15
cmp cl, al
je 0x180001e39
add rdi, 4
add r10, 2
jmp 0x180001e0d
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, rbx
call r9
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180001e73
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001ea6
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000231b
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov edi, dword [r10 + rcx + 0x24]
add rdx, r10
add rdi, r10
mov esi, dword [rdx]
add rsi, r10
mov rax, r13
movzx ebx, byte [rax]
movzx ecx, byte [rsi]
test bl, bl
je 0x180001ed7
add rax, 1
add rsi, 1
cmp bl, cl
je 0x180001ec1
cmp bl, cl
je 0x180001ee5
add rdx, 4
add rdi, 2
jmp 0x180001eb9
movzx eax, word [rdi]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r14
mov r8, r14
call r10
add rsp, 0x10
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180001f48
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001f7b
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000231d
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add rdx, r10
add r9, r10
lea rcx, section..data
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
lea rax, [r15 + rsi]
movzx eax, byte [rcx + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x180001fb4
add rsi, 1
cmp al, bl
je 0x180001f9c
cmp al, bl
je 0x180001fc2
add rdx, 4
add r9, 2
jmp 0x180001f95
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp - 0x10]
mov edx, dword [rax + 0x50]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
mov r13, rax
mov edx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
cmp eax, 0xa
jl 0x180002416
test ecx, ecx
je 0x180002416
movsxd rax, dword [0x180004440]
mov qword [rbp - 0x10], rax
cmp dword [0x180020a7c], 0xa
mov r12, qword [rbp - 8]
jl 0x180002047
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
mov r12, qword [rbp - 8]
and ecx, 1
jne 0x18000231f
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180002047
mov qword [rbp], r12
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180002057
mov r13, r12
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180002066
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180002071
mov rdi, r13
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x18000207f
mov r14, rdi
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x18000208b
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x1800020c7
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800020fa
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002321
add r8, r9
mov esi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rsi, r9
add r10, r9
mov edx, dword [rsi]
add rdx, r9
mov rcx, r12
movzx eax, byte [rcx]
movzx ebx, byte [rdx]
test al, al
je 0x18000212b
add rcx, 1
add rdx, 1
cmp al, bl
je 0x180002115
cmp al, bl
je 0x180002139
add rsi, 4
add r10, 2
jmp 0x18000210d
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, rdi
call r9
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180002173
movsxd rax, dword [r10 + 0x3c]
mov eax, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rax + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800021a6
mov ecx, dword [0x180020a90]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180002323
add r8, r10
mov edi, dword [r10 + rax + 0x20]
mov esi, dword [r10 + rax + 0x24]
add rdi, r10
add rsi, r10
mov eax, dword [rdi]
add rax, r10
mov rbx, r13
movzx ecx, byte [rbx]
movzx edx, byte [rax]
test cl, cl
je 0x1800021d7
add rbx, 1
add rax, 1
cmp cl, dl
je 0x1800021c1
cmp cl, dl
je 0x1800021e5
add rdi, 4
add rsi, 2
jmp 0x1800021b9
movzx eax, word [rsi]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r14
mov r8, r14
call r10
add rsp, 0x10
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180002248
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000227b
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002325
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
lea r14, section..data
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
lea rax, [r15 + rsi]
movzx eax, byte [r14 + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x1800022b5
add rsi, 1
cmp al, bl
je 0x18000229c
cmp al, bl
je 0x1800022c3
add rdx, 4
add rcx, 2
jmp 0x180002295
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp - 0x10]
mov edx, dword [rax + r14 + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
cmp dword [0x180020a7c], 0xa
jl 0x180001d2b
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001d2b
jmp 0x180001d22
jmp 0x180002319
jmp 0x18000231b
jmp 0x18000231d
jmp 0x18000231f
jmp 0x180002321
jmp 0x180002323
jmp 0x180002325
mov eax, r9d
and eax, 0xffffffe0
lea rbx, [rax - 0x20]
mov rcx, rbx
shr rcx, 5
add rcx, 1
mov r8d, ecx
and r8d, 1
test rbx, rbx
je 0x1800023c5
lea rdx, section..data
lea rdi, [r15 + rdx]
add rdi, 0x438
mov rbx, r8
sub rbx, rcx
xor esi, esi
mov ecx, esi
and ecx, 0x3c0
movups xmm0, xmmword [rcx + rdx + 4]
movups xmm1, xmmword [rcx + rdx + 0x14]
movups xmm2, xmmword [rdi + rsi - 0x30]
xorps xmm2, xmm0
movups xmm0, xmmword [rdi + rsi - 0x20]
xorps xmm0, xmm1
movups xmm1, xmmword [rdi + rsi - 0x10]
movups xmm3, xmmword [rdi + rsi]
movups xmmword [rdi + rsi - 0x30], xmm2
movups xmmword [rdi + rsi - 0x20], xmm0
lea ecx, [rsi + 0x20]
and ecx, 0x3e0
movups xmm0, xmmword [rcx + rdx + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rcx + rdx + 0x14]
xorps xmm1, xmm3
movups xmmword [rdi + rsi - 0x10], xmm0
movups xmmword [rdi + rsi], xmm1
add rsi, 0x40
add rbx, 2
jne 0x180002362
jmp 0x1800023c7
xor esi, esi
test r8, r8
je 0x180002401
mov ecx, esi
and ecx, 0x3e0
lea rdx, section..data
movups xmm0, xmmword [rcx + rdx + 4]
movups xmm1, xmmword [rcx + rdx + 0x14]
mov rcx, qword [rbp - 8]
movups xmm2, xmmword [rcx + rsi]
xorps xmm2, xmm0
movups xmm0, xmmword [rcx + rsi + 0x10]
xorps xmm0, xmm1
movups xmmword [rcx + rsi], xmm2
movups xmmword [rcx + rsi + 0x10], xmm0
cmp rax, r9
lea r14, section..data
je 0x180001d08
jmp 0x180001ce3
cmp eax, 0xa
jl 0x180002421
test ecx, ecx
je 0x180002421
jmp 0x18000241f
mov rcx, qword [rbp - 0x10]
lea r8, [rcx + 0x108]
xor r9d, r9d
mov rcx, qword [rbp - 0x10]
movzx ecx, word [rcx + 6]
cmp r9, rcx
jae 0x180002539
cmp dword [0x180020a78], 0xa
jl 0x18000245e
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002535
lea rcx, [r9 + r9*4]
mov eax, dword [r8 + rcx*8 + 0xc]
mov r10d, dword [r8 + rcx*8 + 0x10]
mov ecx, dword [r8 + rcx*8 + 0x14]
lea rdx, section..data
lea rdi, [rcx + rdx]
add rdi, 0x404
mov rcx, r13
add rax, r13
sub r10, 1
jb 0x1800024fb
movzx ecx, byte [rdi]
mov byte [rax], cl
mov edx, dword [0x180020a74]
mov ecx, dword [0x180020a78]
lea ebx, [rdx - 1]
imul ebx, edx
and ebx, 1
cmp ecx, 0xa
jl 0x1800024e8
test ebx, ebx
je 0x1800024e8
cmp ecx, 0xa
jl 0x1800024c2
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
jne 0x1800024e1
movzx ecx, byte [rdi]
mov byte [rax], cl
cmp dword [0x180020a78], 0xa
jl 0x18000248f
mov ecx, dword [0x180020a74]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x18000248f
movzx ecx, byte [rdi]
mov byte [rax], cl
jmp 0x1800024c2
add rdi, 1
add rax, 1
cmp ecx, 0xa
jl 0x180002489
test ebx, ebx
je 0x180002489
jmp 0x180002533
mov edx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
cmp eax, 0xa
jl 0x180002519
test ecx, ecx
jne 0x180002537
add r9, 1
cmp eax, 0xa
jl 0x18000242f
test ecx, ecx
je 0x18000242f
jmp 0x18000241f
jmp 0x180002533
jmp 0x180002535
jmp 0x180002537
mov rbx, qword [rbp - 0x10]
mov ecx, dword [rbx + 0xb0]
mov r11, r13
add rcx, r13
sub r11, qword [rbx + 0x30]
movabs r8, 0x1fffffff8
jmp 0x18000255f
mov ebx, dword [rcx + 4]
add rcx, rbx
lea edi, [rdx - 1]
imul edi, edx
test dil, 1
sete r9b
cmp eax, 0xa
setl bl
or bl, r9b
test bl, bl
je 0x180002576
cmp dword [rcx], 0
je 0x18000273b
mov ebx, dword [rcx + 4]
cmp rbx, 8
jb 0x180002719
add rbx, r8
shr rbx, 1
test ebx, ebx
je 0x180002719
mov r9d, ebx
mov bl, 1
xor r10d, r10d
test bl, 1
jne 0x1800025d7
jmp 0x180002733
add r10, 1
test sil, 1
sete sil
cmp eax, 0xa
setl bl
or bl, sil
cmp r10, r9
je 0x180002715
test bl, 1
je 0x180002733
movzx ebx, word [rcx + r10*2 + 8]
mov esi, ebx
shr esi, 0xc
mov edi, ebx
and edi, 0xfff
cmp ebx, 0xa000
jae 0x1800026a1
cmp esi, 3
jne 0x1800026f9
mov eax, dword [rcx]
mov rdx, r13
lea rax, [rax*4]
add rax, r13
add dword [rax + rdi*4], r11d
mov edx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x1800026f9
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
je 0x1800026f9
mov rsi, r13
lea rdi, [rdi*4]
add rdi, r13
cmp eax, 0xa
jl 0x180002655
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
jne 0x180002675
mov eax, dword [rcx]
add dword [rdi + rax*4], r11d
cmp dword [0x180020a6c], 0xa
jl 0x18000267d
mov eax, dword [0x180020a70]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x18000267d
mov eax, dword [rcx]
add dword [rdi + rax*4], r11d
jmp 0x180002655
mov eax, dword [rcx]
add dword [rdi + rax*4], r11d
mov edx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x1800026f9
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
jne 0x180002645
jmp 0x1800026f9
cmp esi, 0xa
jne 0x1800026f9
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
cmp eax, 0xa
jl 0x1800026b8
test esi, esi
jne 0x180002737
mov edi, edi
cmp eax, 0xa
jl 0x1800026d0
test esi, esi
je 0x1800026d0
mov rax, r13
lea rbx, [rdi + r13]
mov eax, dword [rcx]
add qword [rbx + rax], r11
mov eax, dword [rcx]
mov rdx, r13
lea rbx, [rdi + r13]
add qword [rax + rbx], r11
mov edx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x1800026f9
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
jne 0x1800026ca
lea esi, [rdx - 1]
imul esi, edx
cmp eax, 0xa
jl 0x1800025b0
mov edi, esi
and edi, 1
je 0x1800025b0
jmp 0x180002735
test bl, bl
je 0x180002739
cmp eax, 0xa
jl 0x180002559
lea ebx, [rdx - 1]
imul ebx, edx
and ebx, 1
je 0x180002559
jmp 0x180002731
jmp 0x180002733
jmp 0x180002735
jmp 0x180002737
jmp 0x180002739
cmp eax, 0xa
jl 0x180002747
and edi, 1
je 0x180002747
jmp 0x180002745
mov rcx, r13
lea rax, [r13 + 2]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x10]
mov eax, dword [rax + 0x90]
add rax, r13
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
mov r14d, dword [rax + 0xc]
test r14, r14
je 0x180002ba2
mov rax, r13
add r14, r13
jmp 0x180002794
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
call r9
add rsp, 0x20
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x1800027c6
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800027f9
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002b96
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdi, r9
add rcx, r9
mov esi, dword [rdi]
add rsi, r9
mov rbx, r12
movzx eax, byte [rbx]
movzx edx, byte [rsi]
test al, al
je 0x18000282a
add rbx, 1
add rsi, 1
cmp al, dl
je 0x180002814
cmp al, dl
je 0x180002838
add rdi, 4
add rcx, 2
jmp 0x18000280c
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
call r9
add rsp, 0x20
mov r15, rax
mov eax, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180002921
test edx, edx
je 0x180002921
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x1800028ab
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800028de
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002b98
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdi, r9
add rcx, r9
mov esi, dword [rdi]
add rsi, r9
mov rbx, r12
movzx eax, byte [rbx]
movzx edx, byte [rsi]
test al, al
je 0x18000290f
add rbx, 1
add rsi, 1
cmp al, dl
je 0x1800028f9
cmp al, dl
je 0x18000277c
add rdi, 4
add rcx, 2
jmp 0x1800028f1
mov rbx, qword [rbp - 0x18]
mov edi, dword [rbx]
mov rbx, r13
mov qword [rbp - 0x20], rdi
mov r14, qword [r13 + rdi]
test r14, r14
je 0x180002b6b
mov rdx, r13
add qword [rbp - 0x20], r13
mov rbx, qword [rbp - 0x18]
mov ebx, dword [rbx + 0x10]
add rbx, r13
mov qword [rbp - 8], rbx
jmp 0x180002970
mov rbx, qword [rbp - 0x20]
add rbx, 8
add qword [rbp - 8], 8
mov qword [rbp - 0x20], rbx
mov r14, qword [rbx]
test r14, r14
je 0x180002b6b
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp ecx, 0xa
setl al
or al, dl
test r14, r14
js 0x18000299e
test al, al
je 0x180002b9e
add r14, qword [rbp - 0x30]
test al, al
jne 0x1800029b2
jmp 0x180002a9f
test al, al
je 0x18000299e
test al, al
je 0x18000299e
movzx r14d, r14w
test al, al
je 0x180002a9f
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x1800029e4
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002a17
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002b9a
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov edi, dword [r9 + rcx + 0x24]
add rdx, r9
add rdi, r9
mov esi, dword [rdx]
add rsi, r9
mov rax, qword [rbp - 0x28]
movzx ebx, byte [rax]
movzx ecx, byte [rsi]
test bl, bl
je 0x180002a49
add rax, 1
add rsi, 1
cmp bl, cl
je 0x180002a33
cmp bl, cl
je 0x180002a57
add rdx, 4
add rdi, 2
jmp 0x180002a2a
movzx eax, word [rdi]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
call r9
add rsp, 0x20
mov rcx, qword [rbp - 8]
mov qword [rcx], rax
mov eax, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180002953
test edx, edx
je 0x180002953
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002bd0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180002ad1
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002b04
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002b9c
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov edi, dword [r9 + rcx + 0x24]
add rdx, r9
add rdi, r9
mov esi, dword [rdx]
add rsi, r9
mov rax, qword [rbp - 0x28]
movzx ebx, byte [rax]
movzx ecx, byte [rsi]
test bl, bl
je 0x180002b36
add rax, 1
add rsi, 1
cmp bl, cl
je 0x180002b20
cmp bl, cl
je 0x180002b44
add rdx, 4
add rdi, 2
jmp 0x180002b17
movzx eax, word [rdi]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
mov rdx, r14
call r9
add rsp, 0x20
mov rcx, qword [rbp - 8]
mov qword [rcx], rax
jmp 0x1800029b2
cmp ecx, 0xa
jl 0x180002b74
test edx, edx
jne 0x180002ba0
add qword [rbp - 0x18], 0x14
cmp ecx, 0xa
jl 0x180002763
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002763
jmp 0x180002745
jmp 0x180002b96
jmp 0x180002b98
jmp 0x180002b9a
jmp 0x180002b9c
jmp 0x180002b9e
jmp 0x180002ba0
mov rax, qword [rbp - 0x10]
mov eax, dword [rax + 0x28]
mov rcx, r13
add rcx, rax
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
jmp rcx