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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov eax, dword [rdx]
mov qword [rdx + 4], 0
mov r13, rcx
mov r12, rdx
cmp eax, 4
je 0x723030
cmp eax, 9
je 0x723030
cmp qword [rdx + 0x10], 0
je 0x723008
mov edx, dword [rdx + 0x28]
mov ebx, 1
xor edi, edi
test edx, edx
jle 0x723250
mov rsi, qword [r12 + rbx*8 + 0x28]
mov rcx, r13
mov rdx, rsi
call fcn.00722ec0
mov edx, dword [r12 + 0x28]
add edi, dword [rsi + 4]
test eax, eax
mov r8d, eax
sete cl
cmp edx, ebx
setg al
add rbx, 1
test cl, al
jne 0x722f0f
mov rcx, qword [r12 + 0x30]
mov rax, qword [rcx + 0x18]
mov qword [r12 + 0x18], rax
mov eax, dword [r12]
cmp eax, 1
je 0x7231f0
cmp eax, 2
jne 0x723190
test edi, edi
jle 0x722fae
mov qword [r12 + 4], 1
test edx, edx
jle 0x722fae
xor r10d, r10d
mov r9, qword [r12 + r10*8 + 0x30]
mov r15d, dword [r9 + 0x28]
mov qword [r9 + 4], 1
test r15d, r15d
jle 0x722fa5
xor edx, edx
mov rcx, qword [r9 + rdx*8 + 0x30]
call fcn.00725130
add rdx, 1
cmp dword [r9 + 0x28], edx
jg 0x722f8c
mov edx, dword [r12 + 0x28]
add r10, 1
cmp edx, r10d
jg 0x722f74
test r8d, r8d
jne 0x723014
mov ebp, dword [r12 + 4]
test ebp, ebp
jne 0x7231df
mov eax, dword [r12]
cmp eax, 4
je 0x723320
cmp eax, 4
jg 0x7231a0
cmp eax, 1
je 0x723288
cmp eax, 2
jne 0x723368
mov rdx, r12
mov rcx, r13
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x7239c0
mov dword [r12 + 4], 1
xor r8d, r8d
mov eax, r8d
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x50], 0
mov rbx, qword [r12 + 0x20]
mov edx, dword [rbx + 0x10]
mov qword [rsp + 0x40], rbx
test edx, edx
jle 0x72317a
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
mov rdi, qword [rax + rbx*8 + 0x18]
mov eax, dword [rdi + 0x18]
mov qword [rsp + 0x58], rdi
test eax, eax
je 0x723008
lea rbx, [rdi + 0x20]
mov dword [rsp + 0x4c], 0
mov qword [rsp + 0x38], rbx
jle 0x723163
mov r15, qword [rsp + 0x38]
xor ebx, ebx
nop word [rax + rax]
mov rcx, qword [r15 + 0x10]
test rcx, rcx
je 0x7230c0
mov rsi, qword [rcx + 0x18]
call fcn.0072fac0
mov rcx, qword [rsi + 0x40]
test rcx, rcx
je 0x7230b8
mov qword [rsi + 0x40], 0
call fcn.00824240
mov qword [r15 + 0x10], 0
mov rax, qword [rsp + 0x40]
xor ebp, ebp
lea rsi, [r15 + 0x10]
mov rdi, qword [rax + 8]
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0
mov eax, dword [r13 + 0x18]
setne bpl
test eax, eax
je 0x7230e6
or ebp, 2
mov r14, qword [r15 + 8]
mov rcx, r14
call sub.msvcrt.dll_strlen
mov qword [rsp + 0x28], rsi
mov r9d, ebp
mov rdx, r14
mov qword [rsp + 0x20], rdi
mov rcx, qword [r13]
mov r8d, eax
call fcn.007caf20
mov r8d, eax
test eax, eax
jne 0x723014
mov rax, qword [r15 + 0x10]
mov r15, qword [r15 + 0x18]
cmp byte [rax + 0x14], 0
mov eax, 1
cmove ebx, eax
test r15, r15
jne 0x723090
test ebx, ebx
je 0x723008
mov rdi, qword [rsp + 0x58]
add dword [rsp + 0x4c], 1
add qword [rsp + 0x38], 0x20
mov eax, dword [rsp + 0x4c]
cmp eax, dword [rdi + 0x18]
jl 0x723080
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 0x10]
add qword [rsp + 0x50], 1
mov rax, qword [rsp + 0x50]
cmp edx, eax
jg 0x72304e
mov eax, dword [r12]
mov dword [r12 + 4], 0
jmp 0x722fc4
mov eax, dword [rcx + 4]
mov dword [r12 + 4], eax
jmp 0x722fae
cmp eax, 9
jne 0x723368
mov rdx, r12
mov rcx, r13
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x723da0
mov rax, qword [r8 + 0x18]
mov dword [r12 + 4], ecx
mov qword [r12 + 0x18], rax
mov eax, dword [r8 + 8]
mov dword [r12 + 8], eax
xor r8d, r8d
jmp 0x723014
cmp edx, edi
jne 0x722fae
mov qword [r12 + 4], 1
test edi, edi
jle 0x722fae
xor r10d, r10d
mov r9, qword [r12 + r10*8 + 0x30]
mov r14d, dword [r9 + 0x28]
mov qword [r9 + 4], 1
test r14d, r14d
jle 0x72323d
xor edx, edx
mov rcx, qword [r9 + rdx*8 + 0x30]
call fcn.00725130
add rdx, 1
cmp dword [r9 + 0x28], edx
jg 0x723224
mov edx, dword [r12 + 0x28]
add r10, 1
cmp edx, r10d
jg 0x72320c
jmp 0x722fae
mov rcx, qword [r12 + 0x30]
mov r8, qword [rcx + 0x18]
mov qword [r12 + 0x18], r8
cmp eax, 1
je 0x723388
cmp eax, 2
je 0x722fc4
mov edx, dword [rcx + 4]
mov dword [r12 + 4], edx
test edx, edx
je 0x722fcd
jmp 0x7231df
mov r8, qword [r12 + 0x30]
mov edx, dword [r12 + 0x28]
mov ecx, dword [r8 + 4]
cmp edx, 1
jle 0x7231c8
sub edx, 2
lea rax, [r12 + 0x38]
lea r9, [r12 + rdx*8 + 0x40]
jmp 0x7232e3
mov ebx, dword [r13 + 0x18]
mov r11, qword [rdx + 0x18]
mov r10, qword [r8 + 0x18]
test ebx, ebx
jne 0x723308
cmp r11, r10
jg 0x7232d6
setl r10b
movzx r10d, r10b
cmp r10d, 1
jne 0x7232f8
mov r8, rdx
add rax, 8
cmp r9, rax
je 0x7231c8
mov rdx, qword [rax]
mov esi, dword [rdx + 4]
test esi, esi
jne 0x7232d6
test ecx, ecx
je 0x7232b0
xor ecx, ecx
jmp 0x7232d3
mov ecx, dword [rdx + 8]
test ecx, ecx
je 0x7232d3
mov ecx, r10d
jmp 0x7232d6
cmp r11, r10
jl 0x7232d6
setg r10b
movzx r10d, r10b
jmp 0x7232cd
mov rax, qword [r12 + 0x20]
mov r8, qword [r13 + 8]
mov rdx, qword [rax + 0x18]
mov edi, dword [r8 + 0x5c]
mov rax, qword [rdx + 0x30]
mov ecx, dword [rax + 0x10]
mov dword [rdx + 0x10], ecx
test edi, edi
jne 0x723347
mov r8, qword [rax + 8]
mov qword [rdx + 8], r8
mov rax, qword [rax]
mov qword [r12 + 0x18], rax
xor eax, eax
test ecx, ecx
sete al
xor r8d, r8d
mov dword [r12 + 8], eax
jmp 0x723014
mov rdx, r12
mov rcx, r13
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.00723bb0
test edx, edx
jne 0x722fc4
mov qword [r12 + 4], 1
jmp 0x722fb3
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
xor r13d, r13d
mov rdi, qword [rdx + 0x18]
mov rbp, rdx
mov edx, dword [rdx + 0x28]
mov r12, rcx
nop
mov dword [rbp + 8], r13d
test edx, edx
jle 0x723b15
xor esi, esi
mov r14d, 1
jmp 0x723a44
cmp rax, rdi
jg 0x723b30
setl al
movzx eax, al
cmp eax, 1
je 0x723a6a
mov r11d, dword [rbx + 4]
test r11d, r11d
jne 0x723a90
mov rax, qword [rbx + 0x18]
cmp rax, rdi
jne 0x723b48
mov ecx, dword [rbx + 8]
test ecx, ecx
je 0x723a38
mov dword [rbp + 8], 1
add rsi, 1
cmp edx, esi
jle 0x723b50
mov rbx, qword [rbp + rsi*8 + 0x30]
mov ecx, dword [r12 + 0x18]
mov rax, qword [rbx + 0x18]
test ecx, ecx
je 0x723a00
cmp rax, rdi
jl 0x723b30
setg al
movzx eax, al
cmp eax, 1
jne 0x723a14
mov r9, rdi
mov r8d, 1
mov rdx, rbx
mov rcx, r12
call qword [rbx + 0x10]
test eax, eax
jne 0x723b60
mov r11d, dword [rbx + 4]
mov edx, dword [rbp + 0x28]
test r11d, r11d
je 0x723a1d
mov qword [rbp + 4], 1
test edx, edx
jle 0x723b15
xor r9d, r9d
mov r8, qword [rbp + r9*8 + 0x30]
mov r10d, dword [r8 + 0x28]
mov qword [r8 + 4], 1
test r10d, r10d
jle 0x723ace
xor edx, edx
mov rcx, qword [r8 + rdx*8 + 0x30]
call fcn.00725130
add rdx, 1
cmp dword [r8 + 0x28], edx
jg 0x723ab7
mov edx, dword [rbp + 0x28]
add r9, 1
cmp edx, r9d
jg 0x723a9f
mov eax, dword [rbp + 8]
test eax, eax
je 0x723b15
cmp qword [r12 + 0x10], rbp
je 0x723b15
mov eax, dword [rbp]
cmp eax, 9
je 0x723b76
cmp eax, 4
je 0x723b76
xor r8d, r8d
test edx, edx
jle 0x723b15
mov rcx, qword [rbp + r8*8 + 0x30]
call fcn.007249e0
add r8, 1
cmp dword [rbp + 0x28], r8d
jg 0x723b01
xor eax, eax
mov qword [rbp + 0x18], rdi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov r14d, dword [rbx + 4]
test r14d, r14d
jne 0x723a90
mov rdi, rax
jmp 0x723a2a
xor r14d, r14d
jmp 0x723b3d
test r14d, r14d
je 0x7239e0
jmp 0x723ad7
mov dword [rbp + 8], 0
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov rdx, qword [rbp + 0x20]
mov ecx, dword [rdx + 0x10]
test ecx, ecx
jle 0x723b15
sub ecx, 1
lea rax, [rdx + 0x18]
lea rcx, [rdx + rcx*8 + 0x20]
mov rdx, qword [rax]
add rax, 8
mov dword [rdx + 0x10], 0
cmp rax, rcx
jne 0x723b8d
jmp 0x723b15
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x158
mov rax, qword [rdx + 0x20]
mov r15d, dword [rcx + 0x18]
mov qword [rsp + 0x1a8], rdx
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0x40], rax
mov rax, qword [rdx + 0x38]
mov rdx, qword [rdx + 0x30]
mov qword [rsp + 0x1a0], rcx
test rax, rax
je 0x7243b2
xor esi, esi
xor ecx, ecx
jmp 0x723e09
xor r8d, r8d
cmp rdx, rsi
setl r8b
cmp r15d, r8d
cmovne rsi, rdx
test rax, rax
je 0x723e23
mov rdx, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
cmp byte [rdx + 0x14], 0
jne 0x723dfc
mov rdx, qword [rdx]
test ecx, ecx
jne 0x723deb
mov rsi, rdx
mov ecx, 1
test rax, rax
jne 0x723e01
mov rax, qword [rsp + 0x40]
mov r14d, r15d
mov r13, rsi
mov eax, dword [rax + 0x10]
test eax, eax
jle 0x7240d6
mov qword [rsp + 0x38], 0
mov r8d, 1
mov r15d, r14d
mov r12, r13
mov rcx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
mov rcx, qword [rcx + rdi*8 + 0x18]
mov ebx, dword [rcx + 0x18]
mov qword [rsp + 0x30], rcx
test ebx, ebx
jle 0x7240b4
lea r14, [rcx + 0x20]
xor edi, edi
jmp 0x723ebf
mov rsi, qword [r14 + 0x10]
mov rax, qword [rsi]
cmp rax, r12
je 0x723eb0
cmp byte [rsi + 0x14], 0
jne 0x723eb0
test r15d, r15d
jne 0x724010
cmp rax, r12
jl 0x724019
test r15d, r15d
jne 0x724010
mov r12, rax
xor r8d, r8d
nop dword [rax + rax]
add edi, 1
add r14, 0x20
cmp edi, ebx
jge 0x7240ac
cmp qword [r14 + 0x18], 0
mov rbp, r14
je 0x723e78
mov rax, r14
xor ecx, ecx
xor r9d, r9d
jmp 0x723ef2
xor r10d, r10d
cmp rdx, rcx
setl r10b
cmp r15d, r10d
cmovne rcx, rdx
mov rax, qword [rax + 0x18]
test rax, rax
je 0x723f16
mov rdx, qword [rax + 0x10]
cmp byte [rdx + 0x14], 0
jne 0x723ee9
mov rdx, qword [rdx]
test r9d, r9d
jne 0x723ed8
mov rax, qword [rax + 0x18]
mov rcx, rdx
mov r9d, 1
test rax, rax
jne 0x723ef2
cmp rcx, r12
je 0x723eb0
mov rsi, r14
jmp 0x723f4d
cmp rax, r12
jl 0x723f64
test r15d, r15d
jne 0x723f5f
nop word [rax + rax]
mov rsi, qword [rsi + 0x18]
mov eax, 1
xor r8d, r8d
test rsi, rsi
je 0x723fe0
test al, al
je 0x723fe0
mov rbx, qword [rsi + 0x10]
cmp byte [rbx + 0x14], 0
jne 0x723f30
mov rax, qword [rbx]
test r15d, r15d
je 0x723f20
cmp rax, r12
jle 0x723f30
mov r13, qword [rbx + 0x18]
mov rcx, r13
mov r9, r12
mov r8d, 1
mov rdx, rbx
call fcn.007319a0
mov ecx, dword [r13 + 0x3c]
test ecx, ecx
jne 0x723fb8
cmp byte [rbx + 0x14], 0
jne 0x723fb8
mov rax, qword [rbx + 0x58]
movzx edx, word [rax + 4]
mov rax, rdx
shl rax, 4
add rax, rdx
mov edx, dword [rbx + 0x44]
mov rax, qword [rbx + rax*8 + 0xd8]
test edx, edx
jne 0x724318
cmp rax, r12
jl 0x723f68
nop dword [rax]
mov rax, qword [rbx + 0x18]
mov rsi, qword [rsi + 0x18]
mov r8d, dword [rax + 0x3c]
mov dword [rax + 0x3c], 0
test r8d, r8d
sete al
test rsi, rsi
jne 0x723f45
nop word [rax + rax]
test r8d, r8d
je 0x724330
mov rax, qword [rsp + 0x1a8]
mov qword [rax + 4], 1
mov eax, r8d
add rsp, 0x158
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp rax, r12
jle 0x723ea5
mov rbx, qword [rsi + 0x18]
mov r9, r12
mov r8d, 1
mov rdx, rsi
mov rcx, rbx
call fcn.007319a0
mov ebp, dword [rbx + 0x3c]
test ebp, ebp
jne 0x724070
cmp byte [rsi + 0x14], 0
jne 0x724070
mov rax, qword [rsi + 0x58]
mov r11d, dword [rsi + 0x44]
movzx edx, word [rax + 4]
mov rax, rdx
shl rax, 4
add rax, rdx
mov rax, qword [rsi + rax*8 + 0xd8]
test r11d, r11d
jne 0x7243a4
cmp rax, r12
jl 0x72401d
nop word [rax + rax]
mov rax, qword [rsi + 0x18]
mov r8d, dword [rax + 0x3c]
mov dword [rax + 0x3c], 0
test r8d, r8d
jne 0x724390
cmp byte [rsi + 0x14], 0
jne 0x724390
mov r12, qword [rsi]
mov rax, qword [rsp + 0x30]
add edi, 1
add r14, 0x20
mov ebx, dword [rax + 0x18]
cmp edi, ebx
jl 0x723ebf
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x10]
add qword [rsp + 0x38], 1
mov rcx, qword [rsp + 0x38]
cmp eax, ecx
jg 0x723e4e
mov r14d, r15d
mov r13, r12
test r8d, r8d
je 0x723e31
mov rax, qword [rsp + 0x1a8]
mov rsi, r13
xor ebp, ebp
mov rcx, qword [rsp + 0x1a8]
mov dword [rsp + 0x68], 0
mov qword [rax + 0x18], r13
mov rax, qword [rsp + 0x1a0]
mov r13, qword [rcx + 0x20]
mov rax, qword [rax + 8]
mov r10d, dword [rax + 0x5c]
test r10d, r10d
jne 0x724951
mov dword [rsp + 0x4c], ebp
mov dword [rsp + 0x30], ebp
cmp dword [r13 + 0x10], ebp
jle 0x724948
mov rsi, qword [r13 + rbp*8 + 0x18]
movzx eax, byte [rsi + 0x21]
movsxd rbx, dword [rsi + 0x18]
mov byte [rsp + 0x38], al
cmp ebx, 1
jg 0x724667
cmp qword [rsi + 0x38], 0
je 0x7249a0
mov dword [rsi + 0x10], 0
lea r14, [rsp + 0x90]
mov qword [rsp + 0x70], 0
mov r12, r14
movsxd r8, ebx
xor edx, edx
mov rcx, r12
shl r8, 5
call sub.msvcrt.dll_memset
mov eax, dword [rsi + 0x18]
test eax, eax
jle 0x7243df
lea rax, [rsp + 0x78]
mov rdi, r12
mov r15d, 1
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x50], rax
mov rax, r15
mov dword [rsp + 0x6c], 0
mov qword [rsp + 0x78], 0
shl rax, 5
cmp qword [rsi + rax + 0x18], 0
je 0x724490
mov rcx, qword [rsp + 0x1a8]
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x80], 0
mov r8, qword [rsp + 0x50]
mov qword [rsp + 0x88], 0
mov rdx, qword [rcx + 0x18]
lea rcx, [rsi + rax]
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x20], rax
call fcn.00725170
mov rcx, qword [rsp + 0x78]
mov ebx, eax
test eax, eax
jne 0x7248d8
cmp qword [rsp + 0x80], rcx
mov edx, dword [rsp + 0x6c]
sete r11b
mov qword [rdi + 8], 0
lea r9, [rdi + 0x18]
lea r8, [rdi + 0xc]
mov qword [rdi + 0x10], 0
mov qword [rdi + 0x18], 0
mov qword [rdi], rcx
mov dword [rdi + 8], edx
mov byte [rsp + 0x58], r11b
call fcn.007cd790
movzx r11d, byte [rsp + 0x58]
test eax, eax
mov ebx, eax
je 0x7243ba
mov byte [rdi + 0x11], 1
xor ebx, ebx
mov byte [rdi + 0x10], r11b
mov eax, dword [rsi + 0x18]
mov ecx, dword [rsi + 0x10]
mov dword [rsp + 0x38], 0
mov rdi, r12
mov dword [rsp + 0x40], ecx
test eax, eax
jg 0x7242a5
jmp 0x7244be
add dword [rsp + 0x38], 1
mov ecx, dword [rsp + 0x38]
add rdi, 0x20
cmp ecx, eax
jge 0x7244be
cmp byte [rdi + 0x10], 0
je 0x724290
mov r15, qword [rdi]
test r15, r15
je 0x724290
mov edx, dword [0x00869360]
test edx, edx
je 0x7244ad
mov rcx, qword [0x00868fc0]
test rcx, rcx
je 0x7242d3
call qword [0x008693e0]
mov rcx, r15
call qword [0x00869398]
mov rcx, r15
sub qword [0x00869728], 1
cdqe
sub qword [0x008696e0], rax
call qword [0x00869388]
mov rcx, qword [0x00868fc0]
test rcx, rcx
je 0x7244b6
call qword [0x008693f0]
mov eax, dword [rsi + 0x18]
jmp 0x724290
cmp rax, r12
jg 0x723f68
jmp 0x723fb8
xor edx, edx
xor r12d, r12d
jmp 0x724358
xor ecx, ecx
cmp rax, r12
setl cl
cmp r15d, ecx
cmovne r12, rax
mov rbp, qword [rbp + 0x18]
test rbp, rbp
je 0x72437a
mov rax, qword [rbp + 0x10]
cmp byte [rax + 0x14], 0
jne 0x72434f
mov rax, qword [rax]
test edx, edx
jne 0x724340
mov rbp, qword [rbp + 0x18]
mov r12, rax
mov edx, 1
test rbp, rbp
jne 0x724358
test edx, edx
jne 0x724095
xor r8d, r8d
jmp 0x723fe9
mov rax, qword [rsp + 0x1a8]
mov dword [rax + 4], 1
jmp 0x723ff9
cmp rax, r12
jg 0x72401d
jmp 0x724070
mov rsi, qword [rdx]
jmp 0x723e23
cmp byte [rdi + 0x11], 0
mov byte [rdi + 0x10], r11b
mov eax, dword [rsi + 0x18]
jne 0x724273
add r15, 1
add rdi, 0x20
lea edx, [r15 - 1]
cmp edx, eax
jl 0x7241a2
mov r15, qword [r12 + 0x18]
mov r10, rbp
mov r11, r14
mov rbp, rsi
mov r14, r13
test eax, eax
jle 0x724424
lea rbx, [r12 + 0x18]
xor edi, edi
mov ecx, 1
mov rdx, qword [rbx]
lea rsi, [rdi + r15]
lea r13, [rbx - 0x18]
cmp rsi, rdx
jne 0x7245fb
add rdi, 1
add rbx, 0x20
cmp eax, edi
jg 0x724400
test ecx, ecx
je 0x7243f0
cmp byte [rsp + 0x38], 0
mov r13, r14
mov rsi, rbp
mov r14, r11
mov rbp, r10
je 0x724440
test r15d, 0x7fffffff
jne 0x724457
lea rdx, [rsp + 0x70]
lea rcx, [rsi + 8]
mov r8, r15
call fcn.007cd930
mov ebx, eax
test eax, eax
jne 0x724487
xor edi, edi
cmp dword [rsi + 0x18], 0
mov rbx, r12
jle 0x724746
mov edx, dword [rbx + 8]
mov rcx, qword [rbx]
lea r9, [rbx + 0x18]
lea r8, [rbx + 0xc]
call fcn.007cd790
test eax, eax
je 0x724729
mov byte [rbx + 0x11], 1
xor ebx, ebx
mov eax, dword [rsi + 0x18]
jmp 0x724273
mov rax, qword [rsi + rax + 0x10]
xor r11d, r11d
mov rcx, qword [rax + 8]
mov edx, dword [rax + 0x10]
mov qword [rsp + 0x78], rcx
mov dword [rsp + 0x6c], edx
jmp 0x724226
mov rcx, r15
call qword [0x00869388]
mov eax, dword [rsi + 0x18]
jmp 0x724290
cmp r12, r14
je 0x7244cb
mov rcx, r12
call fcn.0082d7e0
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x68], ebx
test eax, eax
jle 0x7244ee
mov eax, dword [rsp + 0x4c]
add rbp, 1
add eax, 1
mov dword [rsp + 0x30], eax
test ebx, ebx
je 0x724114
mov eax, dword [rsp + 0x30]
cmp eax, dword [r13 + 0x10]
jne 0x72476a
cmp eax, 1
je 0x724785
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x80], ebx
cmp eax, 4
jle 0x72478c
test ebx, ebx
jne 0x724764
movsxd rdx, eax
lea rcx, [rsp + 0x80]
imul rdx, rdx, 0x30
call fcn.007cc570
mov r12, rax
mov ebx, dword [rsp + 0x80]
test ebx, ebx
jne 0x724764
mov ebp, 1
xor edi, edi
lea rsi, [r12 + 0x18]
shl rbp, 0x3e
cmp dword [r13 + 0x10], 0
jg 0x7245a3
jmp 0x7247a5
mov rax, qword [rsi]
mov edx, dword [rsi - 0x10]
mov rcx, qword [rsi - 0x18]
mov qword [rsi - 8], rax
mov r9, rsi
call fcn.007cd790
test eax, eax
je 0x724585
mov qword [rsi], rbp
mov dword [r14 + 0x10], 0
add rdi, 1
add rsi, 0x30
mov qword [rsi - 0x20], r15
cmp dword [r13 + 0x10], edi
jle 0x7247a5
mov r14, qword [r13 + rdi*8 + 0x18]
lea r8, [rsi - 0xc]
mov r9, rsi
mov qword [rsp + 0x30], r8
mov edx, dword [r14 + 0x10]
mov rcx, qword [r14 + 8]
mov qword [rsi - 0x10], 0
lea r15, [r14 + 8]
mov qword [rsi], 0
mov qword [rsi - 0x18], rcx
mov dword [rsi - 0x10], edx
mov qword [rsi - 8], 0
call fcn.007cd790
mov r8, qword [rsp + 0x30]
test eax, eax
je 0x724568
mov qword [rsi], rbp
mov rax, rbp
jmp 0x72456b
mov qword [rsp + 0x40], rdi
lea r8, [rbx - 0xc]
mov rdi, r10
cmp rsi, rdx
jle 0x724708
mov edx, dword [rbx - 0x10]
mov rcx, qword [rbx - 0x18]
mov r9, rbx
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x50], r8
call fcn.007cd790
mov r8, qword [rsp + 0x50]
mov r11, qword [rsp + 0x58]
test eax, eax
je 0x724658
mov rax, r11
mov rsi, rbp
mov r11, r13
mov rbp, rdi
mov byte [r11 + 0x11], 1
mov r13, r14
xor ebx, ebx
mov r14, rax
mov eax, dword [rsi + 0x18]
jmp 0x724273
cmp byte [rbx - 7], 0
jne 0x72474e
mov rdx, qword [rbx]
jmp 0x724607
mov qword [rsp + 0x70], 0
mov dword [rsi + 0x10], 0
cmp ebx, 4
jle 0x7246f3
call fcn.0082e1a0
test eax, eax
jne 0x7246e1
shl rbx, 5
lea rax, [rbx - 1]
mov r12, rbx
cmp rax, 0x7ffffefe
ja 0x7246e1
mov ecx, dword [0x00869360]
test ecx, ecx
je 0x7246d4
mov rcx, qword [0x00868fc0]
test rcx, rcx
je 0x7246b4
call qword [0x008693e0]
mov rcx, r12
call fcn.007dc4f0
mov r12, rax
test r12, r12
je 0x7246e1
mov ebx, dword [rsi + 0x18]
lea r14, [rsp + 0x90]
jmp 0x724166
mov ecx, ebx
call qword [0x00869380]
mov r12, rax
jmp 0x7246bf
mov dword [rsp + 0x68], 7
mov ebx, 7
jmp 0x7244ee
lea r14, [rsp + 0x90]
mov r12, r14
jmp 0x724166
mov r10, rdi
mov eax, dword [rbp + 0x18]
mov rdi, qword [rsp + 0x40]
mov ecx, 0
jge 0x724414
sub rdx, rdi
mov r15, rdx
jmp 0x724414
cmp byte [rbx + 0x11], 0
mov eax, dword [rsi + 0x18]
jne 0x72475d
add edi, 1
add rbx, 0x20
cmp edi, eax
jl 0x724466
jmp 0x7243df
mov eax, dword [rsi + 0x18]
jmp 0x7243df
mov rsi, rbp
mov r13, r14
mov rbp, rdi
mov r14, r11
mov eax, dword [rsi + 0x18]
xor ebx, ebx
jmp 0x724273
mov r8d, ebx
mov ebx, r8d
test ebx, ebx
mov r8d, ebx
sete bl
movzx ebx, bl
mov rax, qword [rsp + 0x1a8]
mov dword [rax + 8], ebx
jmp 0x723ff9
mov r8d, ebx
xor ebx, ebx
jmp 0x724775
lea r12, [rsp + 0x90]
mov ecx, 0x30
xor eax, eax
mov rdi, r12
rep stosd dword [rdi], eax
jmp 0x724538
mov edi, 1
shl rdi, 0x3e
mov rbp, qword [r12 + 0x10]
mov edx, dword [r13 + 0x10]
test edx, edx
jle 0x724838
lea rsi, [r12 + 0x18]
xor r14d, r14d
mov ecx, 1
mov rax, qword [r13 + r14*8 + 0x18]
mov r15, rbp
movsxd rax, dword [rax + 0x18]
sub r15, rax
movsxd rax, dword [r13]
sub r15, rax
mov rax, qword [rsi - 8]
cmp r15, rax
jg 0x7248e5
cmp rax, rbp
jg 0x7248e5
add r14, 1
add rsi, 0x30
cmp edx, r14d
jg 0x7247c8
test ecx, ecx
je 0x7247b7
lea rsi, [r12 + 0x20]
xor ebp, ebp
jmp 0x724834
mov rcx, qword [rsi + 8]
mov r8, qword [rsi - 0x10]
cmp dword [rcx + 8], 0
je 0x724821
cmp r8, qword [rsi]
je 0x72482d
mov rdx, rsi
call fcn.007cd930
mov edx, dword [r13 + 0x10]
add ebp, 1
add rsi, 0x30
cmp ebp, edx
jl 0x72480e
mov r8, qword [r12 + 0x18]
xor eax, eax
xor ecx, ecx
jmp 0x72485a
imul r9, rcx, 0x30
mov r9, qword [r12 + r9 + 0x18]
cmp r9, r8
jge 0x724856
mov r8, r9
mov eax, ecx
add rcx, 1
cmp edx, ecx
jg 0x724843
movsxd rsi, eax
imul rsi, rsi, 0x30
add rsi, r12
mov rax, qword [rsi + 0x18]
mov edx, dword [rsi + 8]
lea r9, [rsi + 0x18]
lea r8, [rsi + 0xc]
mov rcx, qword [rsi]
mov qword [rsi + 0x10], rax
call fcn.007cd790
test eax, eax
je 0x72488b
mov qword [rsi + 0x18], rdi
cmp qword [rsi + 0x10], rdi
jne 0x7247ae
mov rax, qword [r12 + 0x28]
mov r8d, dword [rsp + 0x80]
mov esi, dword [rax + 8]
lea rax, [rsp + 0x90]
cmp r12, rax
je 0x7248c4
mov rcx, r12
mov dword [rsp + 0x30], r8d
call fcn.0082d7e0
mov r8d, dword [rsp + 0x30]
test esi, esi
jg 0x724775
jmp 0x724767
call fcn.0082d7e0
mov eax, dword [rsi + 0x18]
jmp 0x724273
lea r8, [rsi - 0xc]
cmp r15, rax
jle 0x724936
mov rax, qword [rsi]
mov edx, dword [rsi - 0x10]
mov r9, rsi
mov qword [rsp + 0x30], r8
mov rcx, qword [rsi - 0x18]
mov qword [rsi - 8], rax
call fcn.007cd790
mov r8, qword [rsp + 0x30]
test eax, eax
je 0x724928
mov rax, qword [rsi - 8]
mov qword [rsi], rdi
cmp rax, rdi
jne 0x7248e9
jmp 0x724895
mov rax, qword [rsi - 8]
cmp rax, rdi
jne 0x7248e9
jmp 0x724895
cmp rbp, rax
mov edx, dword [r13 + 0x10]
cmovl rbp, rax
xor ecx, ecx
jmp 0x7247f4
mov ebx, dword [rsp + 0x68]
jmp 0x7244ee
mov rax, qword [r13 + 0x18]
mov dword [rax + 0x10], 0
lea rdx, [rax + 0x20]
jmp 0x72496b
mov rdx, qword [rdx + 0x18]
test rdx, rdx
je 0x72498c
mov rcx, qword [rdx + 0x10]
cmp byte [rcx + 0x14], 0
jne 0x724962
cmp qword [rcx], rsi
jne 0x724962
mov r9d, dword [rcx + 0x10]
test r9d, r9d
jle 0x724962
mov dword [rax + 0x10], 1
jmp 0x724962
mov r8d, dword [rax + 0x10]
xor ebx, ebx
test r8d, r8d
sete bl
xor r8d, r8d
jmp 0x724775
cmp qword [r13 + 8], 0
jne 0x72414b
test al, al
jne 0x72414b
mov rax, qword [rsi + 0x30]
lea rdx, [rsi + 8]
lea rcx, [rsp + 0x68]
mov r9, qword [rax + 8]
mov r8d, dword [rax + 0x10]
mov dword [rsi + 0x10], 0
call fcn.007c7510
mov ebx, dword [rsp + 0x68]
jmp 0x7244d7