Function at 0x140156690
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
mov eax, 0x44c8
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.14010bfb0
sub rsp, rax
pxor xmm0, xmm0
mov ebx, dword [rcx]
mov qword [rsp + 0x4510], rcx
mov dword [rsp + 0xb0], 0
mov qword [rsp + 0x1a0], 0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x190], xmm0
cmp ebx, 0x10
ja 0x140157024
test r8, r8
je 0x140157030
movzx edi, byte [rdx]
cmp rdi, 0x7f
jbe 0x14015681c
cmp rdi, 0xf1
ja 0x1401568b5
lea rax, [rdi - 0x7e]
lea rsi, [rdi - 0x7f]
shr rax, 1
lea rbp, [rax + 1]
cmp r8, rbp
jb 0x140157030
xor eax, eax
lea r11, [rsp + 0x1b0]
lea r9, [rsp + 0x1b1]
mov ecx, eax
shr ecx, 1
add ecx, 1
movzx ecx, byte [rdx + rcx]
mov r8d, ecx
and ecx, 0xf
shr r8b, 4
mov byte [r11 + rax], r8b
mov byte [r9 + rax], cl
add rax, 2
cmp rax, rsi
jb 0x140156761
mov dword [rsp + 0xb0], 0
pxor xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0xa0], xmm0
xor r10d, r10d
xor edx, edx
xor eax, eax
mov r8d, 1
lea r9, [rsp + 0x70]
jmp 0x1401567f1
movzx eax, cl
add dword [r9 + rax*4], 1
mov eax, r8d
shl eax, cl
sar eax, 1
add edx, eax
lea eax, [r10 + 1]
mov r10, rax
cmp rax, rsi
jae 0x14015698a
movzx ecx, byte [rsp + rax + 0x1b0]
cmp cl, 0xf
jbe 0x1401567d0
mov rbp, 0xffffffffffffffec
mov rax, rbp
add rsp, 0x44c8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rbp, [rdi + 1]
cmp r8, rbp
jb 0x140157030
mov dword [rsp + 0x110], 0xff
cmp rdi, 1
jbe 0x140157030
mov qword [rsp + 0x20], rdi
lea r12, [rdx + 1]
lea r15, [rsp + 0x2b0]
lea rdx, [rsp + 0x110]
mov r9, r12
lea r8, [rsp + 0xc0]
mov rcx, r15
call fcn.140127c50
mov rsi, rax
cmp rax, 0xffffffffffffff88
ja 0x1401575d9
cmp rax, rdi
jae 0x140157030
lea r13, [rsp + 0x4b0]
mov r9d, dword [rsp + 0xc0]
mov r8d, dword [rsp + 0x110]
mov rdx, r15
mov rcx, r13
call fcn.140126db0
cmp rax, 0xffffffffffffff88
jbe 0x1401575a8
mov rbp, rax
jmp 0x140156805
movdqa xmm0, xmmword [0x14020eb10]
lea rax, [0x140238180]
mov ebp, 1
mov esi, dword [rax + rdi*4 - 0x3c8]
movaps xmmword [rsp + 0x1b0], xmm0
movaps xmmword [rsp + 0x1c0], xmm0
movaps xmmword [rsp + 0x1d0], xmm0
movaps xmmword [rsp + 0x1e0], xmm0
movaps xmmword [rsp + 0x1f0], xmm0
movaps xmmword [rsp + 0x200], xmm0
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x220], xmm0
movaps xmmword [rsp + 0x230], xmm0
movaps xmmword [rsp + 0x240], xmm0
movaps xmmword [rsp + 0x250], xmm0
movaps xmmword [rsp + 0x260], xmm0
movaps xmmword [rsp + 0x270], xmm0
movaps xmmword [rsp + 0x280], xmm0
movaps xmmword [rsp + 0x290], xmm0
movaps xmmword [rsp + 0x2a0], xmm0
mov dword [rsp + 0xb0], 0
pxor xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0xa0], xmm0
test rsi, rsi
jne 0x1401567b3
jmp 0x1401567fe
test edx, edx
je 0x1401567fe
bsr edi, edx
lea r10d, [rdi + 1]
mov r11d, edi
cmp r10d, 0x10
ja 0x1401567fe
mov r12d, r8d
mov ecx, r10d
shl r12d, cl
sub r12d, edx
bsr eax, r12d
mov ecx, eax
shl r8d, cl
cmp r12d, r8d
jne 0x1401567fe
add eax, 1
add dword [r9 + rax*4], 1
mov r9d, dword [rsp + 0x74]
mov byte [rsp + rsi + 0x1b0], al
cmp r9d, 1
jbe 0x1401567fe
test r9b, 1
jne 0x1401567fe
lea r8d, [rsi + 1]
cmp ebx, r10d
jb 0x140157024
mov eax, r10d
lea r13d, [rdi + 2]
mov eax, dword [rsp + rax*4 + 0x70]
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x1401575f3
mov eax, edi
mov r12d, dword [rsp + rax*4 + 0x70]
test r12d, r12d
jne 0x1401575eb
lea edx, [rdi - 1]
mov esi, dword [rsp + rdx*4 + 0x70]
mov rax, rdx
test esi, esi
jne 0x1401575e1
lea ecx, [rdi - 2]
mov r11d, dword [rsp + rcx*4 + 0x70]
mov rdx, rcx
test r11d, r11d
jne 0x140157537
lea ecx, [rdi - 3]
mov rax, rcx
mov ecx, dword [rsp + rcx*4 + 0x70]
test ecx, ecx
jne 0x14015753f
lea ecx, [rdi - 4]
mov r15d, dword [rsp + rcx*4 + 0x70]
mov rdx, rcx
test r15d, r15d
jne 0x140157537
lea ecx, [rdi - 5]
mov r14d, dword [rsp + rcx*4 + 0x70]
mov rax, rcx
test r14d, r14d
jne 0x14015753f
lea ecx, [rdi - 6]
mov r12d, dword [rsp + rcx*4 + 0x70]
mov rdx, rcx
test r12d, r12d
jne 0x140157537
lea ecx, [rdi - 7]
mov esi, dword [rsp + rcx*4 + 0x70]
mov rax, rcx
test esi, esi
jne 0x14015753f
lea ecx, [rdi - 8]
mov r11d, dword [rsp + rcx*4 + 0x70]
mov rdx, rcx
test r11d, r11d
jne 0x140157537
lea ecx, [rdi - 9]
mov rax, rcx
mov ecx, dword [rsp + rcx*4 + 0x70]
test ecx, ecx
jne 0x14015753f
lea ecx, [rdi - 0xa]
mov r15d, dword [rsp + rcx*4 + 0x70]
mov rdx, rcx
test r15d, r15d
jne 0x140157537
lea ecx, [rdi - 0xb]
mov r14d, dword [rsp + rcx*4 + 0x70]
mov rax, rcx
test r14d, r14d
jne 0x14015753f
lea ecx, [rdi - 0xc]
mov r12d, dword [rsp + rcx*4 + 0x70]
mov rdx, rcx
test r12d, r12d
jne 0x140157537
lea ecx, [rdi - 0xd]
mov esi, dword [rsp + rcx*4 + 0x70]
mov rax, rcx
test esi, esi
jne 0x14015753f
lea ecx, [rdi - 0xe]
mov r11d, dword [rsp + rcx*4 + 0x70]
mov rdx, rcx
test r11d, r11d
jne 0x140157537
lea ecx, [rdi - 0xf]
mov rax, rcx
mov ecx, dword [rsp + rcx*4 + 0x70]
test ecx, ecx
jne 0x14015753f
lea r11d, [rdi - 0x10]
mov edi, r13d
mov esi, r11d
sub edi, r11d
sub esi, r13d
mov dword [rsp + 0x3c], edi
cmp eax, 1
jbe 0x140157572
mov dword [rsp + 0x168], 0
cmp eax, 2
je 0x140157568
mov edi, dword [rsp + 0x78]
mov dword [rsp + 0x16c], r9d
add edi, r9d
mov dword [rsp + 0x38], edi
cmp eax, 3
je 0x140156cef
mov edx, dword [rsp + 0x7c]
mov dword [rsp + 0x170], edi
add edx, edi
cmp eax, 4
je 0x140157549
mov edi, dword [rsp + 0x80]
mov dword [rsp + 0x174], edx
add edi, edx
mov dword [rsp + 0x38], edi
cmp eax, 5
je 0x140156cef
mov edx, dword [rsp + 0x84]
mov dword [rsp + 0x178], edi
add edx, edi
cmp eax, 6
je 0x140157549
mov edi, dword [rsp + 0x88]
mov dword [rsp + 0x17c], edx
add edi, edx
mov dword [rsp + 0x38], edi
cmp eax, 7
je 0x140156cef
mov edx, dword [rsp + 0x8c]
mov dword [rsp + 0x180], edi
add edx, edi
cmp eax, 8
je 0x140157549
mov edi, dword [rsp + 0x90]
mov dword [rsp + 0x184], edx
add edi, edx
mov dword [rsp + 0x38], edi
cmp eax, 9
je 0x140156cef
mov ecx, dword [rsp + 0x94]
mov dword [rsp + 0x188], edi
add ecx, edi
cmp eax, 0xa
je 0x140157608
mov edx, dword [rsp + 0x98]
mov dword [rsp + 0x18c], ecx
add edx, ecx
cmp eax, 0xb
je 0x140157549
mov edi, dword [rsp + 0x9c]
mov dword [rsp + 0x190], edx
add edi, edx
mov dword [rsp + 0x38], edi
cmp eax, 0xc
je 0x140156cef
mov edx, dword [rsp + 0xa0]
mov dword [rsp + 0x194], edi
add edx, edi
cmp eax, 0xd
je 0x140157549
mov edi, dword [rsp + 0xa4]
mov dword [rsp + 0x198], edx
add edi, edx
mov dword [rsp + 0x38], edi
cmp eax, 0xe
je 0x140156cef
mov ecx, dword [rsp + 0xa8]
mov dword [rsp + 0x19c], edi
add ecx, edi
cmp eax, 0xf
je 0x140157608
mov edx, dword [rsp + 0xac]
mov dword [rsp + 0x1a0], ecx
add edx, ecx
cmp eax, 0x10
je 0x140157549
mov edi, dword [rsp + 0xb0]
mov dword [rsp + 0x1a4], edx
add edi, edx
mov dword [rsp + 0x38], edi
mov edi, dword [rsp + 0x38]
mov dword [rsp + 0x164], edi
test r8d, r8d
je 0x140157552
mov dword [rsp + 0x48], eax
xor edx, edx
lea r11, [rsp + 0x1b0]
lea r15, [rsp + 0x2b0]
mov dword [rsp + 0x40], ebx
lea rdi, [rsp + 0x164]
nop dword [rax]
movzx eax, byte [r11 + rdx]
movzx ebx, dl
add rdx, 1
lea r12, [rdi + rax*4]
mov rcx, rax
mov eax, dword [r12]
mov bh, cl
lea r14d, [rax + 1]
mov dword [r12], r14d
mov word [r15 + rax*2], bx
cmp edx, r8d
jb 0x140156d28
mov ebx, dword [rsp + 0x40]
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x164], 0
lea edx, [rbx - 1]
sub edx, r10d
cmp eax, 1
jbe 0x140157229
mov dword [rsp + 0x4b4], 0
lea ecx, [rdx + 1]
shl r9d, cl
cmp eax, 2
je 0x140156f5e
mov r8d, dword [rsp + 0x78]
lea ecx, [rdx + 2]
mov dword [rsp + 0x4b8], r9d
shl r8d, cl
add r8d, r9d
cmp eax, 3
je 0x140156f5e
mov r9d, dword [rsp + 0x7c]
lea ecx, [rdx + 3]
mov dword [rsp + 0x4bc], r8d
shl r9d, cl
add r9d, r8d
cmp eax, 4
je 0x140156f5e
mov r8d, dword [rsp + 0x80]
lea ecx, [rdx + 4]
mov dword [rsp + 0x4c0], r9d
shl r8d, cl
add r8d, r9d
cmp eax, 5
je 0x140156f5e
mov r9d, dword [rsp + 0x84]
lea ecx, [rdx + 5]
mov dword [rsp + 0x4c4], r8d
shl r9d, cl
add r9d, r8d
cmp eax, 6
je 0x140156f5e
mov r8d, dword [rsp + 0x88]
lea ecx, [rdx + 6]
mov dword [rsp + 0x4c8], r9d
shl r8d, cl
add r8d, r9d
cmp eax, 7
je 0x140156f5e
mov r9d, dword [rsp + 0x8c]
lea ecx, [rdx + 7]
mov dword [rsp + 0x4cc], r8d
shl r9d, cl
add r9d, r8d
cmp eax, 8
je 0x140156f5e
mov r8d, dword [rsp + 0x90]
lea ecx, [rdx + 8]
mov dword [rsp + 0x4d0], r9d
shl r8d, cl
add r8d, r9d
cmp eax, 9
je 0x140156f5e
mov r9d, dword [rsp + 0x94]
lea ecx, [rdx + 9]
mov dword [rsp + 0x4d4], r8d
shl r9d, cl
add r9d, r8d
cmp eax, 0xa
je 0x140156f5e
mov r8d, dword [rsp + 0x98]
lea ecx, [rdx + 0xa]
mov dword [rsp + 0x4d8], r9d
shl r8d, cl
add r8d, r9d
cmp eax, 0xb
je 0x140156f5e
mov r9d, dword [rsp + 0x9c]
lea ecx, [rdx + 0xb]
mov dword [rsp + 0x4dc], r8d
shl r9d, cl
add r9d, r8d
cmp eax, 0xc
je 0x140156f5e
mov r8d, dword [rsp + 0xa0]
lea ecx, [rdx + 0xc]
mov dword [rsp + 0x4e0], r9d
shl r8d, cl
add r8d, r9d
cmp eax, 0xd
je 0x140156f5e
mov r9d, dword [rsp + 0xa4]
lea ecx, [rdx + 0xd]
mov dword [rsp + 0x4e4], r8d
shl r9d, cl
add r9d, r8d
cmp eax, 0xe
je 0x140156f5e
mov r8d, dword [rsp + 0xa8]
lea ecx, [rdx + 0xe]
mov dword [rsp + 0x4e8], r9d
shl r8d, cl
add r8d, r9d
cmp eax, 0xf
je 0x140156f5e
add edx, 0xf
mov edi, dword [rsp + 0xac]
mov dword [rsp + 0x4ec], r8d
mov ecx, edx
shl edi, cl
mov edx, edi
add edx, r8d
cmp eax, 0x11
jne 0x140156f5e
mov dword [rsp + 0x4f0], edx
lea r8d, [rbx + rsi + 1]
cmp dword [rsp + 0x3c], r8d
jae 0x140157229
mov ecx, dword [rsp + 0x3c]
lea edi, [rax - 2]
lea r11, [rsp + 0x4b0]
mov dword [rsp + 0x60], edi
lea edi, [rax - 1]
mov rdx, rcx
mov r10d, edi
shl rdx, 4
shr r10d, 2
add rdx, rcx
mov ecx, edi
and edi, 3
and ecx, 0xfffffffc
lea rdx, [r11 + rdx*4]
lea r9d, [rcx + 1]
lea r14, [r9*4]
lea r9d, [rcx + 2]
add ecx, 3
lea r15, [r9*4]
mov dword [rsp + 0x40], r9d
mov r9, 0xfffffffffffffffc
lea rsi, [r11 + r14]
mov qword [rsp + 0x50], r15
lea r12, [r11 + r15]
lea r15, [rcx*4]
sub r9, r11
mov dword [rsp + 0x4c], ecx
mov ecx, dword [rsp + 0x3c]
mov qword [rsp + 0x58], r15
add r15, r11
cmp dword [rsp + 0x60], 2
ja 0x1401571a1
mov r11d, dword [rsp + 0x4b4]
shr r11d, cl
mov dword [rdx + 4], r11d
cmp eax, 2
jne 0x14015750a
add ecx, 1
add rdx, 0x44
cmp ecx, r8d
jb 0x140156ffb
jmp 0x140157229
mov rbp, 0xffffffffffffffd4
jmp 0x140156805
mov rbp, 0xffffffffffffffb8
jmp 0x140156805
mov r11d, dword [rsp + 0x4b4]
mov ebx, dword [rsp + 0x48]
shr r11d, cl
mov dword [rdx + 4], r11d
mov r11d, dword [rsp + 0x4b8]
shr r11d, cl
mov dword [rdx + 8], r11d
mov r11d, dword [rsp + 0x4bc]
shr r11d, cl
mov dword [rdx + 0xc], r11d
cmp eax, 4
je 0x140157522
mov r11d, dword [rsp + 0x4c0]
shr r11d, cl
mov dword [rdx + 0x10], r11d
cmp eax, 5
je 0x140157191
mov r11d, dword [rsp + 0x4c4]
shr r11d, cl
mov dword [rdx + 0x14], r11d
cmp eax, 6
je 0x140157191
mov r11d, dword [rsp + 0x4c8]
shr r11d, cl
mov dword [rdx + 0x18], r11d
cmp eax, 7
je 0x140157191
mov r11d, dword [rsp + 0x4cc]
shr r11d, cl
mov dword [rdx + 0x1c], r11d
cmp eax, 8
je 0x140157191
mov r11d, dword [rsp + 0x4d0]
shr r11d, cl
mov dword [rdx + 0x20], r11d
cmp eax, 9
je 0x140157191
mov r11d, dword [rsp + 0x4d4]
shr r11d, cl
mov dword [rdx + 0x24], r11d
cmp eax, 0xa
je 0x140157191
mov r11d, dword [rsp + 0x4d8]
shr r11d, cl
mov dword [rdx + 0x28], r11d
cmp eax, 0xb
je 0x140157191
mov r11d, dword [rsp + 0x4dc]
shr r11d, cl
mov dword [rdx + 0x2c], r11d
cmp eax, 0xc
je 0x140157191
mov r11d, dword [rsp + 0x4e0]
shr r11d, cl
mov dword [rdx + 0x30], r11d
cmp eax, 0xd
je 0x140157191
mov r11d, dword [rsp + 0x4e4]
shr r11d, cl
mov dword [rdx + 0x34], r11d
cmp eax, 0xe
je 0x140157191
mov r11d, dword [rsp + 0x4e8]
shr r11d, cl
mov dword [rdx + 0x38], r11d
cmp eax, 0xf
je 0x140157191
mov r11d, dword [rsp + 0x4ec]
shr r11d, cl
mov dword [rdx + 0x3c], r11d
cmp eax, 0x11
jne 0x140157191
mov r11d, dword [rsp + 0x4f0]
shr r11d, cl
mov dword [rdx + 0x40], r11d
add ecx, 1
add rdx, 0x44
cmp ecx, r8d
jae 0x140157229
mov dword [rsp + 0x48], ebx
lea r11, [r9 + rdx]
cmp r11, 8
jbe 0x140157040
movdqu xmm0, xmmword [rsp + 0x4b4]
movd xmm1, ecx
psrld xmm0, xmm1
movups xmmword [rdx + 4], xmm0
cmp r10d, 1
je 0x1401574c0
movdqu xmm0, xmmword [rsp + 0x4c4]
psrld xmm0, xmm1
movups xmmword [rdx + 0x14], xmm0
cmp r10d, 2
je 0x1401574c0
movdqu xmm0, xmmword [rsp + 0x4d4]
psrld xmm0, xmm1
movups xmmword [rdx + 0x24], xmm0
cmp r10d, 4
jne 0x1401574c0
movdqu xmm0, xmmword [rsp + 0x4e4]
psrld xmm0, xmm1
movups xmmword [rdx + 0x34], xmm0
add ecx, 1
add rdx, 0x44
cmp ecx, r8d
jb 0x1401571a5
mov ebx, dword [rsp + 0x48]
movdqa xmm2, xmmword [rsp + 0x4b0]
mov eax, r13d
movdqa xmm3, xmmword [rsp + 0x4c0]
movdqa xmm4, xmmword [rsp + 0x4d0]
sub eax, ebx
movdqa xmm5, xmmword [rsp + 0x4e0]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x4f0]
movaps xmmword [rsp + 0xc0], xmm2
mov dword [rsp + 0x100], eax
mov eax, dword [rsp + 0x38]
movaps xmmword [rsp + 0xd0], xmm3
movaps xmmword [rsp + 0xe0], xmm4
movaps xmmword [rsp + 0xf0], xmm5
test eax, eax
je 0x140156805
lea r15, [rsp + 0x2b0]
sub ebx, r13d
mov qword [rsp + 0x68], rbp
lea rax, [r15 + rax*2]
mov dword [rsp + 0x48], ebx
mov r10, r15
mov r8, r15
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x4510]
add rax, 4
mov qword [rsp + 0x60], rax
nop dword [rax]
movzx eax, byte [r10 + 1]
mov esi, dword [rsp + 0x48]
mov r11d, 1
mov r12d, r13d
movzx r15d, byte [r10]
lea ecx, [rax + rsi]
mov r9d, dword [rsp + rax*4 + 0xc0]
mov esi, dword [rsp + 0x3c]
sub r12d, eax
shl r11d, cl
lea edx, [r9 + r11]
cmp ecx, esi
jb 0x140157480
mov esi, dword [rsp + 0x58]
mov rbx, qword [rsp + 0x4510]
mov r14d, r12d
mov r11d, dword [rsp + 0x38]
lea ebp, [rsi + r12]
lea rbx, [rbx + r9*4 + 4]
mov esi, 1
mov r9, r14
test ebp, ebp
cmovg esi, ebp
shl r9, 4
add r9, r14
shl r9, 2
movsxd rsi, esi
lea r14, [rsp + r9 + 0x4b0]
mov edi, dword [rsp + rsi*4 + 0x160]
movdqu xmm2, xmmword [rsp + r9 + 0x4b0]
movdqu xmm3, xmmword [r14 + 0x10]
movdqu xmm4, xmmword [r14 + 0x20]
movdqu xmm5, xmmword [r14 + 0x30]
mov r9d, dword [r14 + 0x40]
sub r11d, edi
movaps xmmword [rsp + 0x110], xmm2
movaps xmmword [rsp + 0x120], xmm3
mov dword [rsp + 0x150], r9d
movaps xmmword [rsp + 0x130], xmm4
movaps xmmword [rsp + 0x140], xmm5
cmp ebp, 1
jle 0x1401573c6
mov ebp, dword [rsp + rsi*4 + 0x110]
mov esi, r12d
test ebp, ebp
je 0x1401573c6
mov r9, rbx
lea rbp, [rbx + rbp*4]
nop dword [rax + rax]
mov word [r9], r15w
add r9, 4
mov byte [r9 - 2], sil
mov byte [r9 - 1], 1
cmp rbp, r9
jne 0x1401573b0
test r11d, r11d
je 0x14015745c
mov dword [rsp + 0x4c], edx
sub ecx, r13d
add r11, rdi
lea rsi, [r8 + rdi*2]
mov qword [rsp + 0x50], r10
mov ebp, ecx
lea r14, [r8 + r11*2]
nop dword [rax + rax]
movzx r11d, byte [rsi + 1]
movzx r9d, byte [rsi]
mov r10d, 1
lea ecx, [r11 + rbp]
mov edx, dword [rsp + r11*4 + 0x110]
shl r9d, 8
shl r10d, cl
mov ecx, r13d
add r9d, r15d
sub ecx, r11d
add r10d, edx
lea edi, [r12 + rcx]
nop word [rax + rax]
mov ecx, edx
add edx, 1
lea rcx, [rbx + rcx*4]
mov word [rcx], r9w
mov byte [rcx + 2], dil
mov byte [rcx + 3], 2
cmp edx, r10d
jb 0x140157428
add rsi, 2
mov dword [rsp + r11*4 + 0x110], r10d
cmp r14, rsi
jne 0x1401573f0
mov edx, dword [rsp + 0x4c]
mov r10, qword [rsp + 0x50]
mov dword [rsp + rax*4 + 0xc0], edx
mov rax, qword [rsp + 0x40]
add r10, 2
cmp r10, rax
jne 0x1401572c8
mov rbp, qword [rsp + 0x68]
jmp 0x140156805
cmp r9d, edx
jae 0x14015745c
mov rsi, qword [rsp + 0x4510]
sub r11d, 1
add r11, r9
lea rcx, [rsi + r9*4]
mov rsi, qword [rsp + 0x60]
lea r9, [rsi + r11*4]
nop dword [rax]
mov word [rcx + 4], r15w
add rcx, 4
mov byte [rcx + 2], r12b
mov byte [rcx + 3], 1
cmp r9, rcx
jne 0x1401574a8
jmp 0x14015745c
test edi, edi
je 0x140157219
mov r11d, dword [rsi]
shr r11d, cl
mov dword [rdx + r14], r11d
cmp dword [rsp + 0x40], eax
jae 0x140157219
mov r11d, dword [r12]
mov rbx, qword [rsp + 0x50]
shr r11d, cl
mov dword [rdx + rbx], r11d
cmp dword [rsp + 0x4c], eax
jae 0x140157219
mov r11d, dword [r15]
mov rbx, qword [rsp + 0x58]
shr r11d, cl
mov dword [rdx + rbx], r11d
jmp 0x140157219
mov r11d, dword [rsp + 0x4b8]
shr r11d, cl
mov dword [rdx + 8], r11d
cmp eax, 4
je 0x140157062
add ecx, 1
add rdx, 0x44
cmp ecx, r8d
jb 0x140156ff0
jmp 0x140157229
mov r11d, edx
jmp 0x140156b44
mov r11d, eax
mov eax, edx
jmp 0x140156b44
mov dword [rsp + 0x38], edx
jmp 0x140156cef
mov dword [rsp + 0x164], 0
lea edx, [rbx - 1]
sub edx, r10d
jmp 0x140156d75
mov dword [rsp + 0x38], r9d
jmp 0x140156cef
mov dword [rsp + 0x164], 0
test r8d, r8d
jne 0x140156d03
mov dword [rsp + 0x38], 0
lea eax, [rbx + rsi + 1]
cmp dword [rsp + 0x3c], eax
jb 0x140157229
jmp 0x140156805
mov qword [rsp + 0x20], r13
sub rdi, rsi
lea r8, [r12 + rsi]
mov edx, 0xff
lea r11, [rsp + 0x1b0]
mov r9, rdi
mov rcx, r11
call fcn.1401270c0
mov rsi, rax
cmp rax, 0xffffffffffffff88
jbe 0x140156950
mov rbp, rsi
jmp 0x140156805
mov r11d, edx
mov eax, edi
jmp 0x140156b44
mov eax, r10d
jmp 0x140156b44
mov dword [rsp + 0x3c], 1
mov eax, r13d
mov esi, 0xffffffff
jmp 0x140156b5d
mov dword [rsp + 0x38], ecx
jmp 0x140156cef