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

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x98]
sub rsp, 0x198
mov r11d, dword [rbp + 0xf0]
mov r14, rcx
mov ecx, dword [rbp + 0xf0]
mov r15, rdx
mov rdx, qword [rbp - 0x30]
xor ebx, ebx
mov edi, dword [rbp + 0xf0]
mov r10, r9
mov rsi, qword [rbp - 0x30]
mov r13d, ecx
lea eax, [rcx + 0xa3e]
mov dword [rbp - 0x48], ecx
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x7c], r11d
mov qword [rbp - 0x60], rdx
cmp ecx, eax
jae 0x180096e94
mov eax, dword [rbp + 0x60]
mov r12, qword [rbp + 0x110]
mov dword [rbp + 0x10], eax
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x80], rax
mov eax, dword [rsp + 0x78]
mov qword [rbp + 0x38], r12
mov qword [rbp + 0x18], rdi
mov qword [rbp + 0x48], rsi
lea r8, [0x1800d4573]
lea rcx, [0x1800ec888]
cmp r13d, 0x1cf
ja 0x1800962cf
je 0x1800962bb
cmp r13d, 0x107
ja 0x18009605f
je 0x18009604d
mov eax, r13d
sub eax, 0x31
je 0x180096018
sub eax, 0x78
je 0x180096008
sub eax, 0x12
je 0x180095fe4
cmp eax, 0xe
jne 0x18009600f
mov r11, qword [rbp + 0x108]
mov r8d, ebx
cmp dword [r11], 0
jbe 0x180095f45
mov ecx, dword [r15]
mov eax, r8d
inc r8d
lea rdx, [rax*4]
mov rax, qword [r12 + 8]
mov rcx, qword [rax + rcx*8]
mov eax, dword [rcx + rdx + 4]
mov dword [rdx + r14], eax
mov dword [rdx + r10], eax
cmp r8d, dword [r11]
jb 0x180095f16
mov rdx, qword [rbp - 0x60]
mov rax, qword [rbp + 0x100]
mov r10d, 1
cmp dword [rax], r10d
jbe 0x180096927
mov rdi, qword [rbp + 0xf8]
cmp dword [r11], 0
mov r9d, ebx
jbe 0x180095fd7
mov ebx, dword [rbp + 0x50]
nop
mov r8d, 0xb
mov eax, r8d
sub eax, 0xb
je 0x180095fa4
sub eax, 1
je 0x180095f95
cmp eax, 1
jne 0x180095fba
mov eax, r9d
cmp ebx, dword [rdi + rax*4]
jbe 0x180095fba
mov dword [rdi + rax*4], ebx
jmp 0x180095fba
mov eax, r9d
cmp ebx, dword [r14 + rax*4]
jae 0x180095fba
mov dword [r14 + rax*4], ebx
jmp 0x180095fba
mov edx, dword [r15]
mov rax, qword [r12 + 8]
add edx, r10d
mov ecx, r9d
mov rax, qword [rax + rdx*8]
mov ebx, dword [rax + rcx*4 + 4]
inc r8d
cmp r8d, 0xe
jb 0x180095f76
inc r9d
mov dword [rbp + 0x50], ebx
cmp r9d, dword [r11]
jb 0x180095f70
mov rax, qword [rbp + 0x100]
xor ebx, ebx
inc r10d
cmp r10d, dword [rax]
jb 0x180095f62
jmp 0x18009691f
mov r11, qword [rbp + 0x108]
mov r8, qword [rbp - 0x80]
cmp dword [r11], 0
jne 0x18009692b
mov eax, dword [r14]
imul eax, dword [r15]
mov dword [r11], eax
jmp 0x18009692b
mov dword [rbp + 0x40], 0x1000
mov r8, qword [rbp - 0x80]
jmp 0x180096930
movdqa xmm0, xmmword [0x1800ed9d0]
mov r8, qword [rbp - 0x80]
mov dword [rbp - 0x28], 0x474e5089
mov dword [rbp - 0x24], 0xa1a0a0d
mov rsi, qword [rbp - 0x28]
mov qword [rbp + 0x48], rsi
movups xmmword [rbp + 0x78], xmm0
mov dword [rbp + 0x88], 6
jmp 0x180096930
mov r8, qword [rbp - 0x80]
mov edi, 0x1000
mov qword [rbp + 0x18], rdi
jmp 0x180096934
mov eax, r13d
sub eax, 0x133
je 0x18009628f
sub eax, 0x12
je 0x18009626b
sub eax, 0x4c
je 0x180096158
cmp eax, 0x2c
jne 0x18009600f
cmp byte [r15 + 0x14], 0
mov dword [r15 + 0x50], ebx
jne 0x180096114
xor edx, edx
lea r9, [r15 + 0x54]
cmp byte [r15 + 0x10], dl
je 0x1800960d1
mov qword [rsp + 0x38], rcx
lea r8, [rbp - 0x78]
mov qword [rsp + 0x30], rbx
xor ecx, ecx
mov dword [rsp + 0x28], 0x7a
mov qword [rsp + 0x20], rbx
mov dword [rbp - 0x78], 1
call fcn.1800248e0
mov dword [rbp - 0x78], 1
jmp 0x1800960f9
mov qword [rsp + 0x38], r8
xor ecx, ecx
mov qword [rsp + 0x30], rbx
lea r8, [rbp - 0x78]
mov dword [rsp + 0x28], 0x7a
mov qword [rsp + 0x20], rbx
mov dword [rbp - 0x78], ebx
call fcn.1800248e0
mov dword [rbp - 0x78], ebx
mov r8d, 0xd5
lea rdx, [rbp - 0x78]
mov rcx, r15
call fcn.180090930
mov r11d, dword [rsp + 0x7c]
mov rdx, qword [rbp - 0x60]
cmp dword [rbp + 0x10], 0
jne 0x18009600f
mov r14d, dword [rbp - 0x50]
dec r14d
cmp dword [rbp + 0x5c], 0
mov dword [rbp - 0x50], r14d
jne 0x18009600f
mov eax, dword [rsp + 0x78]
dec r14d
cmp dword [rbp + 0x58], 0
mov r8, qword [rbp - 0x80]
mov dword [rbp - 0x50], r14d
jne 0x180096934
dec r14d
mov dword [rbp - 0x50], r14d
jmp 0x180096934
xor r8d, r8d
mov dword [rsp + 0x7c], 1
xor ecx, ecx
test r12, r12
jne 0x180096215
mov edx, 0x82
call fcn.18000d120
mov qword [rbp + 0x38], rax
mov r12, rax
test rax, rax
jne 0x180096240
mov edx, dword [0x1800ec8c0]
mov r8d, 0x128
movups xmm0, xmmword [0x1800ec8b0]
movups xmm1, xmmword [0x1800ec8a0]
movups xmm2, xmmword [str.RegisterWaitForSingleObject_non_crash_dump_requested]
nop dword [rax]
mov ecx, r8d
sub ecx, 0x127
je 0x1800971e9
cmp ecx, 1
jne 0x180096207
mov eax, 0x47
nop dword [rax]
cmp eax, 0x47
jne 0x1800961f7
movaps xmmword [0x1801070c0], xmm2
movaps xmmword [0x1801070d0], xmm1
movaps xmmword [0x1801070e0], xmm0
mov dword [0x1801070f0], edx
mov byte [0x1801074bf], 0
dec eax
cmp eax, 0x45
ja 0x1800961d0
mov edi, 0x1101
mov qword [rbp + 0x18], rdi
dec r8d
cmp r8d, 0x126
ja 0x1800961b0
jmp 0x180096240
mov qword [rsp + 0x48], rbx
mov r9, r12
mov qword [rsp + 0x40], rbx
xor edx, edx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0x142
call fcn.18009a210
cmp dword [r12 + 0x10], 0xffffffff
mov eax, dword [rsp + 0x78]
mov rdx, qword [rbp - 0x60]
mov r11d, dword [rsp + 0x7c]
mov r8, qword [rbp - 0x80]
jne 0x180096934
mov dword [r12 + 0x10], 0x100
jmp 0x180096934
mov eax, dword [r14]
imul eax, dword [r15]
mov rcx, qword [rbp + 0x100]
inc eax
imul eax, dword [rcx]
movsxd rcx, eax
call fcn.1800b16e4
mov qword [rbp + 0x20], rax
jmp 0x180096923
mov r8, qword [rbp - 0x80]
mov qword [rbp + 0x68], 0
movsd xmm0, qword [rbp + 0x68]
movsd qword [rbp + 0x58], xmm0
mov dword [rbp + 0x10], ebx
mov dword [rbp - 0x50], 3
mov dword [rbp - 0x70], 1
jmp 0x180096930
cmp qword [rbp + 0x20], 0
je 0x180096372
mov r8, qword [rbp - 0x80]
jmp 0x180096934
cmp r13d, 0x2d1
ja 0x180096db7
je 0x180096c21
mov eax, r13d
sub eax, 0x21b
je 0x180096be3
sub eax, 0x2c
je 0x18009695f
sub eax, 0x12
je 0x18009633b
cmp eax, 0x4c
jne 0x18009600f
cmp dword [r12 + 0x60], 0
jg 0x18009632b
cmp dword [r12 + 0x64], 0
jg 0x18009632b
cmp dword [r12 + 0x58], 0
jg 0x18009632b
cmp dword [r12 + 0x5c], 0
jle 0x18009600f
mov r8, qword [rbp - 0x80]
mov r11d, ebx
mov dword [rsp + 0x7c], ebx
jmp 0x180096930
mov eax, dword [r14]
imul eax, dword [r15]
movsxd rcx, eax
call fcn.1800b16e4
mov qword [rbp - 0x38], rax
mov r9, rax
test rax, rax
jne 0x18009639e
mov r14d, 0x11c
nop dword [rax]
cmp r14d, 0x11c
je 0x18009637a
cmp r14d, 0x1514
jne 0x180096383
mov rax, rbx
jmp 0x180096e80
mov rcx, qword [rbp + 0x20]
call fcn.1800b16dc
add r14d, 0x13f8
cmp r14d, 0x27f0
jbe 0x180096360
mov r14, qword [rbp + 0xe0]
mov r9, qword [rbp - 0x38]
mov rax, qword [rbp + 0x100]
mov r12d, ebx
mov dword [rbp - 0x48], ebx
cmp dword [rax], 0
jle 0x180096923
mov esi, dword [rbp - 0x44]
mov edi, 0x123
jmp 0x1800963d4
mov r9, qword [rbp - 0x38]
mov edi, 0x123
jmp 0x1800963d4
mov r9, qword [rbp - 0x38]
mov eax, edi
sub eax, 0x123
je 0x1800968a4
sub eax, 1
je 0x180096439
sub eax, 1
je 0x18009641d
cmp eax, 1
jne 0x1800968ef
mov eax, dword [r14]
mov rdx, r9
imul eax, dword [r15]
mov rcx, qword [rbp + 0x20]
inc rcx
movsxd r8, eax
inc eax
imul eax, r12d
cdqe
add rcx, rax
call fcn.1800addc0
jmp 0x1800968ef
mov eax, dword [r14]
imul eax, dword [r15]
mov rcx, qword [rbp + 0x20]
inc eax
imul eax, r12d
cdqe
mov byte [rax + rcx], sil
jmp 0x1800968ef
mov r8d, 0x7fffffff
mov dword [rbp - 0x44], ebx
mov dword [rbp - 0x40], r8d
mov r10d, ebx
mov edx, ebx
mov dword [rbp], ebx
mov eax, 0x48
jmp 0x180096464
mov r9, qword [rbp - 0x38]
mov eax, 0x48
jmp 0x180096464
mov r9, qword [rbp - 0x38]
cmp eax, 0x48
jne 0x18009687a
test edx, edx
mov ecx, ebx
cmovne ecx, r10d
mov dword [rbp - 4], ecx
cmp ecx, 5
jge 0x18009686f
mov rdx, qword [rbp - 0x30]
movsxd rax, ecx
lea rdx, [rdx + rax*4]
mov eax, 0x11a
mov dword [rbp - 0x78], eax
mov qword [rbp + 8], rdx
jmp 0x1800964b4
mov r9, qword [rbp - 0x38]
mov eax, 0x11a
mov dword [rbp - 0x78], eax
jmp 0x1800964b4
mov r9, qword [rbp - 0x38]
sub eax, 0x11a
je 0x180096809
sub eax, 0xa
je 0x180096539
sub eax, 0xa
je 0x1800964f4
cmp eax, 0xa
jne 0x180096828
cmp dword [rbp - 8], r8d
mov eax, ecx
cmovge eax, r10d
mov r10d, eax
mov dword [rbp - 0x44], eax
mov eax, dword [rbp - 8]
cmovge eax, r8d
mov r8d, eax
mov dword [rbp - 0x40], eax
jmp 0x180096828
mov eax, dword [r14]
imul eax, dword [r15]
test eax, eax
jle 0x180096828
mov rcx, r9
mov r8d, eax
mov r9d, dword [rbp - 8]
nop dword [rax]
movsx eax, byte [rcx]
lea rcx, [rcx + 1]
cdq
xor eax, edx
sub eax, edx
add r9d, eax
sub r8, 1
jne 0x180096510
mov ecx, dword [rbp - 4]
mov rdx, qword [rbp + 8]
mov r8d, dword [rbp - 0x40]
mov dword [rbp - 8], r9d
jmp 0x180096828
mov rdx, qword [rbp + 0xe0]
mov r13d, ebx
mov r15d, dword [rdx]
test r15d, r15d
jle 0x180096650
mov rdx, qword [rbp + 0x30]
mov r14, r9
mov r12, rdx
sub r12, r9
nop dword [rax]
mov ecx, 0xd6
nop word [rax + rax]
cmp ecx, 0xd6
jne 0x180096626
movsxd rax, dword [rbp + 0x28]
cmp eax, 6
ja case.default.0x18009659b
lea r8, [0x180000000]
mov ecx, dword [r8 + rax*4 + 0x9739c]
add rcx, r8
jmp rcx
mov rcx, qword [rbp + 0x108]
mov eax, r13d
sub eax, dword [rcx]
movzx ecx, byte [r12 + r14]
cdqe
sub cl, byte [rax + rdx]
mov byte [r14], cl
jmp case.default.0x18009659b
mov rcx, qword [rbp + 0x108]
mov eax, r13d
sub eax, dword [rcx]
cdqe
movzx ecx, byte [rax + rdx]
movzx eax, byte [r12 + r14]
shr cl, 1
sub al, cl
jmp 0x18009661e
mov rcx, qword [rbp + 0x108]
lea r8, [rbp - 0x58]
mov eax, r13d
mov dword [rbp - 0x58], ebx
mov r9d, 0xdd
sub eax, dword [rcx]
cdqe
movzx ecx, byte [rax + rdx]
lea rdx, [rsp + 0x60]
mov dword [rsp + 0x60], ecx
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], ebx
call fcn.1800a3920
movzx ecx, byte [r12 + r14]
mov rdx, qword [rbp + 0x30]
sub cl, al
mov byte [r14], cl
jmp case.default.0x18009659b
movzx eax, byte [r12 + r14]
mov byte [r14], al
mov ecx, 0xd6
inc ecx
cmp ecx, 0xd8
jb 0x180096570
mov rax, qword [rbp + 0xe0]
inc r13d
inc r14
mov r15d, dword [rax]
cmp r13d, r15d
jl 0x180096560
mov rdx, rax
mov r13, qword [rbp + 0xe8]
mov eax, dword [r13]
imul eax, r15d
cmp r15d, eax
jge 0x1800967e6
mov r9, qword [rbp + 0x30]
movsxd r14, r15d
mov r12, r9
add r14, qword [rbp - 0x38]
sub r12, qword [rbp - 0x38]
nop word [rax + rax]
mov eax, 0x18
cmp eax, 0x18
jne 0x1800967b9
movsxd rax, dword [rbp + 0x28]
cmp eax, 6
ja case.default.0x1800966ad
lea r8, [0x180000000]
mov ecx, dword [r8 + rax*4 + 0x973b8]
add rcx, r8
jmp rcx
movzx eax, byte [r14 + r12]
mov byte [r14], al
jmp case.default.0x1800966ad
movzx ecx, byte [r14 + r12]
mov eax, r15d
sub eax, dword [rdx]
cdqe
sub cl, byte [rax + r9]
jmp 0x1800967b1
mov rcx, qword [rbp + 0x108]
mov eax, r15d
sub eax, dword [rcx]
movzx ecx, byte [r14 + r12]
cdqe
sub cl, byte [rax + r9]
jmp 0x1800967b1
mov rcx, qword [rbp + 0x108]
mov eax, r15d
sub eax, dword [rdx]
cdqe
movzx edx, byte [rax + r9]
mov eax, r15d
sub eax, dword [rcx]
cdqe
movzx ecx, byte [rax + r9]
movzx eax, byte [r14 + r12]
add edx, ecx
shr edx, 1
sub al, dl
mov byte [r14], al
jmp case.default.0x1800966ad
mov rax, qword [rbp + 0x108]
mov r8d, r15d
sub r8d, dword [rdx]
mov edx, dword [rax]
mov eax, r8d
sub eax, edx
cdqe
movzx ecx, byte [rax + r9]
mov eax, r15d
mov dword [rsp + 0x60], ecx
sub eax, edx
cdqe
movzx ecx, byte [rax + r9]
mov dword [rbp - 0x58], ecx
movsxd rax, r8d
movzx ecx, byte [rax + r9]
mov dword [rbp - 0x18], ecx
lea rcx, [rbp - 0x18]
jmp 0x180096792
mov eax, r15d
sub eax, dword [rdx]
cdqe
movzx ecx, byte [rax + r9]
movzx eax, byte [r14 + r12]
shr cl, 1
sub al, cl
mov byte [r14], al
jmp case.default.0x1800966ad
mov eax, r15d
mov dword [rsp + 0x60], ebx
sub eax, dword [rdx]
cdqe
mov dword [rbp - 0x58], ebx
movzx ecx, byte [rax + r9]
mov dword [rbp - 0x10], ecx
lea rcx, [rbp - 0x10]
mov r9d, 0xdd
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x58]
call fcn.1800a3920
movzx ecx, byte [r14 + r12]
mov r9, qword [rbp + 0x30]
sub cl, al
mov byte [r14], cl
mov eax, 0x18
mov rdx, qword [rbp + 0xe0]
add eax, 0xdc8
cmp eax, 0x1b90
jbe 0x180096685
mov eax, dword [r13]
inc r15d
imul eax, dword [rdx]
inc r14
cmp r15d, eax
jl 0x180096680
mov edx, dword [rbp]
test edx, edx
jne 0x18009685c
mov ecx, dword [rbp - 4]
mov rdx, qword [rbp + 8]
mov r8d, dword [rbp - 0x40]
mov r15, qword [rbp + 0xe8]
mov r12d, dword [rbp - 0x48]
mov r10d, dword [rbp - 0x44]
jmp 0x180096828
mov eax, dword [rdx]
mov dword [rbp + 0x28], eax
mov rax, qword [rbp + 0x108]
mov dword [rbp - 8], ebx
mov eax, dword [rax]
imul eax, r12d
cdqe
add rax, qword [rbp + 0x38]
mov qword [rbp + 0x30], rax
mov eax, dword [rbp - 0x78]
mov r14, qword [rbp + 0xe0]
add eax, 0xa
mov dword [rbp - 0x78], eax
cmp eax, 0x142
jb 0x1800964b0
inc ecx
add rdx, 4
mov dword [rbp - 4], ecx
mov qword [rbp + 8], rdx
cmp ecx, 5
jl 0x1800964a0
mov edx, dword [rbp]
mov r8d, dword [rbp - 0x40]
mov r15, qword [rbp + 0xe8]
mov r12d, dword [rbp - 0x48]
mov r10d, dword [rbp - 0x44]
mov eax, 0x48
mov r13d, 0x259
mov r14, qword [rbp + 0xe0]
add eax, 0x1a70
cmp eax, 0x1a70
jbe 0x180096460
inc edx
mov dword [rbp], edx
cmp edx, 2
jl 0x180096455
mov esi, dword [rbp - 0x44]
jmp 0x1800968ef
movdqa xmm0, xmmword [0x1800ed9e0]
lea rax, [0x18011e528]
test r12d, r12d
mov dword [0x18011e520], 4
lea rcx, [0x18011e510]
mov dword [0x18011e538], 6
movups xmmword [0x18011e510], xmm0
cmovne rax, rcx
movdqa xmm0, xmmword [0x1800ed9f0]
movups xmmword [0x18011e528], xmm0
mov qword [rbp - 0x30], rax
mov r14, qword [rbp + 0xe0]
inc edi
cmp edi, 0x127
jb 0x1800963d0
mov rax, qword [rbp + 0x100]
inc r12d
mov dword [rbp - 0x48], r12d
cmp r12d, dword [rax]
jl 0x1800963c0
mov rsi, qword [rbp + 0x48]
mov rdi, qword [rbp + 0x18]
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x80]
mov r11d, dword [rsp + 0x7c]
mov eax, dword [rsp + 0x78]
mov r14, qword [rbp + 0xe0]
add r13d, 0x8a
mov r10, qword [rbp + 0xf8]
mov dword [rbp - 0x48], r13d
cmp r13d, eax
jae 0x180096ea5
mov r12, qword [rbp + 0x38]
jmp 0x180095eab
mov r14d, dword [rbp - 0x50]
test r14d, r14d
jle 0x180096ba6
mov edi, dword [rbp - 0x4c]
mov r12d, 0x72
mov r13d, dword [rbp + 0x5c]
mov dword [rbp - 0x78], r12d
nop dword [rax]
mov eax, r12d
sub eax, 0x71
je 0x1800969bb
cmp eax, 1
jne 0x180096b86
movsxd r8, dword [r15 + 0x50]
lea r9, [rsp + 0x60]
mov eax, dword [rbp + 0x58]
add r8, 0x54
add r8, r15
mov dword [rsp + 0x60], eax
mov edx, 0x2f
xor ecx, ecx
call fcn.180086d50
mov edi, eax
jmp 0x180096b86
mov r8d, 0xd5
mov dword [rsp + 0x60], edi
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.180090930
cmp r14d, 1
jle 0x180096b86
mov rsi, qword [rbp + 0xe8]
mov r15d, 0xef
mov r12d, dword [rbp + 0x10]
nop dword [rax]
mov eax, r15d
sub eax, 0xef
je 0x180096b33
sub eax, 1
je 0x180096b29
sub eax, 1
je 0x180096b04
sub eax, 1
je 0x180096aeb
cmp eax, 1
jne 0x180096b6b
cmp r14d, 2
jle 0x180096b6b
mov r14d, 0x12
cmp r14d, 0x12
je 0x180096a5b
cmp r14d, 0x50
jne 0x180096ad1
mov r8d, 0xd5
mov dword [rsp + 0x60], edi
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.180090930
jmp 0x180096ad1
movsxd rax, dword [rsi + 0x50]
lea r8, [rsi + 0x54]
mov qword [rsp + 0x38], rbx
add r8, rax
lea rax, [rsp + 0x70]
mov byte [rsp + 0x70], 0x3b
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov dword [rsp + 0x28], 0x5d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rbx
call fcn.18002e1b0
mov r8d, 0xd5
mov dword [rsp + 0x60], 1
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.180090930
movsxd rax, dword [rsi + 0x50]
lea r8, [rsi + 0x54]
add r8, rax
mov dword [rsp + 0x60], r12d
lea r9, [rsp + 0x60]
mov edx, 0x2f
xor ecx, ecx
call fcn.180086d50
mov edi, eax
add r14d, 0x3e
cmp r14d, 0x8e
jb 0x180096a32
mov r14d, dword [rbp - 0x50]
jmp 0x180096b6b
mov dword [rsp + 0x60], edi
mov r8d, 0xd5
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.180090930
jmp 0x180096b6b
movsxd rax, dword [rsi + 0x50]
lea r8, [rsi + 0x54]
add r8, rax
mov dword [rsp + 0x60], r13d
lea r9, [rsp + 0x60]
mov edx, 0x2f
xor ecx, ecx
call fcn.180086d50
mov edi, eax
jmp 0x180096b6b
mov dword [rsp + 0x60], 1
jmp 0x180096aef
movsxd rax, dword [rsi + 0x50]
lea r8, [rsi + 0x54]
mov qword [rsp + 0x38], rbx
add r8, rax
lea rax, [rsp + 0x70]
mov byte [rsp + 0x70], 0x3b
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov dword [rsp + 0x28], 0x5d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rbx
call fcn.18002e1b0
inc r15d
cmp r15d, 0xf4
jb 0x1800969f0
mov r12d, dword [rbp - 0x78]
mov r15, qword [rbp + 0xe8]
dec r12d
mov dword [rbp - 0x78], r12d
cmp r12d, 0x70
ja 0x180096980
mov rsi, qword [rbp + 0x48]
mov r13d, dword [rbp - 0x48]
mov dword [rbp - 0x4c], edi
mov rdi, qword [rbp + 0x18]
movsxd r8, dword [r15 + 0x50]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rbx
add r8, 0x54
mov qword [rsp + 0x30], rax
add r8, r15
mov dword [rsp + 0x28], 0x5d
xor r9d, r9d
xor edx, edx
mov byte [rsp + 0x70], 0x71
xor ecx, ecx
mov qword [rsp + 0x20], rbx
call fcn.18002e1b0
jmp 0x180096923
cmp dword [r12 + 0x10], 2
jge 0x180096bf4
mov dword [r12 + 0x10], 2
cmp dword [r12 + 0x3c], 0
jne 0x180096c05
mov dword [r12 + 0x3c], 2
cmp dword [r12 + 0x14], 0
mov eax, ebx
mov r8, qword [rbp - 0x80]
cmove eax, r11d
mov r11d, eax
mov dword [rsp + 0x7c], eax
jmp 0x180096930
mov r8d, 0xd5
mov dword [rsp + 0x60], 1
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.180090930
cmp dword [rbp - 0x70], 0
je 0x180096923
mov rsi, qword [rbp + 0x108]
mov r14d, 0x8a
mov edi, dword [rbp - 0x4c]
nop word [rax + rax]
cmp r14d, 0x8a
je 0x180096d41
cmp r14d, 0xe8e
je 0x180096d15
cmp r14d, 0x1c92
je 0x180096c99
cmp r14d, 0x2a96
jne 0x180096d9b
mov dword [rsp + 0x60], edi
jmp 0x180096d88
movsxd r8, dword [r15 + 0x50]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rbx
add r8, 0x54
mov qword [rsp + 0x30], rax
add r8, r15
mov dword [rsp + 0x28], 0x5d
xor r9d, r9d
xor edx, edx
mov byte [rsp + 0x70], 0x3b
xor ecx, ecx
mov qword [rsp + 0x20], rbx
call fcn.18002e1b0
mov r8d, 0xd5
mov dword [rsp + 0x60], 1
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.180090930
movsxd r8, dword [r15 + 0x50]
lea r9, [rsp + 0x60]
mov eax, dword [rsi]
add r8, 0x54
add r8, r15
mov dword [rsp + 0x60], eax
mov edx, 0x2f
xor ecx, ecx
call fcn.180086d50
mov edi, eax
jmp 0x180096d9b
movsxd r8, dword [r15 + 0x50]
lea r9, [rsp + 0x60]
mov eax, dword [r12]
add r8, 0x54
add r8, r15
mov dword [rsp + 0x60], eax
mov edx, 0x2f
xor ecx, ecx
call fcn.180086d50
mov edi, eax
mov dword [rsp + 0x60], eax
jmp 0x180096d88
movsxd r9, dword [r15 + 0x50]
lea rax, str._1_1_
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x60]
add r9, 0x54
mov qword [rsp + 0x30], rbx
add r9, r15
mov dword [rsp + 0x28], 0x7a
xor edx, edx
mov qword [rsp + 0x20], rbx
xor ecx, ecx
mov dword [rsp + 0x60], 5
call fcn.1800248e0
mov dword [rsp + 0x60], 5
mov r8d, 0xd5
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.180090930
add r14d, 0xe04
cmp r14d, 0x3810
jbe 0x180096c60
mov dword [rbp - 0x4c], edi
jmp 0x18009691b
mov eax, r13d
sub eax, 0x2e3
je 0x180096e1b
sub eax, 0x78
je 0x180096e0f
sub eax, 0x12
je 0x180096ddd
cmp eax, 0x78
je 0x180096e76
mov r8, qword [rbp - 0x80]
jmp 0x180096930
mov rcx, qword [rbp + 0x20]
call fcn.1800b16dc
cmp qword [rbp - 0x60], 0
je 0x180096372
mov eax, dword [rbp - 0x68]
add eax, 0x39
movsxd rcx, eax
call fcn.1800b16e4
mov rdx, qword [rbp - 0x60]
mov r8, rax
mov qword [rbp - 0x80], rax
jmp 0x18009692b
mov r8, qword [rbp - 0x80]
mov dword [rbp + 0x40], ebx
jmp 0x180096930
mov rcx, qword [rbp - 0x38]
call fcn.1800b16dc
mov eax, dword [r14]
mov r9d, 0x122
imul eax, dword [r15]
xor edx, edx
mov rcx, qword [rbp + 0x100]
mov r8, qword [rbp + 0x20]
mov dword [rbp - 0x58], 8
inc eax
imul eax, dword [rcx]
lea rcx, [rbp - 0x58]
mov dword [rsp + 0x60], eax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.180040c10
mov rdx, rax
mov qword [rbp - 0x60], rax
jmp 0x180096927
mov eax, dword [rbp + 0x40]
mov dword [rbp + 8], eax
mov rax, qword [rbp + 8]
add rsp, 0x198
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r8, qword [rbp - 0x30]
mov r13, qword [rbp + 0x110]
mov qword [rbp - 0x80], r8
jmp 0x180096eaf
mov r13, qword [rbp + 0x38]
mov ecx, dword [rbp + 0xf0]
mov r9, qword [rsp + 0x68]
mov r15d, ecx
mov r12, qword [rbp + 0xe8]
lea eax, [rcx - 0x13]
cmp r15d, eax
jbe 0x180096e7c
lea eax, [r15 - 0x22]
cmp eax, 0xe5
ja case.default.0x180096ef5
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax + 0x97420]
mov ecx, dword [rcx + rax*4 + 0x973d4]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
add r9, 8
mov qword [rsp + 0x68], r9
mov byte [r9], 0
mov rax, qword [rsp + 0x68]
mov byte [rax + 1], 0
mov rax, qword [rsp + 0x68]
mov byte [rax + 2], 0
mov rax, qword [rsp + 0x68]
mov byte [rax + 3], 0xd
mov rax, qword [rsp + 0x68]
add rax, 4
mov qword [rsp + 0x68], rax
mov byte [rax], 0x49
mov rax, qword [rsp + 0x68]
mov byte [rax + 1], 0x48
mov rax, qword [rsp + 0x68]
mov byte [rax + 2], 0x44
mov rax, qword [rsp + 0x68]
mov byte [rax + 3], 0x52
mov r9, qword [rsp + 0x68]
add r9, 4
mov qword [rsp + 0x68], r9
jmp case.0x180096ef5.52
mov eax, dword [rbp - 0x68]
mov r9, r8
add eax, 0x39
mov qword [rsp + 0x68], r8
mov dword [r10], eax
jmp case.0x180096ef5.52
mov byte [r9], 0
mov rax, qword [rsp + 0x68]
inc rax
mov dword [rbp - 0x70], 0xd
mov qword [rsp + 0x68], rax
mov byte [rax], 0
inc qword [rsp + 0x68]
jmp 0x180097352
mov r14d, 0xbd
nop
mov eax, r14d
sub eax, 0xbb
je 0x180096e7c
sub eax, 1
je 0x180096fd6
cmp eax, 1
jne 0x180096fd9
mov qword [rsp + 0x28], r13
mov r9d, 0xdb
xor r8d, r8d
mov qword [rsp + 0x20], rbx
xor edx, edx
xor ecx, ecx
call fcn.180010b80
jmp 0x180096fd9
mov dword [rbp + 8], edi
dec r14d
cmp r14d, 0xba
ja 0x180096fa0
mov r9, qword [rsp + 0x68]
mov byte [r9], 0x49
mov rax, qword [rsp + 0x68]
mov byte [rax + 1], 0x44
mov rax, qword [rsp + 0x68]
mov byte [rax + 2], 0x41
mov rax, qword [rsp + 0x68]
mov byte [rax + 3], 0x54
mov r9, qword [rsp + 0x68]
add r9, 4
mov qword [rsp + 0x68], r9
jmp case.0x180096ef5.52
movsxd rax, dword [r14]
movzx ecx, byte [rbp + rax*4 + 0x78]
mov byte [r9], cl
mov rax, qword [rsp + 0x68]
inc rax
mov qword [rsp + 0x68], rax
mov byte [rax], 0
mov r9, qword [rsp + 0x68]
inc r9
mov qword [rsp + 0x68], r9
jmp case.0x180096ef5.52
movsxd rax, dword [rbp - 0x68]
add r9, rax
mov qword [rsp + 0x68], r9
jmp case.0x180096ef5.52
test edi, edi
jne 0x1800971f9
cmp dword [r13 + 0x88], edi
je 0x1800971f9
mov ecx, 0x9f
nop dword [rax]
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x9f
je 0x18009715b
sub eax, 1
je 0x1800971cb
cmp eax, 1
jne 0x1800971cb
mov rax, qword [r13 + 0xa8]
test rax, rax
je 0x1800970b4
cmp dword [rax], 0
jne 0x1800971cb
mov r11d, dword [rsp + 0x7c]
mov eax, dword [r13 + 0xa4]
lea r9, [rsp + 0x60]
mov rcx, qword [r13 + 0x98]
mov r15d, 0x107
mov rdx, qword [r13 + 0xa8]
mov r8, qword [r13 + 8]
mov dword [rbp - 0x10], eax
lea rax, [0x180043bc0]
mov qword [rsp + 0x58], rcx
lea rcx, [rbp - 0x30]
mov qword [rbp - 0x30], rax
mov eax, dword [r13 + 0x38]
mov dword [rbp - 0x20], eax
mov eax, dword [r13 + 0x10]
mov dword [rbp - 0x18], eax
mov eax, dword [r13 + 0x54]
mov dword [rsp + 0x50], 0x7d
mov qword [rsp + 0x48], rdx
mov rdx, r13
mov dword [rsp + 0x60], eax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x28], r8
mov r8, qword [rbp + 0x108]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x70], r11d
call fcn.1800252f0
mov rdi, rax
jmp 0x180097365
mov rax, qword [r13 + 0xa8]
test rax, rax
je 0x1800971c6
cmp dword [rax], 0
jne 0x1800971c6
mov r14d, 0x104
mov eax, r14d
sub eax, 0x102
je 0x1800971aa
sub eax, 1
je 0x1800971a2
cmp eax, 1
jne 0x1800971ae
xor edx, edx
mov dword [rbp - 0x70], 0xf4240
mov r8d, 0xa1
lea rcx, [rbp - 0x70]
call fcn.180022060
mov edi, eax
jmp 0x1800971ae
bt edi, 0xc
jb 0x1800971f4
jmp 0x1800971ae
test edi, edi
jne 0x1800971c6
dec r14d
cmp r14d, 0x101
ja 0x180097172
mov rax, qword [r13 + 0xa8]
test rax, rax
jne 0x180097167
mov ecx, 0x9f
inc ecx
cmp ecx, 0xa2
jb 0x180097080
mov r9, qword [rsp + 0x68]
mov r15d, 0x106
jmp case.0x180096ef5.52
mov r12, qword [rbp + 0xe8]
mov r13, qword [rbp + 0x38]
mov r9, qword [rsp + 0x68]
mov r15d, 0x106
jmp case.0x180096ef5.52
test r8, r8
je 0x180096372
jmp case.0x180096ef5.52
movzx eax, byte [r12 + 3]
mov rdx, qword [rbp + 0x100]
mov byte [r9], al
mov rax, qword [rsp + 0x68]
movzx ecx, byte [r12 + 2]
mov byte [rax + 1], cl
mov rax, qword [rsp + 0x68]
mov ecx, dword [r12]
sar ecx, 8
mov byte [rax + 2], cl
mov rax, qword [rsp + 0x68]
movzx ecx, byte [r12]
mov byte [rax + 3], cl
mov rcx, qword [rsp + 0x68]
movzx eax, byte [rdx + 3]
add rcx, 4
mov qword [rsp + 0x68], rcx
mov byte [rcx], al
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rdx + 2]
mov byte [rax + 1], cl
mov ecx, dword [rdx]
mov rax, qword [rsp + 0x68]
sar ecx, 8
mov byte [rax + 2], cl
movzx ecx, byte [rdx]
mov rax, qword [rsp + 0x68]
mov byte [rax + 3], cl
mov r9, qword [rsp + 0x68]
add r9, 4
mov qword [rsp + 0x68], r9
jmp case.0x180096ef5.52
mov eax, dword [rbp - 0x68]
sar eax, 0x18
mov byte [r9], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rbp - 0x68]
sar ecx, 0x10
mov byte [rax + 1], cl
mov ecx, dword [rbp - 0x68]
mov rax, qword [rsp + 0x68]
sar ecx, 8
mov byte [rax + 2], cl
movzx ecx, byte [rbp - 0x68]
jmp 0x18009727c
mov qword [r9], rsi
jmp 0x180097365
mov byte [r9], 8
mov r9, qword [rsp + 0x68]
inc r9
mov qword [rsp + 0x68], r9
jmp case.0x180096ef5.52
movsxd r8, dword [rbp - 0x68]
mov rcx, r9
call fcn.1800addc0
jmp 0x180097365
mov rcx, rdx
call fcn.1800b16dc
mov eax, dword [rbp - 0x68]
mov dword [rbp - 0x70], eax
jmp 0x180097352
mov byte [r9], 0
mov rax, qword [rsp + 0x68]
mov dword [rbp - 0x70], ebx
mov byte [rax + 1], 0
mov rax, qword [rsp + 0x68]
mov byte [rax + 2], 0
mov rax, qword [rsp + 0x68]
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x68]
add rax, 4
mov qword [rsp + 0x68], rax
mov byte [rax], 0x49
mov rax, qword [rsp + 0x68]
mov byte [rax + 1], 0x45
mov rax, qword [rsp + 0x68]
mov byte [rax + 2], 0x4e
mov rax, qword [rsp + 0x68]
mov byte [rax + 3], 0x44
add qword [rsp + 0x68], 4
lea r8, [rsp + 0x68]
mov edx, 0x67
lea rcx, [rbp - 0x70]
call fcn.1800a3dd0
mov r9, qword [rsp + 0x68]
mov ecx, dword [rbp + 0xf0]
mov r14, qword [rbp + 0xe0]
dec r15d
mov r10, qword [rbp + 0xf8]
mov rdx, qword [rbp - 0x60]
mov r11d, dword [rsp + 0x7c]
mov r8, qword [rbp - 0x80]
jmp 0x180096ebe
mov rax, r8
jmp 0x180096e80