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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf8
mov rsi, qword [rcx + 0x10]
xor ebp, ebp
mov r15, qword [rcx]
mov r12, rdx
mov r14, rcx
mov dword [rsp + 0x54], ebp
mov qword [rsp + 0x90], rbp
mov rbx, qword [rsi + 0x18]
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x88], rsi
mov edx, dword [rbx + 0x54]
mov dword [rsp + 0x4c], edx
lea eax, [rdx + 1]
mov dword [rbx + 0x54], eax
lea eax, [rdx - 1]
test edx, eax
jne 0x14007be14
mov rcx, qword [rbx]
lea eax, [rdx*2 + 1]
mov rdx, qword [rbx + 0x58]
movsxd r8, eax
shl r8, 2
call fcn.1400159c0
mov edx, dword [rsp + 0x4c]
mov qword [rbx + 0x58], rax
mov rcx, qword [rbx + 0x58]
mov r8d, 0xffffffff
test rcx, rcx
je 0x14007be2a
movsxd rax, edx
mov dword [rcx + rax*4], r8d
mov rbx, qword [rsi + 0x18]
not edx
mov dword [rsp + 0x4c], edx
mov edx, dword [rbx + 0x54]
mov dword [rsp + 0x48], edx
lea eax, [rdx + 1]
mov dword [rbx + 0x54], eax
lea eax, [rdx - 1]
test edx, eax
jne 0x14007be70
mov rcx, qword [rbx]
lea eax, [rdx*2 + 1]
mov rdx, qword [rbx + 0x58]
movsxd r8, eax
shl r8, 2
call fcn.1400159c0
mov edx, dword [rsp + 0x48]
mov r8d, 0xffffffff
mov qword [rbx + 0x58], rax
mov rcx, qword [rbx + 0x58]
test rcx, rcx
je 0x14007be80
movsxd rax, edx
mov dword [rcx + rax*4], r8d
movzx ebx, byte [r12 + 8]
not edx
mov rax, qword [r12 + 0x48]
mov rdi, qword [r12 + 0x40]
mov qword [rsp + 0x60], rax
mov eax, 1
mov dword [rsp + 0x48], edx
mov byte [rsp + 0x158], bl
movsxd r13, dword [rdi]
mov dword [rsp + 0x50], r13d
cmp bl, 0x74
je 0x14007bfbc
mov ebx, eax
cmp byte [r15 + 0x55], bpl
jne 0x14007bfb4
lea r14, [r13*4]
add r14, r13
shl r14, 3
mov rax, qword [r12]
cmp ebx, dword [rax]
jg 0x14007bfac
mov rdx, qword [rdi + 8]
mov ecx, ebp
test r13d, r13d
jle 0x14007bf02
add rdx, 0x20
nop
movzx eax, word [rdx]
cmp eax, ebx
je 0x14007bf02
inc ecx
add rdx, 0x28
cmp ecx, r13d
jl 0x14007bef0
cmp ecx, r13d
jne 0x14007bfa0
mov edx, 0x49
mov rcx, r15
call fcn.1400157c0
mov r8, rax
test rax, rax
je 0x14007c048
mov rcx, qword [rsp + 0x140]
xor eax, eax
mov qword [r8], rax
mov rdx, rdi
mov qword [r8 + 0x10], rax
mov qword [r8 + 0x18], rax
mov qword [r8 + 0x20], rax
mov qword [r8 + 0x28], rax
mov qword [r8 + 0x30], rax
mov qword [r8 + 0x38], rax
mov qword [r8 + 0x40], rax
mov eax, 0xffffffff
mov word [r8 + 0x32], ax
lea rax, [r8 + 0x48]
mov qword [r8 + 8], rax
mov byte [r8], 0x86
mov byte [rax], bpl
or dword [r8 + 4], 0x400
mov dword [r8 + 0x28], 1
mov dword [r8 + 8], ebx
call fcn.14004ebc0
mov rdi, rax
test rax, rax
je 0x14007bfa0
mov rax, qword [rax + 8]
inc r13d
mov dword [rsp + 0x50], r13d
mov word [rax + r14 + 0x20], bx
add r14, 0x28
inc ebx
cmp byte [r15 + 0x55], bpl
je 0x14007bed3
mov r14, qword [rsp + 0x140]
movzx ebx, byte [rsp + 0x158]
lea eax, [r13 + 1]
movsxd rdx, eax
shl rdx, 2
cmp dword [r15 + 0x158], ebp
jne 0x14007c0a7
movzx eax, word [r15 + 0x15c]
cmp rdx, rax
jbe 0x14007c052
inc dword [r15 + 0x16c]
mov rcx, r15
call fcn.140015770
mov r8, rax
mov qword [rsp + 0x68], rax
test r8, r8
je 0x14007c0b6
mov dword [r8], r13d
mov rcx, qword [rdi + 8]
cmp r13d, 1
jl 0x14007c036
lea rdx, [r8 + 4]
add rcx, 0x20
mov r8d, r13d
nop dword [rax]
movzx eax, word [rcx]
lea rdx, [rdx + 4]
dec eax
lea rcx, [rcx + 0x28]
mov dword [rdx - 4], eax
sub r8, 1
jne 0x14007c020
mov rdx, r12
mov rcx, r14
call fcn.14007a440
mov qword [rsp + 0x70], rax
jmp 0x14007c0bb
mov eax, 7
jmp 0x14007d0ae
mov r8, qword [r15 + 0x178]
mov qword [rsp + 0x68], r8
test r8, r8
jne 0x14007c06f
inc dword [r15 + 0x170]
jmp 0x14007bfe8
mov rax, qword [r8]
inc dword [r15 + 0x160]
mov qword [r15 + 0x178], rax
inc dword [r15 + 0x168]
mov eax, dword [r15 + 0x160]
cmp eax, dword [r15 + 0x164]
jle 0x14007bff8
mov dword [r15 + 0x164], eax
jmp 0x14007bff8
cmp byte [r15 + 0x55], bpl
je 0x14007bfe8
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x70], rbp
mov qword [r12 + 0x40], rdi
xor r8d, r8d
mov rcx, qword [r14]
mov rdx, rdi
call fcn.14004e2a0
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x40], rax
cmp bl, 0x74
jne 0x14007c0e9
mov rdi, qword [rsp + 0x78]
mov r15d, ebp
jmp 0x14007c22b
mov rax, qword [r12]
mov r12d, dword [rax]
mov eax, dword [r14 + 0x38]
lea r15d, [rax + 1]
inc eax
add eax, r12d
mov dword [rsp + 0x58], r15d
mov dword [r14 + 0x38], eax
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c12e
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, r15d
mov rcx, rsi
lea edx, [r8 + 0x4d]
call fcn.140036ff0
jmp 0x14007c155
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rdi, qword [rsp + 0x78]
mov r8d, 1
mov rcx, rdi
mov edx, r12d
call fcn.1400787d0
mov qword [rsp + 0x90], rax
test rax, rax
je 0x14007c223
mov ebx, ebp
test r12d, r12d
jle 0x14007c21b
mov rsi, qword [rsp + 0x148]
lea r15, [rax + 0x20]
mov r14, rbp
mov rdi, rbp
mov r13, rax
nop dword [rax]
mov rdx, qword [rsi + 0x48]
test rdx, rdx
je 0x14007c1c0
mov rcx, qword [rsp + 0x140]
mov r8d, ebx
call fcn.14007a3d0
test rax, rax
jne 0x14007c1df
jmp 0x14007c1c3
mov rax, rbp
mov rdx, qword [rsi]
cmp ebx, dword [rdx]
jge 0x14007c1df
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x140]
mov rdx, qword [rdx + rdi]
call fcn.14004c610
mov qword [r15], rax
inc ebx
mov rax, qword [r13 + 0x18]
add r15, 8
add rdi, 0x28
mov byte [r14 + rax], bpl
inc r14
cmp ebx, r12d
jl 0x14007c1a0
mov rsi, qword [rsp + 0x88]
mov r13d, dword [rsp + 0x50]
mov r15d, dword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x140]
movzx ebx, byte [rsp + 0x158]
mov r12, qword [rsp + 0x148]
mov rax, qword [rsp + 0x60]
lea r9, str.ORDER
mov qword [r12 + 0x48], rbp
mov rdx, r12
mov rcx, r14
mov qword [rax + 0x50], rbp
mov r8, qword [r12 + 0x40]
call fcn.14004b9f0
mov rax, qword [rsp + 0x60]
cmp qword [rax + 0x48], rbp
jne 0x14007c271
mov r8, qword [rax + 0x40]
lea r9, str.ORDER
mov rdx, rax
mov rcx, r14
call fcn.14004b9f0
mov r8d, dword [rsp + 0x4c]
mov rdx, r12
mov rcx, r14
call fcn.14007a1f0
cmp dword [r12 + 0x10], ebp
je 0x14007c364
cmp bl, 0x74
jne 0x14007c364
mov ebx, dword [r14 + 0x38]
mov rax, qword [rsp + 0x140]
inc ebx
lea r14d, [rbx + 1]
mov dword [rax + 0x38], r14d
mov edx, dword [r12 + 0x14]
test edx, edx
je 0x14007c2b8
inc edx
jmp 0x14007c2bd
mov edx, dword [r12 + 0x10]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c2e6
mov r8d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x55
mov r9d, ebx
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007c30f
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x55
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c338
mov r9d, r14d
mov dword [rsp + 0x20], ebp
mov r8d, ebx
mov edx, 0x55
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007c369
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x55
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
jmp 0x14007c369
mov r14d, ebp
mov ebx, ebp
mov rdx, qword [r12 + 0x58]
test rdx, rdx
je 0x14007c37b
mov rcx, rdi
call fcn.14004dd40
mov rdx, qword [r12 + 0x60]
mov qword [r12 + 0x58], rbp
test rdx, rdx
je 0x14007c392
mov rcx, rdi
call fcn.14004dd40
mov r9, qword [rsp + 0x140]
mov qword [r12 + 0x60], rbp
mov byte [rsp + 0xc0], 0xd
mov qword [rsp + 0xc8], rbp
mov r8d, dword [r9 + 0x38]
inc r8d
mov qword [rsp + 0xd4], rbp
mov dword [rsp + 0xd0], r8d
mov byte [rsp + 0x98], 0xd
mov qword [rsp + 0xa0], rbp
lea eax, [r8 + 1]
mov qword [rsp + 0xac], rbp
mov dword [rsp + 0xa8], eax
lea r12d, [rax + 1]
lea ecx, [r12 + 1]
mov dword [rsp + 0x40], eax
mov dword [r9 + 0x38], ecx
movsxd rdi, dword [rsi + 0xb8]
mov rax, qword [rsi + 0x18]
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0x50], ecx
lea edx, [rdi + 1]
cmp dword [rax + 0x3c], edi
jg 0x14007c435
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov rcx, rsi
lea edx, [r9 + 0xf]
call fcn.140036ff0
mov r9, qword [rsp + 0x140]
mov edi, eax
jmp 0x14007c45c
mov rax, qword [rsi + 0x68]
lea rcx, [rdi + rdi*2]
mov dword [rsi + 0xb8], edx
mov dword [rax + rcx*8], 0xf
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbp
mov rcx, qword [rsp + 0x60]
lea r8, [rsp + 0xc0]
mov rdx, rcx
mov dword [rcx + 0x10], ebx
mov rcx, r9
mov eax, dword [r9 + 0x1e4]
mov dword [rsp + 0x88], eax
call fcn.14007fa00
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c4af
mov r8d, dword [rsp + 0x44]
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r9 + 0x4a]
call fcn.140036ff0
jmp 0x14007c4d9
mov edx, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x4a
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
mov byte [rax + 0x1f], bpl
mov rax, qword [rsi + 0x18]
mov dword [rax + 0x28], ebp
mov rax, qword [rsi]
mov edx, dword [rsi + 0xb8]
cmp byte [rax + 0x55], bpl
je 0x14007c500
lea rax, [0x1400fbd48]
jmp 0x14007c516
lea eax, [rdx - 1]
test edi, edi
cmovns eax, edi
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rcx, dword [rsi + 0xb8]
mov rax, qword [rsi + 0x18]
mov dword [rsp + 0x58], ecx
lea r8d, [rcx + 1]
cmp dword [rax + 0x3c], ecx
jg 0x14007c550
xor r9d, r9d
mov dword [rsp + 0x20], r8d
mov r8d, dword [rsp + 0x40]
mov rcx, rsi
lea edx, [r9 + 0xf]
call fcn.140036ff0
mov dword [rsp + 0x58], eax
jmp 0x14007c57c
mov rax, qword [rsi + 0x68]
lea rcx, [rcx + rcx*2]
mov edx, dword [rsp + 0x40]
mov dword [rsi + 0xb8], r8d
mov dword [rax + rcx*8], 0xf
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsp + 0x148]
lea r8, [rsp + 0x98]
mov rcx, qword [rsp + 0x140]
mov edi, dword [rax + 0x10]
mov ebx, dword [rax + 0x14]
mov dword [rax + 0x10], r14d
mov r14, rax
mov dword [rax + 0x14], ebp
mov rdx, r14
mov eax, dword [rcx + 0x1e4]
mov dword [rsp + 0x80], eax
call fcn.14007fa00
mov dword [r14 + 0x10], edi
mov dword [r14 + 0x14], ebx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c5eb
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r9 + 0x4a]
call fcn.140036ff0
jmp 0x14007c615
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x4a
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
lea r8, [rsp + 0xc0]
mov rbx, qword [rsp + 0x90]
mov rdx, r14
mov r9, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x140]
mov byte [rax + 0x1f], bpl
mov rax, qword [rsi + 0x18]
mov dword [rax + 0x28], ebp
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r12d
call fcn.14007b7a0
mov edi, eax
movzx eax, byte [rsp + 0x158]
sub al, 0x73
cmp al, 1
ja 0x14007c6b8
mov eax, dword [rsp + 0x4c]
lea r8, [rsp + 0x98]
mov r9, qword [rsp + 0x150]
mov rdx, r14
mov rcx, qword [rsp + 0x140]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], r15d
lea r15d, [r12 + 1]
mov dword [rsp + 0x20], r15d
call fcn.14007b7a0
mov r12d, eax
mov dword [rsp + 0x54], eax
jmp 0x14007c6c0
mov r15d, dword [rsp + 0x50]
mov r12d, ebp
test rbx, rbx
je 0x14007c719
add dword [rbx], 0xffffffff
jne 0x14007c719
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14007c711
cmp qword [rcx + 0x298], rbp
je 0x14007c6e6
mov rdx, rbx
call fcn.140015440
jmp 0x14007c719
cmp rbx, qword [rcx + 0x180]
jb 0x14007c711
cmp rbx, qword [rcx + 0x188]
jae 0x14007c711
mov rax, qword [rcx + 0x178]
mov qword [rbx], rax
dec dword [rcx + 0x160]
mov qword [rcx + 0x178], rbx
jmp 0x14007c719
mov rcx, rbx
call fcn.1400153d0
movzx eax, byte [rsp + 0x158]
sub al, 0x75
cmp al, 1
jbe 0x14007c8c7
mov rax, qword [rsi + 0x18]
movsxd rbx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ebx
jg 0x14007c756
mov r9d, r12d
mov dword [rsp + 0x20], ebp
mov r8d, r15d
mov edx, 0xe
mov rcx, rsi
call fcn.140036ff0
mov ebx, eax
jmp 0x14007c781
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd r12, dword [rsi + 0xb8]
mov r15d, dword [rsp + 0x4c]
cmp dword [rax + 0x3c], r12d
jg 0x14007c7b5
mov r8d, dword [rsp + 0x40]
mov r9d, r15d
mov edx, 0x10
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140036ff0
mov r12d, eax
jmp 0x14007c7e5
mov edx, dword [rsp + 0x40]
lea rcx, [r12 + r12*2]
lea eax, [r12 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c80d
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, ebx
mov rcx, rsi
lea edx, [r8 + 0xd]
call fcn.140036ff0
jmp 0x14007c833
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
movsx ecx, word [r14 + 0xa]
mov r10, qword [rsp + 0x60]
mov edx, ecx
movsx r9d, word [r10 + 0xa]
mov r8d, r9d
cmp cx, r9w
jl 0x14007c885
lea eax, [r9 + 0x31]
cmp ecx, eax
jg 0x14007c8c0
lea eax, [r9 + 0x1f]
cmp ecx, eax
jle 0x14007c867
inc cx
mov word [r14 + 0xa], cx
jmp 0x14007c8d7
sub edx, r8d
movsxd rax, edx
lea rdx, str._n_n_t_t_b_b_a_a_a
movzx eax, byte [rax + rdx]
add ax, cx
movzx ecx, ax
mov word [r14 + 0xa], ax
jmp 0x14007c8d7
lea eax, [rdx + 0x31]
cmp r8d, eax
jle 0x14007c898
movzx ecx, r9w
mov word [r14 + 0xa], cx
jmp 0x14007c8d7
lea eax, [rdx + 0x1f]
cmp r8d, eax
jle 0x14007c8ab
lea ecx, [r9 + 1]
mov word [r14 + 0xa], cx
jmp 0x14007c8d7
sub r8d, edx
lea rdx, str._n_n_t_t_b_b_a_a_a
movsxd rax, r8d
movzx ecx, byte [rax + rdx]
add cx, r9w
mov word [r14 + 0xa], cx
jmp 0x14007c8d7
mov r15d, dword [rsp + 0x4c]
mov ebx, r15d
mov r10, qword [rsp + 0x60]
mov r12d, r15d
cmp byte [rsp + 0x158], 0x76
jne 0x14007c904
mov rcx, qword [rsp + 0x148]
mov r14d, ebx
movzx eax, word [r10 + 0xa]
cmp word [rcx + 0xa], ax
jle 0x14007ca0e
mov word [rcx + 0xa], ax
jmp 0x14007ca0e
mov rax, qword [rsi + 0x18]
movsxd r14, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r14d
jg 0x14007c936
mov r8d, dword [rsp + 0x40]
mov r9d, edi
inc r8d
mov dword [rsp + 0x20], ebp
mov edx, 0xe
mov rcx, rsi
call fcn.140036ff0
mov r14d, eax
jmp 0x14007c966
mov edx, dword [rsp + 0x40]
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
inc edx
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c991
mov r8d, dword [rsp + 0x44]
mov r9d, r15d
mov edx, 0x10
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007c9bf
mov edx, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007c9e7
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, r14d
mov rcx, rsi
lea edx, [r8 + 0xd]
call fcn.140036ff0
jmp 0x14007ca0e
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd r15, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r15d
jg 0x14007ca40
mov r8d, dword [rsp + 0x40]
mov r9d, edi
inc r8d
mov dword [rsp + 0x20], ebp
mov edx, 0xe
mov rcx, rsi
call fcn.140036ff0
mov r15d, eax
jmp 0x14007ca70
mov edx, dword [rsp + 0x40]
lea rcx, [r15 + r15*2]
lea eax, [r15 + 1]
inc edx
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007ca9b
mov r8d, dword [rsp + 0x44]
mov r9d, ebx
mov edx, 0x10
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007cac8
mov edx, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007caf2
mov r9d, dword [rsp + 0x48]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r8 + 0xd]
call fcn.140036ff0
jmp 0x14007cb1c
mov edx, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
movzx eax, byte [rsp + 0x158]
cmp al, 0x74
jne 0x14007cb30
mov edi, r15d
jmp 0x14007cbf5
cmp al, 0x76
jne 0x14007cb3f
mov edi, r15d
inc r15d
jmp 0x14007cbf5
mov rax, qword [rsi + 0x18]
movsxd rdi, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edi
jg 0x14007cb6c
mov r8d, dword [rsp + 0x44]
mov r9d, ebx
mov edx, 0x10
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140036ff0
mov edi, eax
jmp 0x14007cb99
mov edx, dword [rsp + 0x44]
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007cbc3
mov r9d, dword [rsp + 0x48]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r8 + 0xd]
call fcn.140036ff0
jmp 0x14007cbed
mov edx, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
movzx eax, byte [rsp + 0x158]
movsxd rbx, dword [rsi + 0xb8]
cmp al, 0x74
je 0x14007cc04
cmp al, 0x73
jne 0x14007cc58
mov rax, qword [rsi + 0x18]
mov r8d, dword [rsp + 0x50]
cmp dword [rax + 0x3c], ebx
jg 0x14007cc2a
mov r9d, dword [rsp + 0x54]
mov edx, 0xe
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140036ff0
jmp 0x14007cc58
mov edx, dword [rsp + 0x54]
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007cc83
mov r8d, dword [rsp + 0x40]
mov r9d, r14d
mov edx, 0x10
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007ccb1
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007ccdb
mov r9d, dword [rsp + 0x48]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r8 + 0xd]
call fcn.140036ff0
jmp 0x14007cd05
mov edx, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi]
mov edx, dword [rsi + 0xb8]
cmp byte [rax + 0x55], bpl
je 0x14007cd1d
lea r8, [0x1400fbd48]
jmp 0x14007cd37
mov ecx, dword [rsp + 0x58]
lea eax, [rdx - 1]
test ecx, ecx
cmovns eax, ecx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea r8, [rax + rcx*8]
mov dword [r8 + 8], edx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007cd66
mov r8d, dword [rsp + 0x44]
mov r9d, r12d
mov edx, 0x10
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007cd94
mov edx, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007cdbf
mov r8d, dword [rsp + 0x40]
mov r9d, r14d
mov edx, 0x10
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007cded
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14007ce10
mov eax, dword [rsp + 0x48]
not eax
movsxd rcx, eax
mov eax, dword [rsi + 0xb8]
mov dword [rdx + rcx*4], eax
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x14007ce36
xor r9d, r9d
mov dword [rsp + 0x20], ebp
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x5f]
call fcn.140036ff0
mov edx, eax
jmp 0x14007ce59
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0x5f
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
mov rcx, qword [rsi]
cmp byte [rcx + 0x55], bpl
je 0x14007ce73
mov r8, qword [rsp + 0x68]
mov edx, 0xfffffff4
call fcn.140037e90
jmp 0x14007cebc
test edx, edx
jns 0x14007ce7f
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x14007ceaa
mov r8, qword [rsp + 0x68]
mov r9d, 0xfffffff4
mov rcx, rsi
call fcn.1400380f0
jmp 0x14007cebc
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x14007cebc
mov qword [rdx + 0x10], rax
mov byte [rdx + 1], 0xf4
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
mov r9d, dword [rsp + 0xac]
mov r8d, dword [rsp + 0xd4]
cmp dword [rax + 0x3c], edx
jg 0x14007cef2
mov edx, 0x60
mov dword [rsp + 0x20], r13d
mov rcx, rsi
call fcn.140036ff0
mov edx, eax
jmp 0x14007cf1e
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x60
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r13d
mov qword [rax + rcx*8 + 0x10], rbp
mov rcx, qword [rsi]
cmp byte [rcx + 0x55], bpl
je 0x14007cf38
mov r8, qword [rsp + 0x70]
mov edx, 0xfffffffb
call fcn.140037e90
jmp 0x14007cf81
test edx, edx
jns 0x14007cf44
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x14007cf6f
mov r8, qword [rsp + 0x70]
mov r9d, 0xfffffffb
mov rcx, rsi
call fcn.1400380f0
jmp 0x14007cf81
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x14007cf81
mov qword [rdx + 0x10], rax
mov byte [rdx + 1], 0xfb
movsxd rcx, dword [rsi + 0xb8]
mov r14d, 1
test ecx, ecx
jle 0x14007cfa6
mov rax, qword [rsi + 0x68]
lea rcx, [rcx + rcx*2]
mov word [rax + rcx*8 - 0x16], r14w
mov ecx, dword [rsi + 0xb8]
mov rax, qword [rsi + 0x18]
cmp dword [rax + 0x3c], ecx
jg 0x14007cfc8
mov r9d, edi
mov dword [rsp + 0x20], ebx
mov r8d, r15d
mov edx, 0x12
mov rcx, rsi
call fcn.140036ff0
jmp 0x14007cff5
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x12
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14007d014
mov eax, dword [rsp + 0x4c]
not eax
movsxd rcx, eax
mov eax, dword [rsi + 0xb8]
mov dword [rdx + rcx*4], eax
mov rax, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x60]
cmp byte [rax], 9
jne 0x14007d057
mov rax, qword [rsi + 0x48]
mov rdx, rsi
test rax, rax
je 0x14007d03e
mov rdx, rax
mov rax, qword [rax + 0x48]
test rax, rax
jne 0x14007d032
mov r8, qword [rdx]
mov rdi, qword [rsp + 0x140]
mov rdx, qword [rdx + 0x20]
mov rcx, rdi
call fcn.140079760
jmp 0x14007d05f
mov rdi, qword [rsp + 0x140]
mov rbx, qword [rsp + 0x148]
mov rdx, qword [rbx + 0x48]
test rdx, rdx
je 0x14007d07d
mov rcx, qword [rsp + 0x78]
mov r8d, r14d
call fcn.1400764c0
mov r9d, dword [rsp + 0x80]
mov rcx, rdi
mov r8d, dword [rsp + 0x88]
mov qword [rbx + 0x48], rsi
mov qword [rsi + 0x50], rbx
movzx edx, byte [rbx + 8]
mov dword [rsp + 0x20], ebp
call fcn.140078ad0
cmp dword [rdi + 0x30], ebp
setne bpl
mov eax, ebp
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret