Function at 0x1800010f0
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]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180001125
mov ecx, dword [0x180020a70]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180001276
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r8, rsp
cmp edx, 0xa
jl 0x180001165
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x180001250
lea r11, section..data
mov r14d, 4
mov r10, r9
nop word cs:[rax + rax]
nop
mov rdi, r10
lea esi, [rcx - 1]
imul esi, ecx
test sil, 1
sete al
cmp edx, 0xa
setl bl
or bl, al
nop dword [rax + rax]
test bl, bl
je 0x1800011a0
sub r14, 1
jb 0x180001252
mov bl, byte [r11]
add r11, 1
lea r10, [rdi + 1]
mov byte [rdi], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001180
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x180001180
nop word [rax + rax]
cmp edx, 0xa
jl 0x180001230
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x18000124c
jmp 0x180001230
mov byte [rdi], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
cmp edx, 0xa
jl 0x180001180
test esi, esi
jne 0x1800011e0
jmp 0x180001180
mov byte [rdi], bl
cmp dword [0x180020a78], 0xa
jl 0x180001200
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001200
mov byte [rdi], bl
jmp 0x180001230
jmp 0x180001250
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180001512
mov ebx, dword [0x180020a70]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
je 0x180001512
cmp eax, 0xa
jge 0x180001510
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
cmp edx, 0xa
jl 0x1800012af
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x1800014f0
lea r8, section..data
mov r10d, 4
mov r11, r8
nop
mov rdi, r9
lea esi, [rcx - 1]
imul esi, ecx
test sil, 1
sete bl
cmp edx, 0xa
setl al
or al, bl
nop dword [rax + rax]
test al, al
je 0x1800012e0
sub r10, 1
jae 0x180001410
cmp dword [0x180020a6c], 0xa
jl 0x180001131
mov eax, dword [0x180020a70]
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
je 0x180001131
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
cmp edx, 0xa
jl 0x18000132e
and esi, 1
jne 0x180001500
mov edi, 4
mov r10, r8
nop word cs:[rax + rax]
mov rbx, r9
lea esi, [rcx - 1]
imul esi, ecx
test sil, 1
sete r9b
cmp edx, 0xa
setl al
or al, r9b
nop word [rax + rax]
test al, al
je 0x180001360
sub rdi, 1
jb 0x1800014c0
mov al, byte [r10]
add r10, 1
lea r9, [rbx + 1]
mov byte [rbx], al
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001340
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
je 0x180001340
nop word [rax + rax]
cmp edx, 0xa
jl 0x1800013f0
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x18000140c
jmp 0x1800013f0
mov byte [rbx], al
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
cmp edx, 0xa
jl 0x180001340
test esi, esi
jne 0x1800013a0
jmp 0x180001340
mov byte [rbx], al
cmp dword [0x180020a78], 0xa
jl 0x1800013c0
mov ecx, dword [0x180020a74]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x1800013c0
mov byte [rbx], al
jmp 0x1800013f0
mov al, byte [r11]
add r11, 1
lea r9, [rdi + 1]
mov byte [rdi], al
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x1800012c0
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
je 0x1800012c0
nop word cs:[rax + rax]
nop dword [rax + rax]
cmp edx, 0xa
jl 0x1800014a0
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x1800014bc
jmp 0x1800014a0
mov byte [rdi], al
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
cmp edx, 0xa
jl 0x1800012c0
test esi, esi
jne 0x180001450
jmp 0x1800012c0
mov byte [rdi], al
cmp dword [0x180020a78], 0xa
jl 0x180001470
mov ecx, dword [0x180020a74]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x180001470
mov byte [rdi], al
jmp 0x1800014a0
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
mov r10d, 4
mov r11, r8
cmp edx, 0xa
jl 0x1800012c0
mov r11, r8
and esi, 1
je 0x1800012c0
nop
jmp 0x1800014f0
jmp 0x180001500
jmp 0x180001510
mov r12d, dword [r9]
test r12, r12
je 0x180001648
xor r14d, r14d
cmp r12d, 0x10
jb 0x180001616
lea rbx, [r12 - 1]
cmp rbx, 0x400
jae 0x180001616
mov r14d, r12d
and r14d, 0xfffffff0
lea rbx, [r14 - 0x10]
mov rdi, rbx
shr rdi, 4
add rdi, 1
mov r9d, edi
and r9d, 1
test rbx, rbx
je 0x1800015d9
mov r11, r9
sub r11, rdi
xor ebx, ebx
lea r10, section..data
movaps xmm0, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
nop word cs:[rax + rax]
nop
mov edi, ebx
and edi, 0x3e0
movups xmm1, xmmword [rdi + r10 + 4]
movups xmm2, xmmword [rbx + r10 + 0x404]
xorps xmm2, xmm1
movups xmm1, xmmword [rbx + r10 + 0x414]
xorps xmm2, xmm0
movups xmmword [rbx + r10 + 0x404], xmm2
lea edi, [rbx + 0x10]
and edi, 0x3f0
movups xmm2, xmmword [rdi + r10 + 4]
xorps xmm1, xmm0
xorps xmm1, xmm2
movups xmmword [rbx + r10 + 0x414], xmm1
add rbx, 0x20
add r11, 2
jne 0x180001580
jmp 0x1800015db
xor ebx, ebx
test r9, r9
je 0x180001611
mov edi, ebx
and edi, 0x3f0
lea r9, section..data
movups xmm0, xmmword [rdi + r9 + 4]
movups xmm1, xmmword [rbx + r9 + 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 [rbx + r9 + 0x404], xmm1
cmp r14, r12
je 0x180001648
lea rdi, section..data
nop dword [rax]
mov eax, r14d
and eax, 0x3ff
movzx eax, byte [rax + rdi + 4]
xor al, byte [r14 + rdi + 0x404]
xor al, 0xc
mov byte [r14 + rdi + 0x404], al
add r14, 1
cmp r14, r12
jb 0x180001620
cmp edx, 0xa
jl 0x180001662
and esi, 1
je 0x180001662
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x180001660
lea r14, section..data
lea r13, [r12 + r14]
add r13, 0x404
mov r9d, 4
mov rsi, r8
mov r10, r13
mov rdi, rsi
lea ebx, [rcx - 1]
imul ebx, ecx
test bl, 1
sete r11b
cmp edx, 0xa
setl al
or al, r11b
nop dword [rax]
test al, al
je 0x1800016a0
sub r9, 1
jae 0x18000190b
cmp dword [0x180020a6c], 0xa
jl 0x1800019f2
mov eax, dword [0x180020a70]
lea edi, [rax - 1]
imul edi, eax
and edi, 1
je 0x1800019f2
cmp edx, 0xa
jl 0x1800016de
and ebx, 1
jne 0x1800019e0
mov r9d, 4
mov r11, r8
mov r10, r13
nop word [rax + rax]
mov rax, r11
lea edi, [rcx - 1]
imul edi, ecx
test dil, 1
sete r11b
cmp edx, 0xa
setl bl
or bl, r11b
nop word [rax + rax]
test bl, bl
je 0x180001710
sub r9, 1
jae 0x180001810
cmp edx, 0xa
jl 0x18000172c
and edi, 1
jne 0x1800019f0
mov esi, 4
mov r9, r8
mov r10, r13
nop word [rax + rax]
mov rax, r9
lea edi, [rcx - 1]
imul edi, ecx
test dil, 1
sete r9b
cmp edx, 0xa
setl bl
or bl, r9b
nop word [rax + rax]
test bl, bl
je 0x180001760
sub rsi, 1
jb 0x1800018c0
mov bl, byte [r10]
add r10, 1
lea r9, [rax + 1]
mov byte [rax], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001740
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
je 0x180001740
nop word [rax + rax]
cmp edx, 0xa
jl 0x1800017f0
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x18000180c
jmp 0x1800017f0
mov byte [rax], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
cmp edx, 0xa
jl 0x180001740
test edi, edi
jne 0x1800017a0
jmp 0x180001740
mov byte [rax], bl
cmp dword [0x180020a78], 0xa
jl 0x1800017c0
mov ecx, dword [0x180020a74]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x1800017c0
mov byte [rax], bl
jmp 0x1800017f0
mov bl, byte [r10]
add r10, 1
lea r11, [rax + 1]
mov byte [rax], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x1800016f0
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
je 0x1800016f0
nop word cs:[rax + rax]
nop dword [rax + rax]
cmp edx, 0xa
jl 0x1800018a0
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x1800018bc
jmp 0x1800018a0
mov byte [rax], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
cmp edx, 0xa
jl 0x1800016f0
test esi, esi
jne 0x180001850
jmp 0x1800016f0
mov byte [rax], bl
cmp dword [0x180020a78], 0xa
jl 0x180001870
mov ecx, dword [0x180020a74]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x180001870
mov byte [rax], bl
jmp 0x1800018a0
cmp dword [0x180020a6c], 0xa
jl 0x1800019b0
mov eax, dword [0x180020a70]
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
je 0x1800019b0
mov r9d, 4
mov r11, r8
mov r10, r13
cmp edx, 0xa
jl 0x1800016f0
mov r11, r8
mov r10, r13
and edi, 1
je 0x1800016f0
jmp 0x1800019e0
mov bl, byte [r10]
add r10, 1
lea rsi, [rdi + 1]
mov byte [rdi], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001680
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x180001680
nop dword [rax]
cmp edx, 0xa
jl 0x180001990
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x1800019ac
jmp 0x180001990
mov byte [rdi], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
cmp edx, 0xa
jl 0x180001680
test eax, eax
jne 0x180001940
jmp 0x180001680
mov byte [rdi], bl
cmp dword [0x180020a78], 0xa
jl 0x180001960
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001960
mov byte [rdi], bl
jmp 0x180001990
mov r9d, 4
mov rsi, r8
mov r10, r13
cmp edx, 0xa
jl 0x180001680
lea eax, [rcx - 1]
imul eax, ecx
mov rsi, r8
mov r10, r13
and eax, 1
je 0x180001680
jmp 0x180001660
jmp 0x1800019e0
jmp 0x1800019f0
add r13, 4
mov r9d, dword [r8]
test r9, r9
je 0x180001b56
xor eax, eax
cmp r9d, 0x20
jb 0x180001b31
lea rdx, [r9 - 1]
cmp rdx, 0x400
jae 0x180001b31
lea rcx, [r12 + r14]
add rcx, 0x408
lea rdx, [r9 + r14]
add rdx, 4
cmp rcx, rdx
jae 0x180001a58
lea rcx, [r9 + r12]
add rcx, r14
add rcx, 0x408
lea rdx, str.MkgDXliPFWhSLPnxXFDdOZJXMXkzoxURYgpdguMiTiLLzFQRPrQailoccAXwOUrVUOEkhdnCFUCnqTspveCBVemvrfkQMzUthZFUYZYqVaeGiKFUDwPrgitpcAcSjYbTaAMcZGkCBoFEAuUqFPSCZlcKqAzOzISlyzmDcBuizsPTnSbFHztsChltZIrQfEaELXgXxWBOYqBllFZbYOqyrwvseAjMOTMUloReZiIoSfHVOWQfFJBfspnwTWytRMVPBpByqkZtnCnMGDfinpgYccXHOjyyzhrlyjREhLIAXUpcbdAmrxcrOFKrZyqSzfCveACYeYdUwmcDFbTKywevUFuFpSwSwsDQbPVEIsbYYfckBLxjXwtdJMZpROdpXICGnTXaYXcAUUPoSBkZQzrzWWubPeqCBeIVUzbOWWhasUzIDAhoOdoCqiPkIbEaMIMVOQpwzHWlHMmLlSPwoandzDMxgkhbBIHhuTReCdflRfyUJsTiwALrEzDKBIcbPAoVAevpvQyOETTdVaBsFmYoIsBhYpJwsljpePnmuhSwsvChIVIlQJAKKlbLJVrHfYxFlJsaLxJdmZTgppFLpnqbLqBJkJAJoDoXmtAlgOzOFKEvcdrEaOEHFAFxHkEYEyVjmRUdkpRvyfLaELVQCTWZnPTQxXSzmPIWXXZKDruEDFHVDYwGrHkxYPbnjMMMSMZDpZFRqsWlsAfGhEgfufibdqRDgUlMymROxGuiVxlYXAFiRcmAyBTHMOJqozXcIoOYPVqVQsJmJKAdgvhtBmIpllboSfWiWaYRSPHqxzSMHCbtBwodmRQZFTRCMGcjJmhqUDcFlRjXEXhJYyiGYrpkbBKwCuZGrvehuAxEtdUcwgmDocTwnkbyzMtEEGmiMGjqbKGcnahCtMygpPCFWKHscfATrtiTIfUCHiklDCmKLsSXQAabVCmVftbtCiVrvjMVUPgzxsdBFTjKdHBSUTFJeymdFsZnITUgXsfHffCrmhiBJobXOEYpswKeIKkMeQY
cmp rcx, rdx
jbe 0x180001a58
xor eax, eax
jmp 0x180001b31
mov eax, r9d
and eax, 0xffffffe0
lea rbx, [rax - 0x20]
mov rdx, rbx
shr rdx, 5
add rdx, 1
mov r8d, edx
and r8d, 1
test rbx, rbx
je 0x180001af3
lea rdi, [r12 + r14]
add rdi, 0x438
mov rbx, r8
sub rbx, rdx
xor esi, esi
mov edx, esi
and edx, 0x3c0
movups xmm0, xmmword [rdx + r14 + 4]
movups xmm1, xmmword [rdx + r14 + 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 edx, [rsi + 0x20]
and edx, 0x3e0
movups xmm0, xmmword [rdx + r14 + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rdx + r14 + 0x14]
xorps xmm1, xmm3
movups xmmword [rdi + rsi - 0x10], xmm0
movups xmmword [rdi + rsi], xmm1
add rsi, 0x40
add rbx, 2
jne 0x180001a8c
jmp 0x180001af5
xor esi, esi
test r8, r8
je 0x180001b2c
mov edx, esi
and edx, 0x3e0
movups xmm0, xmmword [rdx + r14 + 4]
movups xmm1, xmmword [rdx + r14 + 0x14]
movups xmm2, xmmword [r13 + rsi]
xorps xmm2, xmm0
movups xmm0, xmmword [r13 + rsi + 0x10]
xorps xmm0, xmm1
movups xmmword [r13 + rsi], xmm2
movups xmmword [r13 + rsi + 0x10], xmm0
cmp rax, r9
je 0x180001b56
lea rdx, [r12 + r14]
add rdx, 0x408
mov ecx, eax
and ecx, 0x3ff
movzx ecx, byte [rcx + r14 + 4]
xor byte [rdx + rax], cl
add rax, 1
cmp rax, r9
jb 0x180001b3c
cmp dword [0x180020a7c], 0xa
jl 0x180001b72
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001b72
jmp 0x180001b70
movsxd rax, dword [0x180004440]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001b79
lea rsi, [rax + r14]
add rsi, 0x404
mov rax, r13
cmp byte [rax], 0
lea rax, [rax + 1]
jne 0x180001b92
mov rbx, rax
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001b9e
mov r15, rbx
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180001baa
mov r14, r15
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001bb7
mov qword [rbp - 0x10], rax
mov rdi, r14
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001bc8
sub rsp, 0x20
mov rcx, r13
call fcn.180002930
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 0x180001c02
movsxd rax, dword [r9 + 0x3c]
mov eax, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rax + 0x1c]
cmp dword [0x180020a8c], 0xa
mov r11, qword [rbp - 0x10]
jl 0x180001c42
mov ecx, dword [0x180020a90]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x180001c42
nop word cs:[rax + rax]
nop
jmp 0x180001c40
mov qword [rbp - 0x28], rbx
mov qword [rbp], rsi
add r8, r9
mov esi, dword [r9 + rax + 0x20]
mov r10d, dword [r9 + rax + 0x24]
add rsi, r9
add r10, r9
mov eax, dword [rsi]
add rax, r9
mov rdx, r11
nop word cs:[rax + rax]
nop
movzx ecx, byte [rdx]
movzx ebx, byte [rax]
test cl, cl
je 0x180001c86
add rdx, 1
add rax, 1
cmp cl, bl
je 0x180001c70
cmp cl, bl
je 0x180001c94
add r10, 2
add rsi, 4
jmp 0x180001c5d
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
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 0x180001cce
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001d02
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x180001d02
nop dword [rax]
jmp 0x180001d00
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add rdx, r10
add r9, r10
mov esi, dword [rdx]
add rsi, r10
mov rax, r15
movzx ebx, byte [rax]
movzx ecx, byte [rsi]
test bl, bl
je 0x180001d33
add rax, 1
add rsi, 1
cmp bl, cl
je 0x180001d1d
cmp bl, cl
je 0x180001d41
add r9, 2
add rdx, 4
jmp 0x180001d15
movzx eax, word [r9]
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, rdi
mov r8, rdi
call r10
add rsp, 0x10
mov rcx, r13
call fcn.180002930
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 0x180001da4
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001de2
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x180001de2
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x180001de0
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add rdx, r10
add r9, r10
lea rax, section..data
lea rdi, [r12 + rax]
add rdi, 0x408
mov esi, dword [rdx]
add rsi, r10
xor eax, eax
movzx ebx, byte [rdi + rax]
movzx ecx, byte [rsi + rax]
test bl, bl
je 0x180001e22
add rax, 1
cmp bl, cl
je 0x180001e0e
cmp bl, cl
je 0x180001e30
add r9, 2
add rdx, 4
jmp 0x180001e07
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp]
mov edx, dword [rax + 0x50]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
mov r12, rax
mov ebx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
cmp eax, 0xa
jl 0x180001e7e
test ecx, ecx
je 0x180001e7e
jmp 0x180001e7c
cmp eax, 0xa
jl 0x180001e89
test ecx, ecx
je 0x180001e89
jmp 0x180001e87
mov rcx, qword [rbp]
lea r8, [rcx + 0x108]
xor r9d, r9d
mov rcx, qword [rbp]
movzx ecx, word [rcx + 6]
cmp r9, rcx
jae 0x180002106
lea rax, [r9 + r9*4]
lea r10, [r8 + rax*8]
add r10, 0xc
mov edx, dword [0x180020a74]
mov edi, dword [0x180020a78]
cmp edi, 0xa
jl 0x180001ed4
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
jne 0x180002104
mov r11d, dword [r10]
mov eax, dword [r10 + 8]
mov r15d, dword [r10 + 4]
add r11, r12
lea rcx, section..data
lea r14, [rax + rcx]
add r14, 0x404
mov rcx, r14
mov rbx, r11
lea eax, [rdx - 1]
imul eax, edx
test al, 1
sete r11b
cmp edi, 0xa
setl al
or al, r11b
nop
test al, al
je 0x180001f10
sub r15, 1
jb 0x180001fc6
lea r14, [rcx + 1]
mov al, byte [rcx]
lea r11, [rbx + 1]
mov byte [rbx], al
mov edx, dword [0x180020a74]
mov edi, dword [0x180020a78]
cmp edi, 0xa
jl 0x180001ef4
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
je 0x180001ef4
nop word cs:[rax + rax]
cmp edi, 0xa
jl 0x180001fa0
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
jne 0x180001fbf
jmp 0x180001fa0
movzx eax, byte [rcx]
mov byte [rbx], al
mov edx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
cmp edi, 0xa
jl 0x180001ef4
test esi, esi
jne 0x180001f50
jmp 0x180001ef4
movzx eax, byte [rcx]
mov byte [rbx], al
cmp dword [0x180020a78], 0xa
jl 0x180001f70
mov eax, dword [0x180020a74]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x180001f70
movzx eax, byte [rcx]
mov byte [rbx], al
jmp 0x180001fa0
mov ebx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
cmp eax, 0xa
jl 0x1800020ea
test ecx, ecx
je 0x1800020ea
mov eax, dword [r10 + 8]
lea rcx, section..data
lea r11, [rax + rcx]
add r11, 0x404
mov r15d, dword [r10 + 4]
mov r14d, dword [r10]
add r14, r12
mov rcx, r11
mov rsi, r14
lea ebx, [rdx - 1]
imul ebx, edx
test bl, 1
sete r11b
cmp edi, 0xa
setl al
or al, r11b
nop dword [rax + rax]
test al, al
je 0x180002030
sub r15, 1
jb 0x1800020d6
lea r11, [rcx + 1]
mov al, byte [rcx]
lea r14, [rsi + 1]
mov byte [rsi], al
mov edx, dword [0x180020a74]
mov edi, dword [0x180020a78]
cmp edi, 0xa
jl 0x18000200c
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
je 0x18000200c
cmp edi, 0xa
jl 0x1800020b0
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
jne 0x1800020cf
jmp 0x1800020b0
movzx eax, byte [rcx]
mov byte [rsi], al
mov edx, dword [0x180020a74]
mov edi, dword [0x180020a78]
lea ebx, [rdx - 1]
imul ebx, edx
and ebx, 1
cmp edi, 0xa
jl 0x18000200c
test ebx, ebx
jne 0x180002066
jmp 0x18000200c
movzx eax, byte [rcx]
mov byte [rsi], al
cmp dword [0x180020a78], 0xa
jl 0x180002078
mov eax, dword [0x180020a74]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x180002078
movzx eax, byte [rcx]
mov byte [rsi], al
jmp 0x1800020b0
cmp edi, 0xa
jl 0x180001ed4
and ebx, 1
je 0x180001ed4
jmp 0x180002104
add r9, 1
cmp eax, 0xa
jl 0x180001e97
test ecx, ecx
je 0x180001e97
jmp 0x180001e87
jmp 0x180002104
mov rcx, r12
mov rdx, qword [rbp]
sub rcx, qword [rdx + 0x30]
cmp eax, 0xa
jl 0x180002123
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
je 0x180002123
jmp 0x180002121
mov rdx, qword [rbp]
mov edx, dword [rdx + 0xb0]
add rdx, r12
movabs r8, 0x1fffffff8
cmp dword [rdx], 0
je 0x1800023bb
mov edi, dword [rdx + 4]
cmp rdi, 8
jb 0x18000237f
cmp eax, 0xa
jl 0x180002164
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
jne 0x1800023af
add rdi, r8
shr rdi, 1
mov r9d, edi
xor r10d, r10d
cmp r10, r9
je 0x18000237f
movzx edi, word [rdx + r10*2 + 8]
mov esi, edi
shr esi, 0xc
mov r11d, edi
and r11d, 0xfff
cmp edi, 0xa000
jae 0x180002227
cmp esi, 3
jne 0x180002356
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp eax, 0xa
jl 0x1800021b9
test esi, esi
jne 0x1800023b3
cmp eax, 0xa
jl 0x1800021c6
test esi, esi
jne 0x1800023b5
mov eax, dword [rdx]
lea rax, [r12 + rax*4]
add dword [rax + r11*4], ecx
mov ebx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180002356
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
je 0x180002356
lea rdi, [r12 + r11*4]
mov eax, dword [rdx]
add dword [rdi + rax*4], ecx
mov eax, dword [rdx]
add dword [rdi + rax*4], ecx
mov ebx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180002356
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
jne 0x1800021f8
jmp 0x180002356
cmp esi, 0xa
jne 0x180002356
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
mov r11d, r11d
cmp eax, 0xa
jl 0x1800022be
test esi, esi
je 0x1800022be
lea rbx, [r11 + r12]
cmp eax, 0xa
jge 0x1800023ad
mov eax, dword [rdx]
add qword [rbx + rax], rcx
cmp dword [0x180020a6c], 0xa
jl 0x18000229a
mov eax, dword [0x180020a70]
lea esi, [rax - 1]
imul esi, eax
and esi, 1
je 0x18000229a
mov eax, dword [rdx]
add qword [rbx + rax], rcx
mov eax, dword [rdx]
add qword [rbx + rax], rcx
cmp dword [0x180020a6c], 0xa
jl 0x180002252
mov eax, dword [0x180020a70]
lea esi, [rax - 1]
imul esi, eax
and esi, 1
jne 0x180002272
jmp 0x180002252
mov eax, dword [rdx]
add qword [rax + rbx], rcx
mov edi, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea esi, [rdi - 1]
imul esi, edi
and esi, 1
cmp eax, 0xa
jl 0x1800022be
test esi, esi
jne 0x180002249
cmp eax, 0xa
jl 0x1800022cb
test esi, esi
jne 0x1800023b9
mov eax, dword [rdx]
add r11, r12
add qword [rax + r11], rcx
jmp 0x1800022dc
mov eax, dword [rdx]
add qword [r11 + rax], rcx
mov ebx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180002356
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
je 0x180002356
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp eax, 0xa
jl 0x180002325
test esi, esi
je 0x180002325
mov eax, dword [rdx]
add qword [r11 + rax], rcx
mov edi, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea esi, [rdi - 1]
imul esi, edi
and esi, 1
cmp eax, 0xa
jl 0x18000232e
test esi, esi
jne 0x18000234e
mov eax, dword [rdx]
add qword [r11 + rax], rcx
cmp dword [0x180020a6c], 0xa
jl 0x1800022d6
mov eax, dword [0x180020a70]
lea esi, [rax - 1]
imul esi, eax
and esi, 1
je 0x1800022d6
mov eax, dword [rdx]
add qword [r11 + rax], rcx
jmp 0x18000232e
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
cmp eax, 0xa
jl 0x180002368
test edi, edi
jne 0x1800023b1
add r10, 1
cmp eax, 0xa
jl 0x180002170
test edi, edi
je 0x180002170
jmp 0x1800023af
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
cmp eax, 0xa
jl 0x180002391
test edi, edi
jne 0x1800023b7
mov esi, dword [rdx + 4]
add rdx, rsi
cmp eax, 0xa
jl 0x18000213a
test edi, edi
je 0x18000213a
jmp 0x180002121
jmp 0x1800023ad
jmp 0x1800023af
jmp 0x1800023b1
jmp 0x1800023b3
jmp 0x1800023b5
jmp 0x1800023b7
jmp 0x1800023b9
mov rcx, qword [rbp]
mov ecx, dword [rcx + 0x90]
mov qword [rbp - 8], rcx
mov edi, dword [r12 + rcx + 0xc]
lea ecx, [rbx - 1]
imul ecx, ebx
test cl, 1
sete dl
cmp eax, 0xa
setl cl
or cl, dl
test edi, edi
je 0x1800027e4
add qword [rbp - 8], r12
lea rax, [r12 + 2]
mov qword [rbp - 0x30], rax
mov r15d, edi
test cl, 1
je 0x1800024ed
lea r14, [r12 + r15]
sub rsp, 0x20
mov rcx, r13
call fcn.180002930
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 0x180002438
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000246b
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000283c
add r8, r9
mov esi, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rsi, r9
add rcx, r9
mov edi, dword [rsi]
add rdi, r9
mov rbx, qword [rbp - 0x10]
movzx eax, byte [rbx]
movzx edx, byte [rdi]
test al, al
je 0x18000249d
add rbx, 1
add rdi, 1
cmp al, dl
je 0x180002487
cmp al, dl
je 0x1800024ab
add rcx, 2
add rsi, 4
jmp 0x18000247e
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 qword [rbp - 0x20], rax
mov ebx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rbx - 1]
imul ecx, ebx
cmp eax, 0xa
jl 0x1800025b2
mov edx, ecx
and edx, 1
je 0x1800025b2
lea r14, [r12 + r15]
sub rsp, 0x20
mov rcx, r13
call fcn.180002930
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 0x180002522
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002555
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000283e
add r8, r9
mov esi, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rsi, r9
add rcx, r9
mov edi, dword [rsi]
add rdi, r9
mov rbx, qword [rbp - 0x10]
movzx eax, byte [rbx]
movzx edx, byte [rdi]
test al, al
je 0x180002587
add rbx, 1
add rdi, 1
cmp al, dl
je 0x180002571
cmp al, dl
je 0x180002595
add rcx, 2
add rsi, 4
jmp 0x180002568
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
call r9
add rsp, 0x20
jmp 0x180002403
test cl, 1
sete dl
cmp eax, 0xa
setl cl
or cl, dl
je 0x180002840
mov rdx, qword [rbp - 8]
mov edi, dword [rdx]
mov r15d, dword [rdx + 0x10]
add rdi, r12
mov qword [rbp - 0x18], rdi
add r15, r12
mov rdx, qword [rbp - 0x18]
mov rdx, qword [rdx]
test rdx, rdx
je 0x1800027cd
mov rax, qword [rbp - 0x30]
add rax, rdx
test rdx, rdx
movzx r14d, dx
cmovns r14, rax
jmp 0x18000261d
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, qword [rbp - 0x20]
mov rdx, r14
call r9
add rsp, 0x20
mov qword [r15], rax
sub rsp, 0x20
mov rcx, r13
call fcn.180002930
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 0x18000264e
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002681
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002836
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 rdi, qword [rbp - 0x28]
movzx eax, byte [rdi]
movzx ebx, byte [rsi]
test al, al
je 0x1800026b3
add rdi, 1
add rsi, 1
cmp al, bl
je 0x18000269d
cmp al, bl
je 0x1800026c1
add rcx, 2
add rdx, 4
jmp 0x180002694
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, qword [rbp - 0x20]
mov rdx, r14
call r9
add rsp, 0x20
mov qword [r15], rax
mov ebx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rbx - 1]
imul ecx, ebx
cmp eax, 0xa
jl 0x1800027ae
mov edx, ecx
and edx, 1
je 0x1800027ae
sub rsp, 0x20
mov rcx, r13
call fcn.180002930
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 0x180002737
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000276a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002838
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 rdi, qword [rbp - 0x28]
movzx eax, byte [rdi]
movzx ebx, byte [rsi]
test al, al
je 0x18000279c
add rdi, 1
add rsi, 1
cmp al, bl
je 0x180002786
cmp al, bl
je 0x1800025fe
add rcx, 2
add rdx, 4
jmp 0x18000277d
add r15, 8
add qword [rbp - 0x18], 8
test cl, 1
sete dl
cmp eax, 0xa
setl cl
or cl, dl
jne 0x1800025da
jmp 0x180002840
mov rdx, qword [rbp - 8]
mov edi, dword [rdx + 0x20]
add rdx, 0x14
mov qword [rbp - 8], rdx
test edi, edi
jne 0x1800023f7
test cl, 1
je 0x18000283a
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
cmp eax, 0xa
jl 0x180002842
test ecx, ecx
je 0x180002842
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r12
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180020a6c], 0xa
jl 0x1800028d2
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000290c
jmp 0x1800028d2
jmp 0x180002836
jmp 0x180002838
jmp 0x18000283a
jmp 0x18000283c
jmp 0x18000283e
jmp 0x180002840
cmp eax, 0xa
jl 0x180002874
test ecx, ecx
je 0x180002874
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r12
sub rsp, 0x20
call rax
add rsp, 0x20
mov edx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
cmp eax, 0xa
jl 0x18000287d
test ecx, ecx
jne 0x1800028ab
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r12
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180020a6c], 0xa
jl 0x1800028c1
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800028c1
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r12
sub rsp, 0x20
call rax
add rsp, 0x20
jmp 0x18000287d
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r12
sub rsp, 0x20
call rax
add rsp, 0x20
mov edx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
cmp eax, 0xa
jl 0x180002842
test ecx, ecx
je 0x180002842
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r12
sub rsp, 0x20
call rax
add rsp, 0x20
jmp 0x1800028d2