Function at 0x140292fb0
Capabilities:
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, 0xb8
movaps xmmword [rsp + 0xa0], xmm6
mov rdi, rcx
mov rsi, qword [rcx]
mov rax, qword [rsi]
mov qword [rsp + 0x98], rax
mov r14, qword [rsi + 0x10]
movzx r12d, byte [rcx + 0x40]
test r12, r12
je 0x1402936ff
mov r13, qword [rdi + 8]
mov eax, dword [r14 + 0x90]
mov dword [rsp + 0x94], eax
lea r15, [rdi + 0x360]
add r13, 8
mov dword [rsp + 0x74], 0
xorps xmm6, xmm6
lea r11, [r12 - 1]
imul rax, r11, 0x68
lea rbx, [r15 + rax]
mov rbp, qword [r15 + rax + 0x30]
test rbp, rbp
jne 0x140293be5
mov r9, qword [rbx + 0x58]
cmp byte [rbx + 0x39], 0xbb
mov qword [rsp + 0x48], r9
je 0x140293278
xor ebp, ebp
cmp byte [rdi + 0x43], 2
mov qword [rsp + 0x60], rbx
je 0x1402935b4
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1402930ae
mov rcx, qword [r14 + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
jns 0x1402932ce
mov rdx, r14
mov rbx, r15
mov r15, r14
mov r14, rdi
mov rdi, r12
mov r12d, ebp
mov rbp, r13
mov r13, rsi
mov rsi, r11
call fcn.1401c9160
mov r11, rsi
mov rsi, r13
mov r13, rbp
mov ebp, r12d
mov r12, rdi
mov rdi, r14
mov r14, r15
mov r15, rbx
mov rbx, qword [rsp + 0x60]
movzx eax, byte [rbx + 0x3a]
mov r9d, dword [rbx + 0x40]
mov r8d, dword [rbx + 0x3c]
mov cl, byte [rbx + 0x39]
movsxd rdx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], edx
jle 0x140293434
lea r10d, [rdx + 1]
mov dword [r14 + 0x90], r10d
mov r10, qword [r14 + 0x88]
lea rdx, [rdx + rdx*2]
mov byte [r10 + rdx*8], cl
mov word [r10 + rdx*8 + 2], 0
mov dword [r10 + rdx*8 + 4], r8d
mov dword [r10 + rdx*8 + 8], r9d
mov dword [r10 + rdx*8 + 0xc], eax
mov qword [r10 + rdx*8 + 0x10], 0
mov byte [r10 + rdx*8 + 1], 0
movsxd rax, dword [r14 + 0x90]
test rax, rax
mov r9, qword [rsp + 0x48]
jle 0x140293136
movzx ecx, byte [rbx + 0x3b]
mov rdx, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov word [rdx + rax*8 - 0x16], cx
cmp dword [rbx + 0x24], 0
jne 0x140293cac
test ebp, ebp
jne 0x140293b10
test byte [r9 + 0x39], 8
jne 0x1402937f1
mov r8d, dword [rbx + 0xc]
mov rcx, qword [r14 + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x140293bbc
mov eax, dword [r14 + 0x90]
mov rcx, qword [rcx + 0x50]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
mov rax, qword [rbx + 0x30]
test rax, rax
jne 0x140293c6f
mov r9d, dword [rbx + 0x14]
test r9d, r9d
jne 0x140293b39
mov r8d, dword [rbx]
test r8d, r8d
jne 0x14029347d
cmp r12, 1
mov r12, r11
jg 0x140293016
cmp byte [rdi + 0x40], 0
je 0x140293212
xor r12d, r12d
lea rbx, [0x140521a10]
cmp qword [r15 + 0x30], 0
jne 0x140293ae9
movzx eax, byte [r15 + 0x38]
imul rax, rax, 0x68
lea rdx, [rax + r13]
test byte [rdx + 0x40], 0x20
jne 0x140293717
mov rax, qword [r13 + rax + 0x20]
mov rcx, qword [r15 + 0x58]
mov edx, dword [rcx + 0x38]
test edx, 0x240
jne 0x1402932e4
bt edx, 0xd
jb 0x140293ad3
inc r12d
add r15, 0x68
movzx eax, byte [rdi + 0x40]
cmp r12d, eax
jb 0x1402931be
mov ebx, dword [rsp + 0x74]
mov r8d, dword [rdi + 0x34]
mov rcx, qword [r14 + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x140293adc
mov eax, dword [r14 + 0x90]
mov rcx, qword [rcx + 0x50]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
movzx eax, word [rdi + 0x38]
mov word [rsi + 0xd0], ax
mov rcx, qword [rsp + 0x98]
mov rdx, rdi
call fcn.1401cef10
sub byte [rsi + 0x26], bl
movaps xmm6, xmmword [rsp + 0xa0]
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140293148
mov rcx, qword [r14 + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1402932aa
mov eax, dword [r14 + 0x90]
mov rcx, qword [rcx + 0x50]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
jmp 0x140293148
mov rdx, r14
mov rbp, r13
mov r13, rsi
mov rsi, r11
call fcn.1401c9160
mov r9, qword [rsp + 0x48]
mov r11, rsi
mov rsi, r13
mov r13, rbp
jmp 0x140293148
mov eax, dword [r14 + 0x90]
mov rcx, qword [rcx + 0x50]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
jmp 0x1402930ae
add rcx, 0x20
mov rcx, qword [rcx]
test rcx, rcx
je 0x140293202
mov rdx, qword [rsp + 0x98]
cmp byte [rdx + 0x67], 0
jne 0x140293202
cmp byte [rdi + 0x42], 0
mov r8d, dword [rsp + 0x94]
jne 0x1402933e6
test byte [rcx + 0x65], 0x10
jne 0x140293a9e
movsxd r9, dword [r15 + 0x20]
inc r9
mov rdx, qword [r14]
cmp byte [rdx + 0x67], 0
mov rdx, rbx
jne 0x140293344
lea rdx, [r9 + r9*2]
shl rdx, 3
add rdx, qword [r14 + 0x88]
sub r8d, r9d
movsxd r8, r8d
lea r8, [r8 + r8*2]
lea r8, [rdx + r8*8]
jmp 0x14029337d
mov r9d, dword [r15 + 8]
mov dword [rdx + 4], r9d
mov byte [rdx], 0x8e
jmp 0x140293370
cmp r9d, 0x87
je 0x140293354
cmp r9d, 0x14
je 0x1402933dc
add rdx, 0x18
cmp rdx, r8
jae 0x140293202
mov r9d, dword [rdx + 4]
cmp r9d, dword [r15 + 4]
jne 0x140293370
movzx r9d, byte [rdx]
cmp r9d, 0x69
jne 0x140293361
movsxd r9, dword [rdx + 8]
mov r10d, dword [rax + 0x30]
test r10b, r10b
js 0x140293405
test r10b, 0x20
jne 0x140293a63
movzx r11d, word [rcx + 0x60]
test r11, r11
je 0x140293370
mov rbp, qword [rcx + 8]
xor r10d, r10d
cmp r9w, word [rbp + r10*2]
je 0x1402933cb
inc r10
cmp r11, r10
jne 0x1402933b9
jmp 0x140293370
test r10w, r10w
js 0x140293370
and r10d, 0x7fff
mov dword [rdx + 8], r10d
mov r9d, dword [r15 + 8]
mov dword [rdx + 4], r9d
jmp 0x140293370
mov rdx, qword [rcx + 0x18]
test byte [rdx + 0x30], 0x80
mov r8d, dword [rsp + 0x94]
jne 0x140293318
mov r8d, dword [rdi + 0x50]
jmp 0x140293318
mov r10, qword [rax + 0x10]
test r10, r10
je 0x140293d23
mov r11d, dword [r10 + 0x64]
and r11d, 3
cmp r11d, 2
jne 0x14029342e
mov r10, qword [r10 + 8]
movzx r9d, word [r10 + r9*2]
jmp 0x1402933a8
mov r10, qword [r10 + 0x28]
jmp 0x140293409
movzx edx, cl
mov dword [rsp + 0x20], eax
mov rcx, r14
mov rbx, r15
mov r15, r14
mov r14, rdi
mov rdi, r12
mov r12d, ebp
mov rbp, r13
mov r13, rsi
mov rsi, r11
call fcn.1401b1310
mov r11, rsi
mov rsi, r13
mov r13, rbp
mov ebp, r12d
mov r12, rdi
mov rdi, r14
mov r14, r15
mov r15, rbx
mov rbx, qword [rsp + 0x60]
jmp 0x140293111
mov rax, qword [rsp + 0x48]
mov ebp, dword [rax + 0x38]
mov edx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], edx
jle 0x14029368f
movsxd rax, edx
lea ecx, [rax + 1]
mov dword [r14 + 0x90], ecx
mov rcx, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov dword [rcx + rax*8], 0x3b
mov dword [rcx + rax*8 + 4], r8d
movups xmmword [rcx + rax*8 + 8], xmm6
test bpl, 0x40
jne 0x14029351a
movzx eax, byte [rbx + 0x38]
imul rax, rax, 0x68
test byte [r13 + rax + 0x40], 0x20
jne 0x140293ddf
mov r8d, dword [rbx + 4]
movsxd rax, dword [r14 + 0x90]
cmp dword [r14 + 0x94], eax
jle 0x1402936c4
lea ecx, [rax + 1]
mov dword [r14 + 0x90], ecx
mov rcx, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov dword [rcx + rax*8], 0x88
mov dword [rcx + rax*8 + 4], r8d
movups xmmword [rcx + rax*8 + 8], xmm6
bt ebp, 9
jb 0x14029360c
bt ebp, 0xd
jb 0x140293d2b
cmp byte [rbx + 0x39], 0x43
mov r9d, dword [rbx + 0x1c]
je 0x140293d38
movsxd rax, dword [r14 + 0x90]
cmp dword [r14 + 0x94], eax
jle 0x1402935df
lea ecx, [rax + 1]
mov dword [r14 + 0x90], ecx
mov rcx, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov qword [rcx + rax*8], 9
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], 0
mov qword [rcx + rax*8 + 0x10], 0
mov eax, dword [r14 + 0x90]
mov rcx, qword [r14]
cmp byte [rcx + 0x67], 0
lea rcx, [0x140521a10]
jne 0x1402935ac
movsxd rcx, edx
lea rcx, [rcx + rcx*2]
shl rcx, 3
add rcx, qword [r14 + 0x88]
mov dword [rcx + 8], eax
jmp 0x1402931a1
movzx eax, byte [rdi + 0x40]
cmp r12, rax
jne 0x140293055
test byte [r9 + 0x39], 2
je 0x140293055
mov rax, qword [r9 + 0x20]
test byte [rax + 0x64], 0x80
je 0x140293055
jmp 0x140293e5c
mov dword [rsp + 0x20], 0
mov rcx, r14
mov ebp, edx
mov edx, 9
xor r8d, r8d
mov rbx, rsi
mov rsi, r11
call fcn.1401b1310
mov edx, ebp
mov r11, rsi
mov rsi, rbx
jmp 0x140293583
bt ebp, 0xd
jb 0x140293d65
mov r8d, dword [rbx + 8]
movsxd rax, dword [r14 + 0x90]
cmp dword [r14 + 0x94], eax
jle 0x140293658
lea ecx, [rax + 1]
mov dword [r14 + 0x90], ecx
mov rcx, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov dword [rcx + rax*8], 0x88
mov dword [rcx + rax*8 + 4], r8d
xorps xmm0, xmm0
movups xmmword [rcx + rax*8 + 8], xmm0
jmp 0x14029352e
mov dword [rsp + 0x20], 0
mov rcx, r14
mov dword [rsp + 0x48], edx
mov edx, 0x88
xor r9d, r9d
mov rbp, r13
mov r13, rsi
mov rsi, r11
call fcn.1401b1310
mov edx, dword [rsp + 0x48]
mov r11, rsi
mov rsi, r13
mov r13, rbp
jmp 0x14029352e
mov dword [rsp + 0x20], 0
mov rcx, r14
mov edx, 0x3b
xor r9d, r9d
mov qword [rsp + 0x40], r13
mov r13, rsi
mov rsi, r11
call fcn.1401b1310
mov r11, rsi
mov rsi, r13
mov r13, qword [rsp + 0x40]
mov edx, eax
jmp 0x1402934c2
mov dword [rsp + 0x20], 0
mov rcx, r14
mov dword [rsp + 0x48], edx
mov edx, 0x88
xor r9d, r9d
mov qword [rsp + 0x40], r13
mov r13, rsi
mov rsi, r11
call fcn.1401b1310
mov edx, dword [rsp + 0x48]
mov r11, rsi
mov rsi, r13
mov r13, qword [rsp + 0x40]
jmp 0x14029351a
xor ebx, ebx
jmp 0x140293216
lea rax, [r9 + r9*2]
shl rax, 3
add rax, qword [rcx + 0x88]
jmp 0x140293742
mov rbp, r14
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x40], r13
mov r11, r15
movsxd r9, dword [r15 + 0x20]
mov r10, rsi
mov rcx, qword [rsi + 0x10]
mov rax, qword [rcx]
cmp byte [rax + 0x67], 0
je 0x140293706
lea rax, [0x140521a10]
mov rsi, r10
mov r8, qword [r10]
cmp byte [r8 + 0x67], 0
mov r13, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x50]
mov r14, rbp
mov r15, r11
jne 0x140293202
mov ecx, dword [rcx + 0x90]
cmp r9d, ecx
jge 0x140293202
mov edx, dword [rdx + 0x38]
mov r8d, dword [r15 + 4]
sub ecx, r9d
jmp 0x1402937a7
mov byte [rax], 0x7e
mov dword [rax + 4], 0
add rax, 0x18
dec ecx
mov rsi, r10
mov r13, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x50]
mov r14, rbp
mov r15, r11
je 0x140293202
cmp dword [rax + 4], r8d
jne 0x140293788
movzx r9d, byte [rax]
cmp r9d, 0x87
je 0x14029377e
cmp r9d, 0x69
jne 0x140293788
mov byte [rax], 0x50
mov r9d, dword [rax + 8]
add r9d, edx
mov dword [rax + 4], r9d
mov r9d, dword [rax + 0xc]
mov dword [rax + 8], r9d
mov dword [rax + 0xc], 0
mov word [rax + 2], 2
jmp 0x140293788
mov rdx, qword [rsp + 0x38]
call fcn.1401c9160
jmp 0x14029384e
cmp dword [rbx + 0x48], 0
jle 0x140293153
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x68], r11
mov qword [rsp + 0x60], rbx
mov r8d, dword [rbx + 0x10]
mov qword [rsp + 0x38], r14
mov rcx, qword [r14 + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1402937e5
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x90]
mov rcx, qword [rcx + 0x50]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
mov rbx, qword [rsp + 0x60]
movsxd rax, dword [rbx + 0x48]
test rax, rax
mov r11, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x80]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x38]
mov r15, qword [rsp + 0x58]
jle 0x140293153
mov rcx, qword [rbx + 0x50]
lea edx, [rax + 1]
mov dword [rsp + 0x88], edx
lea rax, [rax + rax*4]
lea rbp, [rcx + rax*4]
add rbp, 0xfffffffffffffffc
jmp 0x14029396f
movsxd rax, dword [rbp - 0xc]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x88]
lea rax, [rax + rax*2]
lea rax, [rcx + rax*8]
add rax, 0x18
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 0x90]
mov dword [rax + 8], ecx
mov r8d, dword [rbp - 0x10]
mov r9d, dword [rbp - 0xc]
movzx edx, byte [rbp]
mov dword [rsp + 0x20], 0
mov rcx, qword [rsp + 0x38]
call fcn.1404006f0
mov rcx, qword [rsp + 0x38]
mov eax, dword [rcx + 0x90]
mov rcx, qword [rcx]
cmp byte [rcx + 0x67], 0
lea rcx, [0x140521a10]
jne 0x140293924
movsxd rcx, dword [rbp - 0xc]
mov rdx, qword [rsp + 0x38]
mov rdx, qword [rdx + 0x88]
lea rcx, [rcx + rcx*2]
lea rcx, [rdx + rcx*8]
add rcx, 0xffffffffffffffe8
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0x88]
dec eax
add rbp, 0xffffffffffffffec
mov dword [rsp + 0x88], eax
cmp eax, 1
mov r11, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x80]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x38]
mov r15, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jle 0x140293153
mov rax, qword [r14]
cmp byte [rax + 0x67], 0
lea rax, [0x140521a10]
jne 0x14029399b
movsxd rax, dword [rbp - 0xc]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x88]
lea rax, [rax + rax*2]
lea rax, [rcx + rax*8]
add rax, 0x18
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 0x90]
mov dword [rax + 8], ecx
cmp byte [rbp], 0xbb
je 0x1402938ed
cmp dword [rbp - 4], 0
je 0x1402938cf
mov rax, qword [rsp + 0x48]
mov esi, dword [rax + 0x38]
mov eax, 0x40400
and esi, eax
mov rax, qword [rsp + 0x60]
cmp dword [rax], 0
je 0x140293a0a
xor eax, eax
cmp esi, 0x40000
sete al
mov rcx, qword [rsp + 0x38]
mov edx, dword [rcx + 0x90]
lea r9d, [rdx + rax]
add r9d, 2
mov r8d, dword [rbp - 0x10]
mov dword [rsp + 0x20], 0
mov edx, 0x19
call fcn.1404006f0
cmp esi, 0x40000
jne 0x1402938cf
mov eax, dword [rbp - 8]
mov ecx, dword [rbp - 4]
mov rsi, qword [rsp + 0x38]
mov r9d, dword [rsi + 0x90]
add r9d, 2
mov rdx, qword [rsp + 0x60]
mov r8d, dword [rdx + 8]
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], eax
mov rcx, rsi
mov edx, 0x1a
call fcn.1403f2c60
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
lea rax, [0x140521a10]
jne 0x1402938c1
jmp 0x1402938a5
test r9w, r9w
js 0x1402933a8
mov r10, qword [rax + 8]
add r10, 0x12
mov r11, 0xffffffffffffffff
movzx ebp, word [r10]
bt ebp, 5
adc r9w, 0
movsx rbp, r9w
inc r11
add r10, 0x18
cmp r11, rbp
jl 0x140293a7c
jmp 0x1402933a8
mov rdx, qword [rsi + 0x60]
test rdx, rdx
jne 0x140293ac4
jmp 0x140293322
mov qword [rdx + 8], 0xffffffffffffffff
mov rdx, qword [rdx + 0x18]
test rdx, rdx
mov r15, r10
je 0x140293322
mov r9d, dword [rdx + 0xc]
mov r10, r15
cmp r9d, dword [r15 + 8]
jne 0x140293ab4
jmp 0x140293aac
lea rcx, [r15 + 0x48]
jmp 0x1402932e8
mov rdx, r14
call fcn.1401c9160
jmp 0x14029323e
mov rcx, rdi
mov edx, r12d
mov r8, r15
call fcn.14040fc20
jmp 0x140293202
movsxd rax, ebp
lea rax, [rax + rax*2]
shl rax, 3
add rax, qword [rcx + 0x88]
jmp 0x140293b23
mov rcx, r14
mov rax, qword [r14]
cmp byte [rax + 0x67], 0
je 0x140293afc
lea rax, [0x140521a10]
mov r14, rcx
mov ecx, dword [rcx + 0x90]
mov dword [rax + 8], ecx
mov r9, qword [rsp + 0x48]
jmp 0x140293148
mov rbp, r11
mov dword [rsp + 0x20], 0
mov rcx, r14
mov edx, 9
xor r8d, r8d
call fcn.1404006f0
mov r8, r14
mov rcx, qword [r14]
lea rax, [0x140521a10]
cmp byte [rcx + 0x67], 0
mov rcx, rax
jne 0x140293b7d
movsxd rcx, dword [rbx + 0x14]
lea rcx, [rcx + rcx*2]
shl rcx, 3
add rcx, qword [r8 + 0x88]
mov edx, dword [r8 + 0x90]
mov dword [rcx + 8], edx
mov ecx, dword [r8 + 0x90]
mov rdx, qword [r8]
cmp byte [rdx + 0x67], 0
jne 0x140293bae
movsxd rax, dword [rbx + 0x14]
mov rdx, qword [r8 + 0x88]
lea rax, [rax + rax*2]
lea rax, [rdx + rax*8]
add rax, 0xffffffffffffffd0
mov dword [rax + 8], ecx
mov r11, rbp
mov r14, r8
jmp 0x140293195
mov rdx, r14
mov rbp, r13
mov r13, rsi
mov rsi, r11
call fcn.1401c9160
mov r11, rsi
mov rsi, r13
mov r13, rbp
jmp 0x14029317b
mov rdx, rdi
call fcn.1401c9160
jmp 0x140293c1d
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x68], r11
mov r15, rbx
mov r8d, dword [rbx + 0x18]
mov rdi, r14
mov rcx, qword [r14 + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x140293bdb
mov eax, dword [rdi + 0x90]
mov rcx, qword [rcx + 0x50]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
mov rbx, r15
mov dword [r15 + 0x18], 0
mov r14, rdi
mov eax, dword [rdi + 0x90]
mov dword [rbp + 0x10], eax
mov r8d, dword [rbp + 8]
mov r9d, dword [rbp + 0xc]
mov dword [rsp + 0x20], 1
mov rcx, rdi
mov edx, 0x43
call fcn.1404006f0
mov eax, dword [rsp + 0x74]
inc al
mov dword [rsp + 0x74], eax
mov r11, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
jmp 0x140293031
mov r8d, dword [rax + 8]
mov dword [rsp + 0x20], 1
mov rcx, r14
mov edx, 0x43
xor r9d, r9d
mov rbp, r13
mov r13, rsi
mov rsi, r11
call fcn.1404006f0
mov r11, rsi
mov rsi, r13
mov r13, rbp
jmp 0x140293188
mov rdx, rdi
call fcn.1401c9160
jmp 0x140293ce4
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x68], r11
mov r15, rbx
mov r8d, dword [rbx + 0x28]
mov rdi, r14
mov rcx, qword [r14 + 0x18]
not r8d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x140293ca2
mov eax, dword [rdi + 0x90]
mov rcx, qword [rcx + 0x50]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
mov rbx, r15
mov r8d, dword [r15 + 0x24]
mov r9d, dword [r15 + 0x40]
dec r9d
mov dword [rsp + 0x20], 0
mov r14, rdi
mov rcx, rdi
mov edx, 0x3d
call fcn.1404006f0
mov r11, qword [rsp + 0x68]
mov r9, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
jmp 0x140293140
xor r10d, r10d
jmp 0x140293420
cmp qword [rbx + 0x48], 0
je 0x14029352e
jmp 0x140293d65
mov r8d, dword [rbx + 0x3c]
mov dword [rsp + 0x20], 0
mov rcx, r14
mov ebp, edx
mov edx, 0xa
mov rbx, rsi
mov rsi, r11
call fcn.1404006f0
jmp 0x1402935ff
mov eax, 0xffff8000
jmp 0x140293da7
mov qword [rsp + 0x58], r15
mov dword [rsp + 0x48], edx
mov r15, r11
mov r10, rbx
mov rax, qword [rbx + 0x48]
mov rbp, rax
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x140293d5e
mov rax, qword [rsp + 0x98]
mov rdx, qword [rax + 0x20]
add rdx, 0x18
mov eax, 0xffffffff
inc eax
lea r8, [rdx + 0x20]
cmp qword [rdx], rcx
mov rdx, r8
jne 0x140293d99
mov r9d, dword [rbp + 0x58]
mov rbx, r10
mov r8d, dword [r10 + 8]
mov dword [rsp + 0x20], eax
mov rcx, r14
mov edx, 0x71
call fcn.1404006f0
mov rcx, rsi
mov rdx, rbp
call fcn.140405790
mov r11, r15
mov edx, dword [rsp + 0x48]
mov r15, qword [rsp + 0x58]
jmp 0x140293616
add rax, r13
mov r9d, dword [rax + 0x38]
mov rax, qword [rax + 0x20]
movsx eax, word [rax + 0x36]
add eax, r9d
dec eax
mov dword [rsp + 0x20], eax
mov rcx, r14
mov dword [rsp + 0x48], edx
mov edx, 0x4b
xor r8d, r8d
mov qword [rsp + 0x40], r13
mov r13, rsi
mov rsi, r11
call fcn.1404006f0
mov edx, dword [rsp + 0x48]
mov r11, rsi
mov rsi, r13
mov r13, qword [rsp + 0x40]
jmp 0x1402934dc
mov r11, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x80]
mov r13, qword [rsp + 0x40]
xor ebp, ebp
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x38]
mov r15, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x140293055
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x68], r11
movzx ecx, word [r9 + 0x1e]
mov qword [rsp + 0x88], rcx
test ecx, ecx
je 0x140293e2a
mov rax, qword [rax + 0x10]
mov ecx, dword [rsp + 0x88]
cmp word [rax + rcx*2], 0x24
mov r11, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x80]
mov r13, qword [rsp + 0x40]
mov ebp, 0
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x38]
mov r15, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jl 0x140293055
mov edi, dword [rsi + 0x38]
inc edi
xor ebp, ebp
lea eax, [rdi + rbp]
mov rcx, qword [rsp + 0x60]
mov r8d, dword [rcx + 8]
mov dword [rsp + 0x20], eax
mov rcx, qword [rsp + 0x38]
mov edx, 0x69
mov r9d, ebp
call fcn.1404006f0
inc ebp
cmp dword [rsp + 0x88], ebp
jne 0x140293ee0
mov rsi, qword [rsp + 0x80]
mov eax, dword [rsi + 0x38]
mov rcx, qword [rsp + 0x88]
add eax, ecx
inc eax
mov dword [rsi + 0x38], eax
xor eax, eax
mov rbx, qword [rsp + 0x60]
cmp byte [rbx + 0x39], 0x26
setne al
lea edx, [rax + rax*2]
add edx, 0x15
mov r8d, dword [rbx + 8]
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], edi
mov r14, qword [rsp + 0x38]
mov rcx, r14
xor r9d, r9d
call fcn.1403f2c60
mov ebp, eax
mov r9d, dword [rbx + 0x40]
mov dword [rsp + 0x20], 0
mov rcx, r14
mov edx, 9
mov r8d, 1
call fcn.1404006f0
mov r11, qword [rsp + 0x68]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
jmp 0x140293055