Function at 0x14003ca10
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push rbp
push rdi
push r12
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x140093fc0]
xor rax, rsp
mov qword [rbp + 8], rax
mov rax, qword [0x140097b50]
xor edi, edi
mov r12d, 6
mov dword [rsp + 0x5c], 0xa086061
mov dword [rsp + 0x60], 0x480801
mov edx, edi
or dword [rax + 0x3f88], 3
mov qword [rax + 0x3f98], rdi
mov qword [rax + 0x3fa0], rdi
mov dword [rax + 0x3f8c], 1
movsd xmm0, qword [rax + 0x10]
movsd qword [rax + 0x3fa8], xmm0
mov dword [rax + 0x3f90], 1
mov eax, r12d
mov dword [rsp + 0x58], eax
nop dword [rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x5c], al
mov eax, dword [rsp + 0x58]
cmp edx, eax
jb 0x14003ca90
xor edx, edx
mov byte [rsp + rax + 0x5c], dil
mov r8d, 0xc202f
lea rcx, [rsp + 0x5c]
call fcn.14000d9c0
mov edx, edi
mov dword [rbp - 0x18], 3
mov dword [rbp - 0x14], 0x45060216
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rbp + rcx - 0x14], al
mov eax, dword [rbp - 0x18]
cmp edx, eax
jb 0x14003cad0
mov qword [rsp + 0x150], rbx
lea rcx, [rbp - 0x14]
mov qword [rsp + 0x158], rsi
mov qword [rsp + 0x160], r13
mov qword [rsp + 0x128], r14
mov qword [rsp + 0x120], r15
mov byte [rbp + rax - 0x14], dil
call fcn.140038660
test al, al
je 0x14003d837
mov dword [rsp + 0x40], 7
mov edx, edi
mov dword [rsp + 0x44], 0x20d1116
mov dword [rsp + 0x48], 0x491a0201
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003cb40
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14003a2e0
mov r13d, 4
test al, al
je 0x14003d6c2
mov rbx, qword [0x140097b50]
movaps xmmword [rsp + 0x110], xmm6
mov rax, qword [rbx + 0x3e88]
mov byte [rax + 0x98], 1
mov rax, qword [rbx + 0x3e88]
mov rcx, qword [rax + 0x190]
test rcx, rcx
je 0x14003cbb0
cmp dword [rcx + 0x10], 2
jne 0x14003cbab
cmp dword [rcx + 4], edi
je 0x14003cbc3
call fcn.14002d6a0
xor r8d, r8d
lea edx, [r8 + 2]
call fcn.14002cd60
mov rbx, qword [0x140097b50]
xor ecx, ecx
mov eax, r13d
mov dword [rbp - 0x18], eax
mov edx, edi
mov word [rbp - 0xf], cx
mov byte [rbp - 0xd], cl
mov dword [rsp + 0x58], edi
mov dword [rsp + 0x5c], 0x43110000
mov dword [rbp - 0x14], 0x3122262e
mov byte [rbp - 0x10], 0x46
nop dword [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rbp + rcx - 0x14], al
mov eax, dword [rbp - 0x18]
cmp edx, eax
jb 0x14003cbf0
mov byte [rbp + rax - 0x14], dil
lea rcx, [rbp - 0x14]
mov rax, qword [rbx + 0x3e88]
xor edx, edx
mov byte [rax + 0x98], 1
mov r8, qword [rbx + 0x3e88]
movsxd rax, dword [r8 + 0xd0]
mov r8, qword [r8 + 0xd8]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.140002f30
mov esi, eax
cmp dword [rbx + 0x3ebc], eax
jne 0x14003cc54
lea r8, [rbp - 0x14]
mov edx, 0xb
mov ecx, eax
call fcn.140018060
xor r9d, r9d
mov dword [rsp + 0x20], 2
lea r8, [rsp + 0x58]
mov edx, esi
lea rcx, [rbp - 0x14]
call fcn.14000ad60
mov eax, 9
mov edx, edi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x2b252011
mov dword [rsp + 0x48], 0x2c3a2666
mov dword [rsp + 0x4c], 0x4b2b
test eax, eax
je 0x14003ccb3
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003cca0
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14002e460
mov ebx, 5
mov dword [rsp + 0x44], 0x31202a15
mov eax, ebx
mov edx, edi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x48], 0x472e
nop
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003cce0
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14002e460
movss xmm6, dword [0x140088944]
xorps xmm0, xmm0
movaps xmm1, xmm6
call fcn.140011390
mov rdx, qword [0x140097b50]
mov dword [rsp + 0x40], 7
mov dword [rsp + 0x44], 0x2c136061
mov dword [rsp + 0x48], 0x49203322
or dword [rdx + 0x3f38], 1
mov dword [rdx + 0x3f3c], 0x432f0000
mov edx, edi
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003cd50
mov byte [rsp + rax + 0x44], dil
lea rsi, [0x140077d34]
lea rax, [rbp]
mov qword [rsp + 0x28], rsi
lea r9, [rbp - 0x18]
mov qword [rsp + 0x20], rax
lea r8, [0x14009403c]
mov dword [rbp], 0x14
lea rcx, [rsp + 0x44]
mov dword [rbp - 0x18], edi
call fcn.140031b50
mov eax, r12d
mov edx, edi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x222d260a
mov dword [rsp + 0x48], 0x48332e
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003cdc0
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14002e460
movaps xmm1, xmm6
xorps xmm0, xmm0
call fcn.140011390
mov rdx, qword [0x140097b50]
xor ecx, ecx
mov eax, 8
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x200c6061
or dword [rdx + 0x3f38], 1
mov dword [rdx + 0x3f3c], 0x432f0000
mov edx, edi
mov dword [rsp + 0x48], 0x3d20202f
mov byte [rsp + 0x4c], 0x4a
mov word [rsp + 0x4d], cx
mov byte [rsp + 0x4f], cl
test eax, eax
je 0x14003ce53
nop dword [rax]
nop dword [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003ce40
mov byte [rsp + rax + 0x44], dil
lea r9, [rbp]
lea rax, [rbp - 0x18]
mov qword [rsp + 0x28], rsi
lea r8, [0x140094038]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x44]
mov dword [rbp - 0x18], 0x14
mov dword [rbp], edi
call fcn.140031b50
mov eax, ebx
mov edx, edi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x24282606
mov dword [rsp + 0x48], 0x473f
nop dword [rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003cea0
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14002e460
movaps xmm1, xmm6
xorps xmm0, xmm0
call fcn.140011390
mov rdx, qword [0x140097b50]
mov dword [rsp + 0x40], 7
mov dword [rsp + 0x44], 0x20006061
mov dword [rsp + 0x48], 0x4931262a
or dword [rdx + 0x3f38], 1
mov dword [rdx + 0x3f3c], 0x432f0000
mov edx, edi
nop
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003cf00
mov byte [rsp + rax + 0x44], dil
lea r9, [rbp]
lea rax, [rbp - 0x18]
mov qword [rsp + 0x28], rsi
lea r8, [0x140097d38]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x44]
mov dword [rbp - 0x18], 0x14
mov dword [rbp], edi
call fcn.140031b50
call fcn.14000af70
call fcn.14002d390
mov edx, edi
mov dword [rsp + 0x58], edi
mov dword [rsp + 0x5c], 0x43110000
mov dword [rbp - 0x18], ebx
mov dword [rbp - 0x14], 0x2d232a30
mov dword [rbp - 0x10], 0x4732
nop
mov ecx, edx
lea eax, [rdx + 0x42]
inc edx
xor byte [rbp + rcx - 0x14], al
mov ebx, dword [rbp - 0x18]
cmp edx, ebx
jb 0x14003cf70
mov byte [rbp + rbx - 0x14], dil
lea rcx, [rbp - 0x14]
mov rbx, qword [0x140097b50]
xor edx, edx
mov rax, qword [rbx + 0x3e88]
mov byte [rax + 0x98], 1
mov r8, qword [rbx + 0x3e88]
movsxd rax, dword [r8 + 0xd0]
mov r8, qword [r8 + 0xd8]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.140002f30
mov esi, eax
cmp dword [rbx + 0x3ebc], eax
jne 0x14003cfdb
lea r8, [rbp - 0x14]
mov edx, 0xb
mov ecx, eax
call fcn.140018060
xor r9d, r9d
mov dword [rsp + 0x20], 2
lea r8, [rsp + 0x58]
mov edx, esi
lea rcx, [rbp - 0x14]
call fcn.14000ad60
mov edx, edi
mov dword [rsp + 0x40], 7
mov dword [rsp + 0x44], 0x273d2609
mov dword [rsp + 0x48], 0x492c292f
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003d010
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14002e460
movaps xmm1, xmm6
xorps xmm0, xmm0
call fcn.140011390
xor ecx, ecx
mov dword [rsp + 0x58], 0x42fa0000
lea r8, [rsp + 0x58]
mov dword [rsp + 0x5c], 0x41c80000
lea rdx, [0x140097d30]
call fcn.14003c680
mov ebx, 0xa
mov dword [rsp + 0x44], 0x20362a04
mov eax, ebx
mov edx, edi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x48], 0x20242666
mov dword [rsp + 0x4c], 0x4c382b
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003d090
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14002e460
movaps xmm1, xmm6
xorps xmm0, xmm0
call fcn.140011390
mov ecx, 1
mov dword [rsp + 0x58], 0x42fa0000
lea r8, [rsp + 0x58]
mov dword [rsp + 0x5c], 0x41c80000
lea rdx, [0x140097d34]
call fcn.14003c680
call fcn.14000af70
mov rcx, qword [0x140097b50]
mov rax, qword [rcx + 0x3e88]
mov byte [rax + 0x98], 1
mov rax, qword [rcx + 0x3e88]
mov rdx, qword [rax + 0x190]
test rdx, rdx
je 0x14003d127
cmp dword [rdx + 0x10], 1
jne 0x14003d11b
cmp dword [rdx + 4], edi
je 0x14003d127
call fcn.14002d6a0
mov rcx, qword [0x140097b50]
mov rax, qword [rcx + 0x3e88]
cmp byte [rax + 0x9b], dil
jne 0x14003d149
mov eax, dword [rax + 0x19c]
neg eax
sbb ecx, ecx
add ecx, r12d
call fcn.140030380
mov dword [rsp + 0x40], ebx
mov edx, edi
mov dword [rsp + 0x44], 0x30302211
mov dword [rsp + 0x48], 0x203c2634
mov dword [rsp + 0x4c], 0x4c2525
nop word [rax + rax]
mov ecx, edx
lea eax, [rdx + 0x42]
inc edx
xor byte [rsp + rcx + 0x44], al
mov ebx, dword [rsp + 0x40]
cmp edx, ebx
jb 0x14003d170
lea rcx, [rsp + 0x44]
mov byte [rsp + rbx + 0x44], dil
call fcn.14002e460
movaps xmm1, xmm6
xorps xmm0, xmm0
call fcn.140011390
mov rdx, qword [0x140097b50]
movaps xmm6, xmmword [rsp + 0x110]
mov eax, 2
mov dword [rsp + 0x58], eax
or dword [rdx + 0x3f38], 1
mov dword [rdx + 0x3f3c], 0x432f0000
mov edx, edi
mov dword [rsp + 0x5c], 0x442767
test eax, eax
je 0x14003d1f3
nop dword [rax]
nop dword [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x5c], al
mov eax, dword [rsp + 0x58]
cmp edx, eax
jb 0x14003d1e0
movdqa xmm0, xmmword [0x1400889f0]
mov edx, edi
mov byte [rsp + rax + 0x5c], dil
mov eax, 0xc
mov dword [rsp + 0x40], eax
movdqu xmmword [rsp + 0x44], xmm0
test eax, eax
je 0x14003d233
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003d220
mov byte [rsp + rax + 0x44], dil
lea rcx, [rsp + 0x44]
lea rax, [rsp + 0x5c]
mov dword [rbp - 0x18], 0x64
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
mov dword [rbp], 1
call fcn.1400320d0
movdqa xmm0, xmmword [0x140088a60]
mov edx, edi
mov eax, 0xd
mov dword [rbp - 0x18], eax
movdqu xmmword [rbp - 0x14], xmm0
test eax, eax
je 0x14003d2a2
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rbp + rcx - 0x14], al
mov eax, dword [rbp - 0x18]
cmp edx, eax
jb 0x14003d290
lea rcx, [rbp - 0x14]
mov byte [rbp + rax - 0x14], dil
call fcn.14002e460
lea rax, str.NONE
mov edx, 4
mov qword [rbp - 0x58], rax
lea rax, str.PURPLE
mov qword [rbp - 0x50], rax
lea rax, [0x1400877d8]
mov qword [rbp - 0x48], rax
lea rax, str.YELLOW
mov qword [rbp - 0x40], rax
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x140097ed8], eax
jle 0x14003d364
lea rcx, [0x140097ed8]
call fcn.140058624
cmp dword [0x140097ed8], 0xffffffff
jne 0x14003d364
mov eax, 2
mov r8d, edi
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x5c], 0x44726f
test eax, eax
je 0x14003d347
nop word [rax + rax]
lea eax, [r8 + 0x42]
mov edx, r8d
inc r8d
xor byte [rsp + rdx + 0x5c], al
mov eax, dword [rsp + 0x58]
cmp r8d, eax
jb 0x14003d330
mov byte [rsp + rax + 0x5c], dil
lea rcx, [0x140097ed8]
lea rax, [rsp + 0x5c]
mov qword [0x140097ed0], rax
call fcn.1400585b8
mov eax, 2
mov edx, edi
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x6c], 0x44726f
test eax, eax
je 0x14003d393
nop dword [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x6c], al
mov eax, dword [rsp + 0x68]
cmp edx, eax
jb 0x14003d380
mov byte [rsp + rax + 0x6c], dil
lea rax, [rsp + 0x6c]
cmp qword [0x140097ed0], rax
jne 0x14003d44e
mov r14d, edi
lea r15, [rbp - 0x58]
mov rbx, qword [r15]
lea rcx, [rbp - 0x38]
call fcn.14003c490
mov rcx, rax
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], dil
jne 0x14003d3c7
cmp qword [rcx + 0x18], 0xf
mov r8, qword [rcx + 0x10]
jbe 0x14003d3de
mov rcx, qword [rcx]
cmp r8, rax
jne 0x14003d3f4
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14003d3f4
mov sil, 1
jmp 0x14003d3f7
xor sil, sil
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x14003d432
mov rcx, qword [rbp - 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003d42d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003d618
call fcn.140058540
test sil, sil
je 0x14003d43e
mov qword [0x140097ed0], rbx
inc r14d
add r15, 8
cmp r14d, r13d
jl 0x14003d3b1
mov rax, qword [0x140097b50]
mov r8d, edi
mov dword [rsp + 0x40], 7
mov dword [rsp + 0x44], 0x2a276061
mov dword [rsp + 0x48], 0x4927252b
or dword [rax + 0x3f38], 1
mov dword [rax + 0x3f3c], 0x432f0000
lea eax, [r8 + 0x42]
mov ecx, r8d
inc r8d
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp r8d, eax
jb 0x14003d481
mov rdx, qword [0x140097ed0]
lea rcx, [rsp + 0x44]
xor r8d, r8d
mov byte [rsp + rax + 0x44], dil
call fcn.140030d80
test al, al
je 0x14003d685
mov rbx, qword [0x140097ed0]
lea r14, [rbp - 0x58]
mov qword [rsp + 0x58], rdi
mov r12, r13
nop dword [rax]
mov rsi, qword [r14]
lea r9, [rsp + 0x58]
cmp rbx, rsi
mov rcx, rsi
sete r15b
movzx edx, r15b
call fcn.140037fc0
test al, al
je 0x14003d61f
mov r8d, 6
mov dword [rsp + 0x7c], 0x15161612
mov eax, r8d
mov rbx, rsi
mov dword [rsp + 0x78], eax
mov edx, edi
mov qword [0x140097ed0], rbx
mov dword [rbp - 0x80], 0x48020a
nop dword [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x7c], al
mov eax, dword [rsp + 0x78]
cmp edx, eax
jb 0x14003d520
mov byte [rsp + rax + 0x7c], dil
lea rax, [rsp + 0x7c]
cmp rbx, rax
je 0x14003d580
xor ecx, ecx
mov eax, r13d
mov dword [rbp - 0x68], eax
mov edx, edi
mov word [rbp - 0x5f], cx
mov byte [rbp - 0x5d], cl
mov dword [rbp - 0x64], 0xa0c0c
mov byte [rbp - 0x60], 0x46
nop
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rbp + rcx - 0x64], al
mov eax, dword [rbp - 0x68]
cmp edx, eax
jb 0x14003d560
mov byte [rbp + rax - 0x64], dil
lea rax, [rbp - 0x64]
cmp rbx, rax
jne 0x14003d58a
mov dword [0x140094048], 2
mov dword [rsp + 0x70], 3
mov edx, edi
mov dword [rsp + 0x74], 0x45000610
nop dword [rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x74], al
mov eax, dword [rsp + 0x70]
cmp edx, eax
jb 0x14003d5a0
mov byte [rsp + rax + 0x74], dil
lea rax, [rsp + 0x74]
cmp rbx, rax
jne 0x14003d5cc
mov dword [0x140094048], 1
mov eax, r8d
mov edx, edi
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x74], 0x908061b
mov dword [rbp - 0x70], 0x481009
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rbp + rcx - 0x74], al
mov eax, dword [rbp - 0x78]
cmp edx, eax
jb 0x14003d5e2
mov byte [rbp + rax - 0x74], dil
lea rax, [rbp - 0x74]
cmp rbx, rax
jne 0x14003d60c
mov dword [0x140094048], 7
test r15b, r15b
je 0x14003d626
call fcn.140010520
jmp 0x14003d626
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rbx, qword [0x140097ed0]
add r14, 8
sub r12, 1
jne 0x14003d4d0
mov rbx, qword [0x140097b50]
mov rax, qword [rbx + 0x3e88]
cmp qword [rbx + 0x4090], rax
jne 0x14003d663
cmp byte [rbx + 0x40ed], dil
je 0x14003d663
cmp dword [rbx + 0x40cc], edi
jne 0x14003d663
or dword [rbx + 0x40f0], 2
test dword [rax + 0xc], 0x1000000
je 0x14003d673
mov byte [rbx + 0x3e16], 1
call fcn.14000fd00
mov byte [rbx + 0x3e16], dil
mov r12d, 6
mov r8, qword [0x140097b50]
mov rdx, qword [r8 + 0x3e88]
cmp byte [rdx + 0x9b], dil
jne 0x14003d6c2
mov r8, qword [r8 + 0x4358]
test r8, r8
je 0x14003d6c2
movsx rax, word [r8 + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [r8 + 8]
test byte [rcx + rax + 4], 8
jne 0x14003d6c2
dec dword [rdx + 0xd0]
mov dword [rsp + 0x40], r12d
mov edx, edi
mov dword [rsp + 0x44], 0x30a0c01
mov dword [rsp + 0x48], 0x48000f
test r12d, r12d
je 0x14003d703
nop
mov ecx, edx
lea eax, [rdx + 0x42]
inc edx
xor byte [rsp + rcx + 0x44], al
mov r13d, dword [rsp + 0x40]
mov dword [rbp - 0x18], r13d
cmp edx, r13d
jb 0x14003d6e0
mov r12d, dword [rbp - 0x18]
mov r13d, 4
mov eax, r12d
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], dil
call fcn.14003a2e0
test al, al
je 0x14003d832
xor ecx, ecx
mov eax, r13d
mov dword [rsp + 0x58], 0x42fa0000
mov edx, edi
mov dword [rsp + 0x5c], 0x41c80000
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x20322211
mov byte [rsp + 0x48], 0x46
mov word [rsp + 0x49], cx
mov byte [rsp + 0x4b], cl
test r13d, r13d
je 0x14003d773
nop dword [rax]
nop word [rax + rax]
lea eax, [rdx + 0x42]
mov ecx, edx
inc edx
xor byte [rsp + rcx + 0x44], al
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x14003d760
lea rdx, [rsp + 0x58]
mov byte [rsp + rax + 0x44], dil
lea rcx, [rsp + 0x44]
call fcn.14002ed30
test al, al
je 0x14003d790
call fcn.1400411f0
xor eax, eax
mov dword [rsp + 0x58], 0x42fa0000
mov dword [rsp + 0x5c], 0x41c80000
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x44], 0x21252c0e
mov byte [rsp + 0x48], 0x46
mov word [rsp + 0x49], ax
mov byte [rsp + 0x4b], al
test r13d, r13d
je 0x14003d7d5
lea eax, [rdi + 0x42]
xor byte [rsp + rdi + 0x44], al
inc edi
mov r13d, dword [rsp + 0x40]
cmp edi, r13d
jb 0x14003d7c2
mov eax, r13d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x44]
mov byte [rsp + rax + 0x44], 0
call fcn.14002ed30
test al, al
je 0x14003d7f5
call fcn.140041d30
mov r8, qword [0x140097b50]
mov rdx, qword [r8 + 0x3e88]
cmp byte [rdx + 0x9b], 0
jne 0x14003d832
mov r8, qword [r8 + 0x4358]
test r8, r8
je 0x14003d832
movsx rax, word [r8 + 0x70]
imul rcx, rax, 0x2c
mov rax, qword [r8 + 8]
test byte [rcx + rax + 4], 8
jne 0x14003d832
dec dword [rdx + 0xd0]
call fcn.140038b30
call fcn.14000fd00
mov r15, qword [rsp + 0x120]
mov r14, qword [rsp + 0x128]
mov r13, qword [rsp + 0x160]
mov rsi, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.140058450
add rsp, 0x130
pop r12
pop rdi
pop rbp
ret