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

Disassembly:
mov r11, rsp
push r13
push r14
sub rsp, 0x158
mov rax, qword [0x140125080]
xor rax, rsp
mov qword [rsp + 0x118], rax
mov r14, qword [rcx + 0x10]
mov rax, qword [rsp + 0x1c0]
mov r10, qword [rcx]
mov qword [r11 - 0x18], rbx
mov qword [r11 - 0x20], rbp
mov qword [r11 - 0x28], rsi
mov rsi, qword [rsp + 0x1c8]
mov qword [r11 - 0x38], r12
mov qword [r11 - 0x40], r15
xor r11d, r11d
mov qword [rsp + 0x90], r8
mov r8, rdx
mov dword [rsp + 0xa0], r9d
movzx r9d, byte [rsp + 0x1b0]
mov qword [rsp + 0x68], rdx
mov rdx, rcx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xa8], rsi
mov dword [rsp + 0xbc], r11d
mov dword [rsp + 0xb8], r11d
mov dword [rsp + 0xc4], r11d
mov byte [rsp + 0x70], r11b
mov dword [rsp + 0xd0], 0xffffffff
mov qword [rsp + 0xc8], r10
test r14, r14
jne 0x14006c198
call fcn.14007d750
mov rdx, qword [rsp + 0x80]
mov r14, rax
mov r8, qword [rsp + 0x68]
xor r11d, r11d
movzx r9d, byte [rsp + 0x1b0]
mov r10, qword [rsp + 0xc8]
test byte [r8 + 0x46], 0x20
mov eax, 1
jne 0x14006c1ae
mov qword [rsp + 0xb0], r11
jmp 0x14006c1de
mov rcx, qword [r8 + 0x10]
mov qword [rsp + 0xb0], rcx
test rcx, rcx
je 0x14006c1da
nop
mov eax, dword [rcx + 0x64]
and al, 3
cmp al, 2
je 0x14006c1d2
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x14006c1c0
mov qword [rsp + 0xb0], rcx
movzx eax, word [rcx + 0x5e]
movsx r13, word [r8 + 0x3e]
mov ebx, 2
mov dword [rsp + 0x88], eax
mov qword [rsp + 0x138], rdi
test r13, r13
jle 0x14006c504
mov eax, dword [rsp + 0x198]
mov rbp, r11
mov r12d, eax
mov r15, r11
not r12d
lea edi, [rax + 1]
jmp 0x14006c228
mov rdx, qword [rsp + 0x80]
movsx eax, word [r8 + 0x3c]
lea ecx, [r12 + rdi]
cmp ecx, eax
je 0x14006c4e1
test rsi, rsi
je 0x14006c248
cmp dword [rsi + rbp*4], 0
jl 0x14006c4e1
mov rcx, qword [r8 + 8]
movzx eax, byte [rcx + r15 + 0x18]
test al, al
je 0x14006c4e1
cmp r9b, 0xa
jne 0x14006c265
cmp al, r9b
je 0x14006c282
cmp r9b, 0xa
movzx ebx, r9b
cmove ebx, eax
cmp ebx, 5
jne 0x14006c2e9
cmp qword [rcx + r15 + 8], 0
jne 0x14006c2e9
mov ebx, 2
mov rax, qword [rdx + 0xa0]
mov rcx, rdx
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
mov r9, qword [r8 + 8]
lea rdx, str._s._s
mov r8, qword [r8]
mov rcx, r10
mov r9, qword [r15 + r9]
call fcn.140008c80
movsxd rdx, dword [r14 + 0xb8]
mov rsi, rax
mov rax, qword [r14 + 0x18]
cmp dword [rax + 0x3c], edx
jg 0x14006c423
mov r9d, ebx
mov dword [rsp + 0x20], edi
mov edx, 0x4a
mov r8d, 0x513
mov rcx, r14
call fcn.14002bc90
mov edx, eax
jmp 0x14006c459
mov ecx, ebx
sub ecx, 1
je 0x14006c297
sub ecx, 1
je 0x14006c282
sub ecx, 1
je 0x14006c297
mov rax, qword [r14 + 0x18]
cmp ecx, 1
je 0x14006c3ba
movsxd rbx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ebx
jg 0x14006c334
xor r9d, r9d
mov dword [rsp + 0x20], r11d
mov r8d, edi
mov edx, 0x23
mov rcx, r14
call fcn.14002bc90
mov r8, qword [rsp + 0x68]
mov ebx, eax
jmp 0x14006c363
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x23
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r11
mov rdx, qword [r8 + 8]
mov r8d, edi
mov rcx, qword [rsp + 0x80]
mov rdx, qword [r15 + rdx + 8]
call fcn.14004bc10
mov rax, qword [r14]
mov edx, dword [r14 + 0xb8]
cmp byte [rax + 0x55], 0
je 0x14006c39b
lea rax, [0x14012aae0]
mov dword [rax + 8], edx
jmp 0x14006c4d4
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
jmp 0x14006c4d4
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006c3e8
mov r9d, dword [rsp + 0x1b8]
mov r8d, edi
mov edx, 0x22
mov dword [rsp + 0x20], r11d
mov rcx, r14
call fcn.14002bc90
jmp 0x14006c4d4
mov edx, dword [rsp + 0x1b8]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x22
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
jmp 0x14006c4dc
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x4a
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], 0x513
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], 0
mov rcx, qword [r14]
cmp byte [rcx + 0x55], 0
je 0x14006c471
mov r8, rsi
mov edx, 0xffffffff
call fcn.14002ca30
jmp 0x14006c4b4
test edx, edx
jns 0x14006c47e
mov edx, dword [r14 + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14006c4a7
mov r9d, 0xffffffff
mov r8, rsi
mov rcx, r14
call fcn.14002cd50
jmp 0x14006c4b4
test rsi, rsi
je 0x14006c4b4
mov qword [rdx + 0x10], rsi
mov byte [rdx + 1], 0xff
movsxd rax, dword [r14 + 0xb8]
mov rsi, qword [rsp + 0xa8]
test eax, eax
jle 0x14006c4d4
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8 - 0x15], 1
mov r8, qword [rsp + 0x68]
xor r11d, r11d
mov ebx, 2
movzx r9d, byte [rsp + 0x1b0]
inc edi
mov r10, qword [rsp + 0xc8]
inc rbp
add r15, 0x20
cmp rbp, r13
jl 0x14006c220
mov r13, qword [r8 + 0x30]
movzx ebp, byte [rsp + 0x1a8]
mov rdi, qword [rsp + 0xc8]
mov r15, qword [rsp + 0x80]
test r13, r13
je 0x14006c7d6
test dword [rdi + 0x2c], 0x2000
jne 0x14006c7d6
mov eax, dword [rsp + 0x198]
inc eax
mov dword [r15 + 0x44], eax
movzx eax, byte [rsp + 0x1b0]
mov edi, eax
cmp al, 0xa
jne 0x14006c553
mov edi, ebx
cmp dword [r13], 0
mov r12d, r11d
jle 0x14006c7ce
mov r15, r11
lea rcx, [0x14006c080]
nop dword [rax + rax]
mov rax, qword [r13 + 8]
mov rbx, qword [r15 + rax]
test rsi, rsi
je 0x14006c5d4
xorps xmm0, xmm0
movups xmmword [rsp + 0xe8], xmm0
mov qword [rsp + 0xf0], rcx
movups xmmword [rsp + 0x108], xmm0
mov qword [rsp + 0x110], rsi
movups xmmword [rsp + 0xf8], xmm0
test rbx, rbx
je 0x14006c5bd
mov rdx, rbx
lea rcx, [rsp + 0xe8]
call fcn.140040650
movzx eax, byte [rsp + 0x10c]
test bpl, bpl
jne 0x14006c5cc
and al, 0xfd
test al, al
je 0x14006c7ae
mov rcx, r14
call fcn.14002c340
mov rcx, qword [rsp + 0x80]
mov r9d, send
mov r8d, eax
mov rdx, rbx
mov ebp, eax
call fcn.14004c150
cmp edi, 4
jne 0x14006c66e
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006c62f
mov r9d, dword [rsp + 0x1b8]
xor eax, eax
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov edx, 0xd
mov rcx, r14
call fcn.14002bc90
jmp 0x14006c78a
mov edx, dword [rsp + 0x1b8]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
xor r8d, r8d
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
jmp 0x14006c78a
mov rax, qword [r13 + 8]
mov rsi, qword [r15 + rax + 8]
test rsi, rsi
jne 0x14006c684
mov rax, qword [rsp + 0x68]
mov rsi, qword [rax]
mov rcx, qword [rsp + 0x80]
cmp edi, 5
mov eax, 2
cmove edi, eax
mov rbx, qword [rcx + 0x10]
test rbx, rbx
jne 0x14006c6b0
call fcn.14007d750
mov rcx, qword [rsp + 0x80]
mov rbx, rax
cmp edi, 2
jne 0x14006c6c7
mov rax, qword [rcx + 0xa0]
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x14006c6f7
xor eax, eax
mov r9d, edi
mov edx, 0x4b
mov dword [rsp + 0x20], eax
mov r8d, 0x113
mov rcx, rbx
call fcn.14002bc90
mov edx, eax
jmp 0x14006c72c
lea rcx, [rdx + rdx*2]
xor r8d, r8d
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x4b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], 0x113
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [rbx]
cmp byte [rcx + 0x55], 0
je 0x14006c741
mov r8, rsi
xor edx, edx
call fcn.14002ca30
jmp 0x14006c76a
test edx, edx
jns 0x14006c74d
mov edx, dword [rbx + 0xb8]
dec edx
movsxd rax, edx
xor r9d, r9d
mov r8, rsi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
lea rdx, [rax + rcx*8]
mov rcx, rbx
call fcn.14002cd50
movsxd rax, dword [rbx + 0xb8]
mov rsi, qword [rsp + 0xa8]
test eax, eax
jle 0x14006c78a
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8 - 0x15], 3
mov rax, qword [r14 + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006c7a6
mov eax, dword [r14 + 0xb8]
not ebp
movsxd rcx, ebp
mov dword [rdx + rcx*4], eax
movzx ebp, byte [rsp + 0x1a8]
inc r12d
lea rcx, [0x14006c080]
add r15, 0x28
cmp r12d, dword [r13]
jl 0x14006c570
mov r15, qword [rsp + 0x80]
mov rdi, qword [rsp + 0xc8]
test bpl, bpl
je 0x14006ccb5
cmp qword [rsp + 0xb0], 0
jne 0x14006ccb5
mov rcx, r14
call fcn.14002c340
mov r12, qword [rsp + 0x68]
mov ebp, eax
movzx eax, byte [rsp + 0x1b0]
mov esi, 2
movzx ebx, byte [r12 + 0x47]
cmp al, 0xa
je 0x14006c818
mov ebx, eax
jmp 0x14006c81e
cmp ebx, 0xa
cmove ebx, esi
mov r8d, dword [rsp + 0x1a0]
test r8d, r8d
je 0x14006c8b6
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006c85e
mov dword [rsp + 0x20], r8d
mov r9d, ebp
mov r8d, dword [rsp + 0x198]
mov edx, 0x25
mov rcx, r14
call fcn.14002bc90
jmp 0x14006c896
mov edx, dword [rsp + 0x198]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8 + 4], edx
xor edx, edx
mov qword [rax + rcx*8 + 0x10], rdx
mov word [rax + rcx*8], 0x25
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r8d
movsxd rax, dword [r14 + 0xb8]
test eax, eax
jle 0x14006c8ae
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8 - 0x15], 0x90
movzx eax, byte [rsp + 0x1b0]
cmp ebx, 5
jne 0x14006c94c
cmp al, bl
je 0x14006c94c
mov rcx, qword [r12 + 0x10]
test rcx, rcx
je 0x14006c94c
movzx eax, byte [rcx + 0x62]
sub al, 3
cmp al, 1
jbe 0x14006c8e6
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x14006c8d1
jmp 0x14006c94c
movsxd rdx, dword [r14 + 0xb8]
mov rax, qword [r14 + 0x18]
mov dword [rsp + 0xb8], edx
cmp dword [rax + 0x3c], edx
jg 0x14006c91f
xor eax, eax
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov edx, 0xd
mov rcx, r14
call fcn.14002bc90
mov dword [rsp + 0xb8], eax
jmp 0x14006c94c
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor edx, edx
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov qword [rax + rcx*8 + 4], rdx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
mov r13d, dword [rsp + 0x198]
cmp dword [rax + 0x3c], ecx
jg 0x14006c986
mov r8d, dword [rsp + 0xa0]
mov r9d, ebp
mov edx, 0x21
mov dword [rsp + 0x20], r13d
mov rcx, r14
call fcn.14002bc90
xor r9d, r9d
jmp 0x14006c9bf
mov edx, dword [rsp + 0xa0]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
xor r9d, r9d
mov word [rax + rcx*8], 0x21
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r9
mov ecx, ebx
sub ecx, 1
je 0x14006c9e0
sub ecx, 1
je 0x14006c9e0
sub ecx, 1
je 0x14006c9e0
sub ecx, 1
je 0x14006cbdc
cmp ecx, 1
je 0x14006ca5c
mov ebx, esi
mov r8, r12
mov edx, ebx
mov rcx, r15
call fcn.14005d060
xor r9d, r9d
mov rax, qword [r14 + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006ca0c
mov eax, dword [r14 + 0xb8]
not ebp
movsxd rcx, ebp
mov dword [rdx + rcx*4], eax
mov ebx, dword [rsp + 0xb8]
test ebx, ebx
je 0x14006ccba
movsxd r8, dword [r14 + 0xb8]
mov rax, qword [r14 + 0x18]
mov dword [rsp + 0xc4], r8d
cmp dword [rax + 0x3c], r8d
jg 0x14006cc4a
mov dword [rsp + 0x20], r9d
xor r8d, r8d
xor r9d, r9d
mov edx, 0xd
mov rcx, r14
call fcn.14002bc90
mov dword [rsp + 0xc4], eax
jmp 0x14006cc7b
test dword [rdi + 0x2c], 0x40000
mov rbx, r9
je 0x14006cac8
mov rax, qword [r15]
mov edi, r9d
mov rsi, r9
test dword [rax + 0x2c], 0x1000000
je 0x14006ca8b
mov rdx, r12
mov rcx, r15
call fcn.140087670
mov rsi, rax
xor r9d, r9d
mov rbx, rsi
test rsi, rsi
je 0x14006caba
cmp byte [rbx + 0x10], 0x6d
jne 0x14006caae
mov rcx, qword [rbx + 0x20]
xor edx, edx
call fcn.140088ec0
test eax, eax
je 0x14006caae
movzx eax, byte [rbx + 0x11]
or edi, eax
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x14006ca93
xor r9d, r9d
test edi, edi
mov rbx, r9
cmovne rbx, rsi
test rbx, rbx
jne 0x14006cb1c
mov rax, qword [r15]
test dword [rax + 0x2c], 0x80000
je 0x14006cb84
mov rcx, qword [r12 + 0x68]
lea r8, [rsp + 0xdc]
mov rdx, qword [r12]
add rcx, 0x50
call fcn.14000b280
test rax, rax
je 0x14006cafe
cmp qword [rax + 0x10], 0
jne 0x14006cb0f
cmp qword [r12 + 0x20], 0
jne 0x14006cb0f
xor eax, eax
mov edi, 1
jmp 0x14006cb16
mov edi, 1
mov eax, edi
test eax, eax
je 0x14006cb89
jmp 0x14006cb21
mov edi, 1
mov rax, qword [r15 + 0xa0]
mov rcx, r15
mov r9d, dword [rsp + 0xa0]
test rax, rax
mov dword [rsp + 0x50], 0xffffffff
mov r8, rbx
mov byte [rsp + 0x48], 1
cmovne rcx, rax
mov eax, dword [rsp + 0x190]
mov rdx, r12
mov byte [rsp + 0x40], 5
mov byte [rsp + 0x38], 0
mov byte [rcx + 0x20], 1
mov rcx, r15
mov word [rsp + 0x30], di
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
call fcn.140060440
mov dword [rsp + 0xbc], edi
jmp 0x14006c9ed
mov edi, 1
cmp qword [r12 + 0x10], 0
je 0x14006cbd0
mov rax, qword [r15 + 0xa0]
mov rcx, r15
mov r9d, dword [rsp + 0x190]
test rax, rax
mov r8d, dword [rsp + 0xa0]
mov rdx, r12
cmovne rcx, rax
mov dword [rsp + 0x28], 0xffffffff
xor eax, eax
mov qword [rsp + 0x20], rax
mov byte [rcx + 0x20], 1
mov rcx, r15
call fcn.1400609c0
mov dword [rsp + 0xbc], edi
jmp 0x14006c9ed
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006cc0e
mov dword [rsp + 0x20], r9d
xor r8d, r8d
mov r9d, dword [rsp + 0x1b8]
mov edx, 0xd
mov rcx, r14
call fcn.14002bc90
jmp 0x14006c9ed
mov edx, dword [rsp + 0x1b8]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r9d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x14006c9f0
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov qword [rax + rcx*8 + 4], 0
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov edx, dword [r14 + 0xb8]
mov ecx, ebx
test ebx, ebx
jns 0x14006cc8b
lea ecx, [rdx - 1]
mov rax, qword [r14]
cmp byte [rax + 0x55], 0
je 0x14006cca0
lea rax, [0x14012aae0]
mov dword [rax + 8], edx
jmp 0x14006ccba
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
jmp 0x14006ccba
mov r12, qword [rsp + 0x68]
mov r15, qword [r12 + 0x10]
xor r13d, r13d
mov dword [rsp + 0x60], r13d
mov qword [rsp + 0xa8], r15
test r15, r15
je 0x14006d96d
mov rbp, qword [rsp + 0x90]
mov edi, r13d
mov qword [rsp + 0x98], r13
mov eax, r13d
nop
cmp dword [rbp + rdi*4], 0
je 0x14006d947
mov ebx, dword [rsp + 0x198]
inc ebx
cmp byte [rsp + 0x70], 0
jne 0x14006cd22
mov r8d, ebx
mov rdx, r12
mov rcx, r14
call fcn.1400695f0
mov eax, dword [rsp + 0x60]
mov byte [rsp + 0x70], 1
mov r13d, dword [rsp + 0x190]
mov rcx, r14
add r13d, eax
mov dword [rsp + 0xc0], r13d
call fcn.14002c340
cmp qword [r15 + 0x48], 0
mov esi, eax
mov dword [rsp + 0xa4], eax
je 0x14006ce1a
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
mov edx, dword [rbp + rdi*4]
cmp dword [rax + 0x3c], ecx
jg 0x14006cd83
xor eax, eax
mov r9d, edx
mov edx, 0x4f
mov dword [rsp + 0x20], eax
xor r8d, r8d
mov rcx, r14
call fcn.14002bc90
xor r8d, r8d
jmp 0x14006cdb6
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x4f
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov r12, qword [rsp + 0x80]
mov rdi, qword [r12]
mov dword [r12 + 0x44], ebx
mov rdx, qword [r15 + 0x48]
test rdx, rdx
je 0x14006cde3
xor r9d, r9d
xor r8d, r8d
mov rcx, rdi
call fcn.140044f70
mov rbx, rax
jmp 0x14006cde6
mov rbx, r8
cmp byte [rdi + 0x55], 0
jne 0x14006ce00
mov r9d, send
mov r8d, esi
mov rdx, rbx
mov rcx, r12
call fcn.14004c660
test rbx, rbx
je 0x14006ce10
mov rdx, rbx
mov rcx, rdi
call fcn.140044c80
xor r9d, r9d
mov dword [r12 + 0x44], r9d
jmp 0x14006ce25
mov r12, qword [rsp + 0x80]
xor r9d, r9d
movzx ecx, word [r15 + 0x60]
cmp ecx, 1
jne 0x14006ce61
movzx eax, byte [r12 + 0x1f]
test al, al
jne 0x14006ce49
inc dword [r12 + 0x38]
mov eax, dword [r12 + 0x38]
mov dword [rsp + 0x74], eax
jmp 0x14006ce99
dec al
movzx eax, al
mov byte [r12 + 0x1f], al
mov eax, dword [r12 + rax*4 + 0x18c]
mov dword [rsp + 0x74], eax
jmp 0x14006ce99
mov edx, dword [r12 + 0x28]
mov r8d, dword [r12 + 0x2c]
mov dword [rsp + 0x74], r8d
cmp ecx, edx
jg 0x14006ce86
lea eax, [rcx + r8]
sub edx, ecx
mov dword [r12 + 0x2c], eax
mov dword [r12 + 0x28], edx
jmp 0x14006ce99
mov eax, dword [r12 + 0x38]
lea edx, [rax + 1]
add eax, ecx
mov dword [r12 + 0x38], eax
mov dword [rsp + 0x74], edx
movzx ecx, word [r15 + 0x60]
cmp r9w, cx
jae 0x14006d022
mov esi, dword [rsp + 0x74]
mov r15, r9
mov rbx, qword [rsp + 0xa8]
mov r13d, esi
mov rbp, r9
nop dword [rax]
mov rax, qword [rbx + 8]
movsx edx, word [rax + rbp]
cmp edx, 0xfffffffe
jne 0x14006cf3f
mov eax, dword [rsp + 0x198]
mov rdi, qword [r12]
inc eax
mov dword [r12 + 0x44], eax
mov rax, qword [rbx + 0x50]
mov rcx, qword [rax + 8]
mov rdx, qword [r15 + rcx]
test rdx, rdx
je 0x14006cf03
xor r9d, r9d
xor r8d, r8d
mov rcx, rdi
call fcn.140044f70
mov rbx, rax
jmp 0x14006cf06
mov rbx, r9
cmp byte [rdi + 0x55], 0
jne 0x14006cf1a
mov r8d, esi
mov rdx, rbx
mov rcx, r12
call fcn.14004bc10
test rbx, rbx
je 0x14006cf2a
mov rdx, rbx
mov rcx, rdi
call fcn.140044c80
mov rbx, qword [rsp + 0xa8]
xor r9d, r9d
mov dword [r12 + 0x44], r9d
jmp 0x14006cfe8
cmp edx, 0xffffffff
je 0x14006cf61
mov rax, qword [rsp + 0x68]
movsx eax, word [rax + 0x3c]
cmp edx, eax
je 0x14006cf61
mov r8d, dword [rsp + 0x198]
inc r8d
add r8d, edx
jmp 0x14006cf88
cmp dword [rsp + 0xd0], esi
je 0x14006cfe8
cmp qword [rbx + 0x48], 0
mov eax, esi
mov r8d, dword [rsp + 0x198]
mov ecx, 0xffffffff
cmovne eax, ecx
mov dword [rsp + 0xd0], eax
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
sar edx, 0x1f
and edx, 1
add edx, 0x55
cmp dword [rax + 0x3c], ecx
jg 0x14006cfb6
mov dword [rsp + 0x20], r9d
mov rcx, r14
mov r9d, esi
call fcn.14002bc90
xor r9d, r9d
jmp 0x14006cfe8
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8], dl
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov byte [rax + rcx*8 + 1], 0
movzx ecx, word [rbx + 0x60]
inc esi
mov eax, esi
add rbp, 2
sub eax, r13d
add r15, 0x28
cmp eax, ecx
jl 0x14006cec0
mov r13d, dword [rsp + 0xc0]
mov r15, qword [rsp + 0xa8]
mov esi, dword [rsp + 0xa4]
mov rbp, qword [rsp + 0x90]
mov rax, qword [rsp + 0x98]
movzx r8d, cx
movsxd rcx, dword [r14 + 0xb8]
mov edx, dword [rbp + rax*4]
mov rax, qword [r14 + 0x18]
mov ebp, dword [rsp + 0x74]
cmp dword [rax + 0x3c], ecx
jg 0x14006d05f
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, ebp
mov edx, 0x63
mov rcx, r14
call fcn.14002bc90
jmp 0x14006d08e
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x63
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
movzx r8d, word [r15 + 0x60]
mov edx, ebp
mov rcx, r12
call fcn.140049a20
cmp dword [rsp + 0x1a0], 0
mov rbx, qword [rsp + 0xb0]
je 0x14006d0fb
cmp rbx, r15
jne 0x14006d0fb
cmp byte [rsp + 0x1a8], 0
jne 0x14006d0fb
xor r13d, r13d
mov rax, qword [r14 + 0x18]
mov rbp, qword [rsp + 0x90]
mov r12, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x98]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006d943
mov eax, dword [r14 + 0xb8]
not esi
movsxd rcx, esi
mov dword [rdx + rcx*4], eax
jmp 0x14006d943
movzx edi, byte [r15 + 0x62]
test edi, edi
jne 0x14006d190
movzx r8d, word [r15 + 0x60]
cmp r8d, 1
jne 0x14006d169
xor r13d, r13d
test ebp, ebp
je 0x14006d0c1
cmp byte [r12 + 0x1f], 8
jae 0x14006d0c1
movzx r8d, byte [r12 + 0x25]
lea rcx, [r12 + 0xc4]
mov edx, r13d
test r8b, r8b
je 0x14006d148
cmp dword [rcx + 0xc], ebp
je 0x14006d160
inc edx
add rcx, 0x14
cmp edx, r8d
jl 0x14006d138
movzx eax, byte [r12 + 0x1f]
mov dword [r12 + rax*4 + 0x18c], ebp
inc byte [r12 + 0x1f]
jmp 0x14006d0c1
mov byte [rcx + 6], 1
jmp 0x14006d0c1
mov edx, ebp
mov rcx, r12
call fcn.140049a20
xor r13d, r13d
cmp r8d, dword [r12 + 0x28]
jle 0x14006d0c1
mov dword [r12 + 0x28], r8d
mov dword [r12 + 0x2c], ebp
jmp 0x14006d0c1
movzx eax, byte [rsp + 0x1b0]
cmp al, 0xa
je 0x14006d1a0
mov edi, eax
jmp 0x14006d1ab
cmp edi, 0xa
mov eax, 2
cmove edi, eax
movzx eax, word [r15 + 0x5e]
mov r9d, esi
mov dword [rsp + 0x28], eax
mov r8d, r13d
mov edx, 0x1d
mov dword [rsp + 0x20], ebp
mov rcx, r14
mov dword [rsp + 0xc0], edi
call fcn.14002c260
cmp r15, rbx
jne 0x14006d1df
mov esi, ebp
mov dword [rsp + 0x78], ebp
jmp 0x14006d24f
mov edx, dword [rsp + 0x88]
cmp edx, 1
jne 0x14006d215
movzx eax, byte [r12 + 0x1f]
test al, al
jne 0x14006d201
inc dword [r12 + 0x38]
mov ebx, dword [r12 + 0x38]
jmp 0x14006d247
dec al
movzx eax, al
mov byte [r12 + 0x1f], al
mov ebx, dword [r12 + rax*4 + 0x18c]
jmp 0x14006d247
mov ecx, dword [r12 + 0x28]
mov ebx, dword [r12 + 0x2c]
mov dword [rsp + 0x78], ebx
cmp edx, ecx
jg 0x14006d238
lea eax, [rbx + rdx]
sub ecx, edx
mov dword [r12 + 0x2c], eax
mov dword [r12 + 0x28], ecx
jmp 0x14006d24b
mov eax, dword [r12 + 0x38]
lea ebx, [rax + 1]
add eax, edx
mov dword [r12 + 0x38], eax
mov dword [rsp + 0x78], ebx
mov esi, dword [rsp + 0x78]
mov ebx, dword [rsp + 0x1a0]
test ebx, ebx
jne 0x14006d263
cmp edi, 5
jne 0x14006d682
mov rax, qword [rsp + 0x68]
test byte [rax + 0x46], 0x20
jne 0x14006d362
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006d2a0
xor eax, eax
mov r9d, esi
mov r8d, r13d
mov dword [rsp + 0x20], eax
mov edx, 0x81
mov rcx, r14
call fcn.14002bc90
xor r8d, r8d
jmp 0x14006d2d3
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x81
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
test ebx, ebx
je 0x14006d682
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006d309
mov r9d, dword [rsp + 0xa4]
mov r8d, esi
mov edx, 0x25
mov dword [rsp + 0x20], ebx
mov rcx, r14
call fcn.14002bc90
jmp 0x14006d33e
mov edx, dword [rsp + 0xa4]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x25
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], r8
movsxd rax, dword [r14 + 0xb8]
xor r13d, r13d
test eax, eax
jle 0x14006d685
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8 - 0x15], 0x90
jmp 0x14006d685
mov rdi, qword [rsp + 0xb0]
cmp r15, rdi
je 0x14006d453
xor r10d, r10d
cmp r10w, word [rdi + 0x5e]
jae 0x14006d453
mov rbp, qword [rsp + 0xb0]
mov ebx, esi
mov edi, r10d
mov r12d, 0xffffffff
movzx edx, word [r15 + 0x60]
mov ecx, r10d
test edx, edx
je 0x14006d3c0
mov rax, qword [rbp + 8]
mov r8, qword [r15 + 8]
movzx r9d, word [rdi + rax]
nop dword [rax]
movsxd rax, ecx
cmp r9w, word [r8 + rax*2]
je 0x14006d3c4
inc ecx
cmp ecx, edx
jl 0x14006d3b0
movzx ecx, r12w
mov rax, qword [r14 + 0x18]
movsx edx, cx
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006d3f3
mov r9d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x60
mov r8d, r13d
mov rcx, r14
call fcn.14002bc90
xor r10d, r10d
jmp 0x14006d422
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0x60
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], r10
movzx eax, word [rbp + 0x5e]
inc ebx
mov ecx, ebx
add rdi, 2
sub ecx, esi
cmp ecx, eax
jl 0x14006d394
mov r12, qword [rsp + 0x80]
mov ebp, dword [rsp + 0x74]
mov rdi, qword [rsp + 0xb0]
mov ebx, dword [rsp + 0x1a0]
test ebx, ebx
je 0x14006d682
movzx ecx, word [rdi + 0x5e]
mov eax, dword [r15 + 0x64]
mov edx, dword [r14 + 0xb8]
and al, 3
add edx, ecx
mov dword [rsp + 0xd8], 0x24
mov dword [rsp + 0xd4], edx
cmp al, 2
mov edx, esi
cmove edx, ebp
xor r13d, r13d
mov dword [rsp + 0xdc], edx
mov r15d, r13d
test ecx, ecx
je 0x14006d799
mov r12d, r13d
nop
mov rax, qword [rdi + 0x40]
mov r10, qword [rsp + 0x80]
mov rsi, qword [rax + r13]
mov rax, qword [r10]
movzx ebp, byte [rax + 0x52]
movzx edi, byte [rax + 0xa9]
test rsi, rsi
je 0x14006d4de
mov r8d, edi
mov rdx, rsi
mov rcx, rax
call fcn.14005e250
mov r10, qword [rsp + 0x80]
mov rbx, rax
jmp 0x14006d4e2
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14006d4fa
lea rcx, [rbp*4]
add rcx, rbp
lea rbx, [rbx + rcx*8]
add rbx, 0xffffffffffffffd8
test dil, dil
jne 0x14006d520
test rbx, rbx
je 0x14006d50b
cmp qword [rbx + 0x18], 0
jne 0x14006d520
mov r9, rsi
mov r8, rbx
movzx edx, bpl
mov rcx, r10
call fcn.14005e0e0
mov rbx, rax
mov rdi, qword [rsp + 0xb0]
mov rcx, qword [rdi + 8]
movsx eax, word [rcx + r12]
movzx ecx, word [rdi + 0x5e]
dec ecx
cmp r15d, ecx
jne 0x14006d55c
mov r10d, dword [rsp + 0xa4]
mov r11d, 0x25
mov dword [rsp + 0xd8], r11d
mov dword [rsp + 0xd4], r10d
jmp 0x14006d56c
mov r10d, dword [rsp + 0xd4]
mov r11d, dword [rsp + 0xd8]
mov r8d, dword [rsp + 0x1a0]
mov r9d, dword [rsp + 0xdc]
inc r8d
movsxd rdx, dword [r14 + 0xb8]
add r8d, eax
mov rax, qword [r14 + 0x18]
add r9d, r15d
cmp dword [rax + 0x3c], edx
jg 0x14006d5ac
mov dword [rsp + 0x20], r9d
mov edx, r11d
mov r9d, r10d
mov rcx, r14
call fcn.14002bc90
mov edx, eax
jmp 0x14006d5e3
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r14 + 0xb8], eax
mov rax, qword [r14 + 0x68]
mov dword [rax + rcx*8 + 4], r8d
xor r8d, r8d
mov qword [rax + rcx*8 + 0x10], r8
mov byte [rax + rcx*8 + 1], r8b
mov byte [rax + rcx*8], r11b
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], r9d
mov rcx, qword [r14]
cmp byte [rcx + 0x55], 0
je 0x14006d5fb
mov r8, rbx
mov edx, 0xfffffffc
call fcn.14002ca30
jmp 0x14006d63e
test edx, edx
jns 0x14006d608
mov edx, dword [r14 + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14006d631
mov r9d, 0xfffffffc
mov r8, rbx
mov rcx, r14
call fcn.14002cd50
jmp 0x14006d63e
test rbx, rbx
je 0x14006d63e
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xfc
movsxd rax, dword [r14 + 0xb8]
test eax, eax
jle 0x14006d656
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
mov byte [rax + rcx*8 - 0x15], 0x90
movzx eax, word [rdi + 0x5e]
inc r15d
add r13, 8
add r12, 2
cmp r15d, eax
jl 0x14006d4a0
mov r12, qword [rsp + 0x80]
mov ebp, dword [rsp + 0x74]
mov r15, qword [rsp + 0xa8]
xor r13d, r13d
mov edx, dword [rsp + 0xc0]
mov ecx, edx
sub ecx, 1
je 0x14006d80e
sub ecx, 1
je 0x14006d80e
sub ecx, 1
je 0x14006d80e
cmp ecx, 1
je 0x14006d7a6
mov rax, qword [r12 + 0xa0]
mov rcx, r12
test rax, rax
mov r8, r13
cmovne rcx, rax
mov rax, qword [rsp + 0xc8]
mov byte [rcx + 0x20], 1
test dword [rax + 0x2c], 0x40000
je 0x14006d734
mov rax, qword [r12]
mov edi, r13d
mov rsi, r13
test dword [rax + 0x2c], 0x1000000
je 0x14006d6ff
mov rdx, qword [rsp + 0x68]
mov rcx, r12
call fcn.140087670
mov rsi, rax
mov rbx, rsi
test rsi, rsi
je 0x14006d72b
cmp byte [rbx + 0x10], 0x6d
jne 0x14006d722
mov rcx, qword [rbx + 0x20]
xor edx, edx
call fcn.140088ec0
test eax, eax
je 0x14006d722
movzx eax, byte [rbx + 0x11]
or edi, eax
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x14006d707
test edi, edi
mov r8, r13
cmovne r8, rsi
cmp r15, qword [rsp + 0xb0]
mov rcx, r12
mov edi, dword [rsp + 0x88]
mov ebx, dword [rsp + 0x78]
sete al
mov r9d, dword [rsp + 0xa0]
mov rdx, qword [rsp + 0x68]
mov dword [rsp + 0x50], 0xffffffff
mov byte [rsp + 0x48], al
mov eax, dword [rsp + 0x190]
mov byte [rsp + 0x40], 5
mov byte [rsp + 0x38], 0
mov word [rsp + 0x30], di
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
call fcn.140060440
mov dword [rsp + 0xbc], 1
jmp 0x14006d824
mov r15, qword [rsp + 0xa8]
jmp 0x14006d685
mov rax, qword [r14 + 0x18]
movsxd rcx, dword [r14 + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006d7d5
mov r9d, dword [rsp + 0x1b8]
xor r8d, r8d
mov edx, 0xd
mov dword [rsp + 0x20], r13d
mov rcx, r14
call fcn.14002bc90
jmp 0x14006d819
mov edx, dword [rsp + 0x1b8]
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
jmp 0x14006d819
mov r8, r15
mov rcx, r12
call fcn.14005cd80
mov ebx, dword [rsp + 0x78]
mov edi, dword [rsp + 0x88]
mov rax, qword [r14 + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006d847
mov eax, dword [rsp + 0xa4]
not eax
movsxd rcx, eax
mov eax, dword [r14 + 0xb8]
mov dword [rdx + rcx*4], eax
movzx r8d, word [r15 + 0x60]
cmp r8d, 1
jne 0x14006d89f
test ebp, ebp
je 0x14006d8ba
cmp byte [r12 + 0x1f], 8
jae 0x14006d8ba
movzx r8d, byte [r12 + 0x25]
lea rcx, [r12 + 0xc4]
mov edx, r13d
test r8b, r8b
je 0x14006d884
cmp dword [rcx + 0xc], ebp
je 0x14006d899
inc edx
add rcx, 0x14
cmp edx, r8d
jl 0x14006d874
movzx eax, byte [r12 + 0x1f]
mov dword [r12 + rax*4 + 0x18c], ebp
inc byte [r12 + 0x1f]
jmp 0x14006d8ba
mov byte [rcx + 6], 1
jmp 0x14006d8ba
mov edx, ebp
mov rcx, r12
call fcn.140049a20
cmp r8d, dword [r12 + 0x28]
jle 0x14006d8ba
mov dword [r12 + 0x28], r8d
mov dword [r12 + 0x2c], ebp
cmp ebx, ebp
je 0x14006d92e
cmp edi, 1
jne 0x14006d910
test ebx, ebx
je 0x14006d92e
cmp byte [r12 + 0x1f], 8
jae 0x14006d92e
movzx r8d, byte [r12 + 0x25]
lea rcx, [r12 + 0xc4]
mov edx, r13d
test r8b, r8b
je 0x14006d8f5
cmp dword [rcx + 0xc], ebx
je 0x14006d90a
inc edx
add rcx, 0x14
cmp edx, r8d
jl 0x14006d8e5
movzx eax, byte [r12 + 0x1f]
mov dword [r12 + rax*4 + 0x18c], ebx
inc byte [r12 + 0x1f]
jmp 0x14006d92e
mov byte [rcx + 6], 1
jmp 0x14006d92e
mov r8d, edi
mov edx, ebx
mov rcx, r12
call fcn.140049a20
cmp edi, dword [r12 + 0x28]
jle 0x14006d92e
mov dword [r12 + 0x28], edi
mov dword [r12 + 0x2c], ebx
mov rdi, qword [rsp + 0x98]
mov r12, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x90]
mov eax, dword [rsp + 0x60]
mov r15, qword [r15 + 0x28]
inc eax
inc rdi
mov qword [rsp + 0xa8], r15
mov dword [rsp + 0x60], eax
mov qword [rsp + 0x98], rdi
test r15, r15
jne 0x14006ccf0
mov eax, dword [rsp + 0xb8]
mov r15, qword [rsp + 0x128]
mov r12, qword [rsp + 0x130]
mov rdi, qword [rsp + 0x138]
mov rsi, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x150]
test eax, eax
je 0x14006da44
movsxd rcx, dword [r14 + 0xb8]
lea r8d, [rax + 1]
mov rax, qword [r14 + 0x18]
cmp dword [rax + 0x3c], ecx
jg 0x14006d9da
mov r9d, r8d
mov dword [rsp + 0x20], r13d
xor r8d, r8d
mov edx, 0xd
mov rcx, r14
call fcn.14002bc90
jmp 0x14006da0b
lea eax, [rcx + 1]
mov dword [r14 + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x68]
mov word [rax + rcx*8], 0xd
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], r13
mov ecx, dword [rsp + 0xc4]
mov edx, dword [r14 + 0xb8]
test ecx, ecx
jns 0x14006da20
lea ecx, [rdx - 1]
mov rax, qword [r14]
cmp byte [rax + 0x55], 0
je 0x14006da32
lea rax, [0x14012aae0]
jmp 0x14006da41
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rcx, qword [rsp + 0xe0]
mov eax, dword [rsp + 0xbc]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.1400d1190
add rsp, 0x158
pop r14
pop r13
ret