Function at 0x180001000
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, 0x68
cmp dword [0x180020a64], 0xa
jl 0x180001032
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001032
nop word [rax + rax]
jmp 0x180001030
mov dl, byte [section..data]
mov byte [rsp + 0x34], dl
mov ebp, dword [0x180020a68]
mov ecx, dword [0x180020a64]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x180001088
test eax, eax
je 0x180001088
mov ebp, dword [0x180020a68]
mov ecx, dword [0x180020a64]
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 0x180001080
mov byte [rsp + 0x34], dl
cmp ecx, 0xa
jl 0x180001095
test eax, eax
jne 0x1800011c0
mov dl, byte [0x180004001]
mov byte [rsp + 0x35], dl
mov ebp, dword [0x180020a68]
mov ecx, dword [0x180020a64]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x1800010e8
test eax, eax
je 0x1800010e8
mov ebp, dword [0x180020a68]
mov ecx, dword [0x180020a64]
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 0x1800010e0
mov byte [rsp + 0x35], dl
cmp ecx, 0xa
jl 0x1800010f5
test eax, eax
jne 0x1800011c0
mov dl, byte [0x180004002]
mov byte [rsp + 0x36], dl
mov ebp, dword [0x180020a68]
mov ecx, dword [0x180020a64]
lea eax, [rbp - 1]
imul eax, ebp
and eax, 1
cmp ecx, 0xa
jl 0x180001148
test eax, eax
je 0x180001148
mov ebp, dword [0x180020a68]
mov ecx, dword [0x180020a64]
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 0x180001140
mov byte [rsp + 0x36], dl
cmp ecx, 0xa
jl 0x180001151
test eax, eax
jne 0x1800011c0
mov bl, byte [0x180004003]
mov byte [rsp + 0x37], bl
mov esi, dword [0x180020a68]
mov r10d, dword [0x180020a64]
lea edx, [rsi - 1]
imul edx, esi
and edx, 1
cmp r10d, 0xa
jl 0x1800011a8
test edx, edx
je 0x1800011a8
mov esi, dword [0x180020a68]
mov r10d, dword [0x180020a64]
lea edx, [rsi - 1]
imul edx, esi
and edx, 1
sete al
cmp r10d, 0xa
setl cl
or cl, al
nop dword [rax]
test cl, cl
je 0x1800011a0
mov byte [rsp + 0x37], bl
cmp r10d, 0xa
jl 0x1800011c2
test edx, edx
je 0x1800011c2
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x1800011c0
cmp dword [0x180020a6c], 0xa
mov r15d, dword [rsp + 0x34]
jl 0x1800011f2
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800011f2
nop word cs:[rax + rax]
nop dword [rax + rax]
jmp 0x1800011f0
test r15d, r15d
je 0x180001366
xor edx, edx
cmp r15d, 0x10
jb 0x1800012e0
lea rcx, [r15 - 1]
cmp rcx, 0x400
jae 0x1800012e0
mov edx, r15d
and edx, 0xfffffff0
lea rcx, [rdx - 0x10]
mov rbp, rcx
shr rbp, 4
add rbp, 1
mov r8d, ebp
and r8d, 1
test rcx, rcx
je 0x1800012a2
mov rbx, r8
sub rbx, rbp
xor ebp, ebp
lea rdi, section..data
movaps xmm0, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
mov ecx, ebp
and ecx, 0x3e0
movups xmm1, xmmword [rcx + rdi + 4]
movups xmm2, xmmword [rbp + rdi + 0x404]
xorps xmm2, xmm1
movups xmm1, xmmword [rbp + rdi + 0x414]
xorps xmm2, xmm0
movups xmmword [rbp + rdi + 0x404], xmm2
lea ecx, [rbp + 0x10]
and ecx, 0x3f0
movups xmm2, xmmword [rcx + rdi + 4]
xorps xmm1, xmm0
xorps xmm1, xmm2
movups xmmword [rbp + rdi + 0x414], xmm1
add rbp, 0x20
add rbx, 2
jne 0x18000124f
jmp 0x1800012a4
xor ebp, ebp
test r8, r8
je 0x1800012d7
mov ecx, ebp
and ecx, 0x3f0
lea rbx, section..data
movups xmm0, xmmword [rcx + rbx + 4]
movups xmm1, xmmword [rbp + rbx + 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 [rbp + rbx + 0x404], xmm1
cmp rdx, r15
je 0x180001366
mov rbp, rdx
not rbp
test r15b, 1
je 0x180001314
mov ecx, edx
and ecx, 0x3f0
lea rbx, section..data
mov cl, byte [rcx + rbx + 4]
xor cl, byte [rdx + rbx + 0x404]
xor cl, 0xc
mov byte [rdx + rbx + 0x404], cl
or rdx, 1
add rbp, r15
je 0x180001366
lea rbp, section..data
mov ecx, edx
and ecx, 0x3ff
movzx ecx, byte [rcx + rbp + 4]
xor cl, byte [rdx + rbp + 0x404]
xor cl, 0xc
mov byte [rdx + rbp + 0x404], cl
lea ecx, [rdx + 1]
and ecx, 0x3ff
movzx ecx, byte [rcx + rbp + 4]
xor cl, byte [rdx + rbp + 0x405]
xor cl, 0xc
mov byte [rdx + rbp + 0x405], cl
add rdx, 2
cmp r15, rdx
jne 0x180001320
cmp r10d, 0xa
jl 0x180001382
lea ecx, [rsi - 1]
imul ecx, esi
and ecx, 1
je 0x180001382
nop word [rax + rax]
jmp 0x180001380
lea r11, section..data
lea r14, [r15 + r11]
add r14, 0x404
mov r9d, dword [0x180020a68]
mov edi, dword [0x180020a64]
lea edx, [r9 - 1]
imul edx, r9d
and edx, 1
sete cl
cmp edi, 0xa
setl bl
or bl, cl
mov ecx, dword [0x180020a70]
lea ebp, [rcx - 1]
imul ebp, ecx
test bpl, 1
sete cl
cmp dword [0x180020a6c], 0xa
setl r8b
or r8b, cl
cmp r10d, 0xa
jl 0x1800013ed
lea ecx, [rsi - 1]
imul ecx, esi
and ecx, 1
jne 0x180001630
mov al, byte [r14]
mov byte [rsp + 0x30], al
test bl, bl
jne 0x180001400
test bl, bl
je 0x1800013f8
mov byte [rsp + 0x30], al
cmp edi, 0xa
jl 0x18000140d
test edx, edx
jne 0x180001630
mov al, byte [r14 + 1]
mov byte [rsp + 0x31], al
test bl, bl
jne 0x180001421
test bl, bl
je 0x180001419
mov byte [rsp + 0x31], al
cmp edi, 0xa
jl 0x18000142e
test edx, edx
jne 0x180001630
mov al, byte [r14 + 2]
mov byte [rsp + 0x32], al
test bl, bl
jne 0x180001442
test bl, bl
je 0x18000143a
mov byte [rsp + 0x32], al
cmp edi, 0xa
jl 0x18000144f
test edx, edx
jne 0x180001630
mov al, byte [r14 + 3]
mov byte [rsp + 0x33], al
test bl, bl
jne 0x180001463
test bl, bl
je 0x18000145b
mov byte [rsp + 0x33], al
cmp edi, 0xa
jl 0x180001470
test edx, edx
jne 0x180001630
test r8b, r8b
je 0x180001483
jmp 0x180001642
test r8b, r8b
jne 0x1800015eb
cmp edi, 0xa
jl 0x180001490
test edx, edx
jne 0x180001640
mov al, byte [r14]
mov byte [rsp + 0x30], al
test bl, bl
jne 0x1800014a8
nop dword [rax + rax]
test bl, bl
je 0x1800014a0
mov byte [rsp + 0x30], al
cmp edi, 0xa
jl 0x1800014b5
test edx, edx
jne 0x180001620
mov al, byte [r14 + 1]
mov byte [rsp + 0x31], al
test bl, bl
jne 0x1800014d8
nop word cs:[rax + rax]
nop dword [rax + rax]
test bl, bl
je 0x1800014d0
mov byte [rsp + 0x31], al
cmp edi, 0xa
jl 0x1800014e5
test edx, edx
jne 0x180001620
mov al, byte [r14 + 2]
mov byte [rsp + 0x32], al
test bl, bl
jne 0x180001508
nop word cs:[rax + rax]
nop dword [rax + rax]
test bl, bl
je 0x180001500
mov byte [rsp + 0x32], al
cmp edi, 0xa
jl 0x180001515
test edx, edx
jne 0x180001620
mov al, byte [r14 + 3]
mov byte [rsp + 0x33], al
test bl, bl
jne 0x180001538
nop word cs:[rax + rax]
nop dword [rax + rax]
test bl, bl
je 0x180001530
mov byte [rsp + 0x33], al
cmp edi, 0xa
jl 0x180001545
test edx, edx
jne 0x180001620
cmp edi, 0xa
jl 0x180001552
test edx, edx
jne 0x180001610
mov al, byte [r14]
mov byte [rsp + 0x30], al
test bl, bl
jne 0x180001568
nop dword [rax]
test bl, bl
je 0x180001560
mov byte [rsp + 0x30], al
cmp edi, 0xa
jl 0x180001575
test edx, edx
jne 0x180001610
mov al, byte [r14 + 1]
mov byte [rsp + 0x31], al
test bl, bl
jne 0x180001598
nop word cs:[rax + rax]
nop dword [rax + rax]
test bl, bl
je 0x180001590
mov byte [rsp + 0x31], al
cmp edi, 0xa
jl 0x1800015a1
test edx, edx
jne 0x180001610
mov al, byte [r14 + 2]
mov byte [rsp + 0x32], al
test bl, bl
jne 0x1800015b8
nop dword [rax]
test bl, bl
je 0x1800015b0
mov byte [rsp + 0x32], al
cmp edi, 0xa
jl 0x1800015c1
test edx, edx
jne 0x180001610
mov al, byte [r14 + 3]
mov byte [rsp + 0x33], al
test bl, bl
jne 0x1800015d8
nop dword [rax]
test bl, bl
je 0x1800015d0
mov byte [rsp + 0x33], al
cmp edi, 0xa
jl 0x18000147a
test edx, edx
je 0x18000147a
jmp 0x180001610
mov esi, r9d
mov r10d, edi
cmp edi, 0xa
jl 0x1800013d8
mov esi, r9d
mov r10d, edi
test edx, edx
je 0x1800013d8
jmp 0x180001380
jmp 0x180001610
jmp 0x180001620
jmp 0x180001630
jmp 0x180001640
add r14, 4
mov esi, dword [rsp + 0x30]
test rsi, rsi
mov qword [rsp + 0x40], r14
je 0x1800017f9
xor eax, eax
cmp esi, 0x20
jb 0x18000179b
lea rdx, [rsi - 1]
cmp rdx, 0x400
jae 0x18000179b
lea rax, [r15 + r11]
add rax, 0x408
lea rcx, [rsi + r11]
add rcx, 4
cmp rax, rcx
jae 0x1800016b0
lea rax, [rsi + r15]
add rax, r11
add rax, 0x408
lea rcx, str.cWIyyXdqcgBAFRyBIoCPAtFWDkRrzEupfWKbTfiiquWdHwirgKqxJnLapUCQYoutIkwrwwesuiQlvgyWOyZqcWLqzaKGlWdDJZQlSeCwVgldRPnSbrPRqjnfcetQzUyZGhqMyEftwfnxxLjKQOAjznoiPpicoxwhRKePSsFKcEeZFIqDZSDVmOcnZXpqJOgKgqnYOKMyKlxASKWCRPULwKijrydTgTdMpneHKSDmVMJKrRmpDwAIhAFOdxSngjDwCyuzsruDcEkxZtJWyreahWEsoHdmwbQtEcEWDjWDxpyvxjIeIEMoXGOMCtMUegOnciHfYMIQYbecBrPYOApRJlaSYjbAKEnObKGZoQwXsHIaMWbKqbEkqhdAyICIJtWDBijPCavfqEWqSUkfUiCMUlcicJEMFWmuFibyxueVdzIHnbxOvjIEIlrIdgarnyaYIZWpTuOCiEpCffmAsucFLpIYtCIrFjrbhcPOWSfLMnKnLJSccprXluEaQkeSTgmqsvbHvYeEQdaqkqWgrboZCacmgvrRVmvGhoKZSsausHMZkssDAqIvrVjGzJeXrtBmnZVDvazsqrGSlEzhrhwiunfjfgBGymcXvaRaCQblEewMVlujYzCxljHUEbzEOZIDoylfsCTMAYALgoAYCEcLCGBnZQtpYecYyGwZHVHktMnjUmEtKOdmQzPrsAfaZXeYDVVZyWptXoJmaXlPzZRaeaOjGSlkuUBXfqfobdgfVDUmugSAsSdOLQiSPgTiCcxocdFLLHjJWQatOuJzqhKCoXZujsmWxcqsRwebnWWyGOODyQQFOLIiwtDYigEppppETxnDuAGpctAyDmhqCiZjjSfGykpRCJZwxjWeLwrcJlGdrzVaaelvfhDBWYOsRxPQWtzAYdageCdcoOhhtTexeqQQjabzXmvIzwwFBMrtejTVCGmkWvQIHTZGUXhEXBvbuTOsFFWOFFKUCeXIptMkcjCIIGQpdpHRmTgZCohLZblzTwmBGXpwLbsgcBnzmpS
cmp rax, rcx
jbe 0x1800016b0
xor eax, eax
mov r14, qword [rsp + 0x40]
jmp 0x18000179b
mov eax, esi
and eax, 0xffffffe0
lea rcx, [rax - 0x20]
mov rdx, rcx
shr rdx, 5
add rdx, 1
mov r8d, edx
and r8d, 1
test rcx, rcx
je 0x18000174d
lea rdi, section..data
lea rbx, [r15 + rdi]
add rbx, 0x438
mov rbp, r8
sub rbp, rdx
xor edx, edx
mov ecx, edx
and ecx, 0x3c0
movups xmm0, xmmword [rcx + rdi + 4]
movups xmm1, xmmword [rcx + rdi + 0x14]
movups xmm2, xmmword [rbx + rdx - 0x30]
xorps xmm2, xmm0
movups xmm0, xmmword [rbx + rdx - 0x20]
xorps xmm0, xmm1
movups xmm1, xmmword [rbx + rdx - 0x10]
movups xmm3, xmmword [rbx + rdx]
movups xmmword [rbx + rdx - 0x30], xmm2
movups xmmword [rbx + rdx - 0x20], xmm0
lea ecx, [rdx + 0x20]
and ecx, 0x3e0
movups xmm0, xmmword [rcx + rdi + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rcx + rdi + 0x14]
xorps xmm1, xmm3
movups xmmword [rbx + rdx - 0x10], xmm0
movups xmmword [rbx + rdx], xmm1
add rdx, 0x40
add rbp, 2
jne 0x1800016ea
jmp 0x18000174f
xor edx, edx
test r8, r8
je 0x18000178a
mov ecx, edx
and ecx, 0x3e0
lea rbp, section..data
movups xmm0, xmmword [rcx + rbp + 4]
movups xmm1, xmmword [rcx + rbp + 0x14]
mov rcx, qword [rsp + 0x40]
movups xmm2, xmmword [rcx + rdx]
xorps xmm2, xmm0
movups xmm0, xmmword [rcx + rdx + 0x10]
xorps xmm0, xmm1
movups xmmword [rcx + rdx], xmm2
movups xmmword [rcx + rdx + 0x10], xmm0
cmp rax, rsi
lea r11, section..data
mov r14, qword [rsp + 0x40]
je 0x1800017f9
mov rdx, rax
not rdx
test sil, 1
je 0x1800017bc
mov ecx, eax
and ecx, 0x3e0
mov cl, byte [rcx + r11 + 4]
xor byte [r14 + rax], cl
or rax, 1
add rdx, rsi
je 0x1800017f9
lea rdx, [r15 + r11]
add rdx, 0x409
mov ecx, eax
and ecx, 0x3ff
movzx ecx, byte [rcx + r11 + 4]
xor byte [rdx + rax - 1], cl
lea ecx, [rax + 1]
and ecx, 0x3ff
movzx ecx, byte [rcx + r11 + 4]
xor byte [rdx + rax], cl
add rax, 2
cmp rsi, rax
jne 0x1800017cc
cmp dword [0x180020a74], 0xa
jl 0x180001822
mov eax, dword [0x180020a78]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001822
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x180001820
add r15, 0x408
movsxd rbp, dword [0x180004440]
mov rsi, r14
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x180001833
mov r14, rsi
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x18000183f
mov rbx, r14
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x18000184c
mov r12, rbx
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001858
mov rdi, r12
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001867
mov r13, rdi
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001873
mov rcx, rsi
call fcn.180002490
mov r9, rax
cmp dword [0x180020a7c], 0xa
jl 0x1800018a7
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001dd5
mov qword [rsp + 0x58], rbx
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a84], 0xa
jl 0x1800018db
mov eax, dword [0x180020a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001dd7
lea rax, section..data
add rax, rbp
add rax, 0x404
mov qword [rsp + 0x38], rax
add r8, r9
mov ebp, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rbp, r9
add r10, r9
mov edx, dword [rbp]
add rdx, r9
mov rcx, r14
nop dword [rax]
movzx eax, byte [rcx]
movzx ebx, byte [rdx]
test al, al
je 0x180001926
add rcx, 1
add rdx, 1
cmp al, bl
je 0x180001910
cmp al, bl
je 0x180001934
add rbp, 4
add r10, 2
jmp 0x180001903
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rdi
call r9
mov r10, rax
cmp dword [0x180020a7c], 0xa
jl 0x180001966
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001dd9
movsxd rax, dword [r10 + 0x3c]
mov eax, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rax + 0x1c]
cmp dword [0x180020a84], 0xa
jl 0x180001995
mov ecx, dword [0x180020a88]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180001ddb
add r8, r10
mov edx, dword [r10 + rax + 0x20]
mov edi, dword [r10 + rax + 0x24]
add rdx, r10
add rdi, r10
mov eax, dword [rdx]
add rax, r10
mov rbp, r12
movzx ebx, byte [rbp]
movzx ecx, byte [rax]
test bl, bl
je 0x1800019c7
add rbp, 1
add rax, 1
cmp bl, cl
je 0x1800019b0
cmp bl, cl
je 0x1800019d5
add rdx, 4
add rdi, 2
jmp 0x1800019a8
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 r12, rsi
mov rcx, rsi
call fcn.180002490
mov r10, rax
cmp dword [0x180020a7c], 0xa
jl 0x180001a2e
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001ddd
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a84], 0xa
lea rsi, section..data
jl 0x180001a64
mov eax, dword [0x180020a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001ddf
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
lea rax, [r15 + rdi]
movzx eax, byte [rsi + rax]
movzx ebx, byte [rbp + rdi]
test al, al
je 0x180001a99
add rdi, 1
cmp al, bl
je 0x180001a80
cmp al, bl
je 0x180001aa7
add rdx, 4
add rcx, 2
jmp 0x180001a77
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 0x50]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
mov r13, rax
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
cmp ecx, 0xa
jl 0x180001def
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x180001def
movsxd rbx, dword [0x180004440]
cmp dword [0x180020a74], 0xa
mov rdx, qword [rsp + 0x40]
mov rsi, rdx
jl 0x180001b21
mov eax, dword [0x180020a78]
lea ecx, [rax - 1]
imul ecx, eax
mov rsi, rdx
and ecx, 1
jne 0x180001de1
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x180001b21
mov r12, rsi
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001b2d
mov r14, r12
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001b3c
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001b46
mov rdi, r14
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001b53
mov r13, rdi
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001b5f
mov rcx, rsi
call fcn.180002490
mov r9, rax
cmp dword [0x180020a7c], 0xa
jl 0x180001b93
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001de3
mov qword [rsp + 0x38], rbx
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a84], 0xa
jl 0x180001bc7
mov eax, dword [0x180020a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001de5
add r8, r9
mov ebp, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rbp, r9
add r10, r9
mov edx, dword [rbp]
add rdx, r9
mov rcx, r12
nop word cs:[rax + rax]
nop dword [rax]
movzx eax, byte [rcx]
movzx ebx, byte [rdx]
test al, al
je 0x180001c06
add rcx, 1
add rdx, 1
cmp al, bl
je 0x180001bf0
cmp al, bl
je 0x180001c14
add rbp, 4
add r10, 2
jmp 0x180001bda
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rdi
call r9
mov r10, rax
cmp dword [0x180020a7c], 0xa
jl 0x180001c46
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001de7
movsxd rax, dword [r10 + 0x3c]
mov eax, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rax + 0x1c]
cmp dword [0x180020a84], 0xa
jl 0x180001c75
mov ecx, dword [0x180020a88]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180001de9
add r8, r10
mov edi, dword [r10 + rax + 0x20]
mov ebp, dword [r10 + rax + 0x24]
add rdi, r10
add rbp, r10
mov eax, dword [rdi]
add rax, r10
mov rbx, r14
movzx ecx, byte [rbx]
movzx edx, byte [rax]
test cl, cl
je 0x180001ca6
add rbx, 1
add rax, 1
cmp cl, dl
je 0x180001c90
cmp cl, dl
je 0x180001cb4
add rdi, 4
add rbp, 2
jmp 0x180001c88
movzx eax, word [rbp]
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, rsi
call fcn.180002490
mov r10, rax
cmp dword [0x180020a7c], 0xa
jl 0x180001d0b
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001deb
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a84], 0xa
lea rsi, section..data
mov r14, qword [rsp + 0x40]
jl 0x180001d46
mov eax, dword [0x180020a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001ded
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
lea rax, [r15 + rdi]
movzx eax, byte [rsi + rax]
movzx ebx, byte [rbp + rdi]
test al, al
je 0x180001d79
add rdi, 1
cmp al, bl
je 0x180001d60
cmp al, bl
je 0x180001d87
add rdx, 4
add rcx, 2
jmp 0x180001d59
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + rsi + 0x454]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
cmp dword [0x180020a74], 0xa
jl 0x180001829
mov eax, dword [0x180020a78]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001829
jmp 0x180001820
jmp 0x180001dd5
jmp 0x180001dd7
jmp 0x180001dd9
jmp 0x180001ddb
jmp 0x180001ddd
jmp 0x180001ddf
jmp 0x180001de1
jmp 0x180001de3
jmp 0x180001de5
jmp 0x180001de7
jmp 0x180001de9
jmp 0x180001deb
jmp 0x180001ded
mov rax, qword [rsp + 0x38]
cmp word [rax + 6], 0
je 0x180001eca
mov rax, qword [rsp + 0x38]
lea r8, [rax + 0x108]
xor r9d, r9d
cmp dword [0x180020a64], 0xa
jl 0x180001e2c
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001eea
lea rax, [r9 + r9*4]
mov ecx, dword [r8 + rax*8 + 0x14]
lea rdx, section..data
add rcx, rdx
add rcx, 0x404
mov ebp, dword [r8 + rax*8 + 0xc]
mov ebx, dword [r8 + rax*8 + 0x10]
add rbp, r13
sub rbx, 1
jb 0x180001e98
movzx eax, byte [rcx]
mov byte [rbp], al
mov edx, dword [0x180020a68]
mov eax, dword [0x180020a64]
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
cmp eax, 0xa
jl 0x180001e85
test esi, esi
je 0x180001e85
movzx eax, byte [rcx]
mov byte [rbp], al
jmp 0x180001e59
add rcx, 1
add rbp, 1
cmp eax, 0xa
jl 0x180001e53
test esi, esi
je 0x180001e53
jmp 0x180001ee8
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
cmp ecx, 0xa
jl 0x180001eb4
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
jne 0x180001eec
add r9, 1
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 6]
cmp r9, rax
jb 0x180001e0e
mov rax, r13
mov rdx, qword [rsp + 0x38]
sub rax, qword [rdx + 0x30]
cmp ecx, 0xa
jl 0x180001eee
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
je 0x180001eee
jmp 0x180001ee6
jmp 0x180001ee8
jmp 0x180001eea
jmp 0x180001eec
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 0xb0]
cmp dword [r13 + rdx], 0
je 0x1800020f1
add rdx, r13
movabs r8, 0x1fffffff8
mov r10, rdx
jmp 0x180001f2d
mov ebp, dword [r10 + 4]
lea rdx, [r10 + rbp]
cmp dword [r10 + rbp], 0
mov r10, rdx
je 0x1800020f1
mov ebp, dword [r10 + 4]
cmp rbp, 8
jb 0x1800020d1
cmp ecx, 0xa
jl 0x180001f4f
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
jne 0x1800020ef
add rbp, r8
shr rbp, 1
mov r9d, ebp
test r9, r9
je 0x1800020d1
xor r11d, r11d
jmp 0x180001f73
add r11, 1
cmp r11, r9
je 0x1800020d1
movzx edi, word [r10 + r11*2 + 8]
mov esi, edi
shr esi, 0xc
mov ebp, edi
and ebp, 0xfff
cmp edi, 0xa000
jae 0x180001fdc
cmp esi, 3
jne 0x1800020b7
mov ecx, ebp
mov esi, dword [rdx]
lea rbp, [rcx*4]
add rbp, r13
add dword [rbp + rsi*4], eax
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
cmp ecx, 0xa
jl 0x1800020b7
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
je 0x1800020b7
mov ecx, dword [rdx]
add dword [rbp + rcx*4], eax
mov ecx, dword [rdx]
add dword [rbp + rcx*4], eax
jmp 0x180001faa
cmp esi, 0xa
jne 0x1800020b7
mov ecx, dword [rdx]
add rbp, r13
add qword [rcx + rbp], rax
jmp 0x180001ff7
mov ecx, dword [rdx]
add qword [rbp + rcx], rax
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
cmp ecx, 0xa
jl 0x1800020b7
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
je 0x1800020b7
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp ecx, 0xa
jl 0x180002049
test esi, esi
je 0x180002049
mov ecx, dword [rdx]
add qword [rbp + rcx], rax
mov edi, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea esi, [rdi - 1]
imul esi, edi
and esi, 1
test esi, esi
je 0x180002056
cmp ecx, 0xa
jge 0x1800020eb
mov ecx, dword [rdx]
add qword [rbp + rcx], rax
mov ecx, dword [0x180020a6c]
cmp ecx, 0xa
jl 0x180001ff0
mov ebx, dword [0x180020a70]
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
je 0x180001ff0
cmp ecx, 0xa
jl 0x18000208d
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
jne 0x1800020ae
mov ecx, dword [rdx]
add qword [rbp + rcx], rax
cmp dword [0x180020a6c], 0xa
jl 0x180002056
mov ecx, dword [0x180020a70]
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
je 0x180002056
mov ecx, dword [rdx]
add qword [rbp + rcx], rax
jmp 0x18000208d
cmp ecx, 0xa
jl 0x180001f66
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
je 0x180001f66
jmp 0x1800020ed
cmp ecx, 0xa
jl 0x180001f17
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
je 0x180001f17
jmp 0x1800020e9
jmp 0x1800020eb
jmp 0x1800020ed
jmp 0x1800020ef
cmp ecx, 0xa
jl 0x180002103
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x180002103
jmp 0x180002101
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x90]
mov qword [rsp + 0x48], rax
mov esi, dword [r13 + rax + 0xc]
test esi, esi
je 0x18000240f
lea rax, [r13 + 2]
mov qword [rsp + 0x60], rax
add qword [rsp + 0x48], r13
mov rcx, r12
call fcn.180002490
mov r9, rax
cmp dword [0x180020a7c], 0xa
jl 0x180002157
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002482
movsxd rax, dword [r9 + 0x3c]
mov eax, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rax + 0x1c]
cmp dword [0x180020a84], 0xa
jl 0x180002186
mov ecx, dword [0x180020a88]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180002484
mov ecx, esi
add rcx, r13
add r8, r9
mov ebp, dword [r9 + rax + 0x20]
mov r10d, dword [r9 + rax + 0x24]
add rbp, r9
add r10, r9
mov esi, dword [rbp]
add rsi, r9
mov rax, r14
movzx edx, byte [rax]
movzx ebx, byte [rsi]
test dl, dl
je 0x1800021bd
add rax, 1
add rsi, 1
cmp dl, bl
je 0x1800021a7
cmp dl, bl
je 0x1800021cb
add rbp, 4
add r10, 2
jmp 0x18000219e
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
call r9
mov qword [rsp + 0x40], rax
mov edx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
cmp ecx, 0xa
jl 0x180002200
test eax, eax
jne 0x180002486
cmp ecx, 0xa
jl 0x18000220d
test eax, eax
jne 0x180002480
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax]
mov edi, dword [rax + 0x10]
add rdi, r13
add rcx, r13
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
test rax, rax
je 0x1800023f6
mov rcx, qword [rsp + 0x60]
add rcx, rax
test rax, rax
movzx r15d, ax
cmovns r15, rcx
jmp 0x180002260
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, qword [rsp + 0x40]
mov rdx, r15
call r9
mov qword [rdi], rax
mov rcx, r12
call fcn.180002490
mov r9, rax
cmp dword [0x180020a7c], 0xa
jl 0x180002289
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002478
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a84], 0xa
jl 0x1800022b8
mov eax, dword [0x180020a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000247a
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdx, r9
add rcx, r9
mov esi, dword [rdx]
add rsi, r9
mov rbp, qword [rsp + 0x58]
movzx eax, byte [rbp]
movzx ebx, byte [rsi]
test al, al
je 0x1800022ec
add rbp, 1
add rsi, 1
cmp al, bl
je 0x1800022d5
cmp al, bl
je 0x1800022fa
add rdx, 4
add rcx, 2
jmp 0x1800022cb
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, qword [rsp + 0x40]
mov rdx, r15
call r9
mov qword [rdi], rax
mov edx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
cmp ecx, 0xa
jl 0x1800023d6
test eax, eax
je 0x1800023d6
mov rcx, r12
call fcn.180002490
mov r9, rax
cmp dword [0x180020a7c], 0xa
jl 0x180002361
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000247c
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a84], 0xa
jl 0x180002390
mov eax, dword [0x180020a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000247e
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdx, r9
add rcx, r9
mov esi, dword [rdx]
add rsi, r9
mov rbp, qword [rsp + 0x58]
movzx eax, byte [rbp]
movzx ebx, byte [rsi]
test al, al
je 0x1800023c4
add rbp, 1
add rsi, 1
cmp al, bl
je 0x1800023ad
cmp al, bl
je 0x180002248
add rdx, 4
add rcx, 2
jmp 0x1800023a3
add qword [rsp + 0x50], 8
add rdi, 8
cmp ecx, 0xa
jl 0x180002222
test eax, eax
je 0x180002222
jmp 0x180002480
mov rax, qword [rsp + 0x48]
mov esi, dword [rax + 0x20]
add rax, 0x14
mov qword [rsp + 0x48], rax
test esi, esi
jne 0x18000212e
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x28]
add rax, r13
call rax
cmp dword [0x180020a6c], 0xa
jl 0x180002465
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002465
mov rsi, qword [rsp + 0x38]
mov eax, dword [rsi + 0x28]
add rax, r13
call rax
mov eax, dword [rsi + 0x28]
add rax, r13
call rax
cmp dword [0x180020a6c], 0xa
jl 0x180002465
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000243b
xor eax, eax
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x180002478
jmp 0x18000247a
jmp 0x18000247c
jmp 0x18000247e
jmp 0x180002480
jmp 0x180002482
jmp 0x180002484
jmp 0x180002486