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

Disassembly:
mov rax, rsp
push rbp
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x288
cmp qword [rcx + 0x298], 0
mov r15, rcx
jne 0x1402582ba
mov qword [rax - 0x18], rbx
mov edx, 0x2a
mov qword [rax - 0x20], rsi
mov qword [rax - 0x28], rdi
mov qword [rax - 0x30], r12
mov r12, qword [rcx + 8]
mov qword [rax - 0x38], r13
mov rcx, r12
mov qword [rax - 0x40], r14
mov qword [rbp + 0x1a8], r12
call fcn.140216f80
mov ebx, 0xffffffff
test al, al
je 0x140256caa
mov rcx, qword [r12 + 0x28]
mov edx, dword [rcx + 0x20]
sub edx, dword [rcx + 0x18]
mov eax, dword [rcx + 0x1c]
inc edx
sub eax, dword [rcx + 0x14]
inc eax
mov dword [rsp + 0x3c], edx
mov dword [rsp + 0x38], eax
mov rsi, qword [rsp + 0x38]
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x50], rsi
jmp 0x140256cc0
mov qword [rsp + 0x38], 0xffffffffffffffff
mov rax, qword [rsp + 0x38]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x50], rax
lea rdx, [rbp + 0x1b0]
mov rcx, r12
call fcn.1402184f0
mov ecx, 0x10
call fcn.1408d6ed8
mov rdx, r12
mov rcx, rax
call fcn.1403e0a40
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp + 0x1b8]
mov rdi, rax
mov qword [r15 + 0x248], rax
call fcn.14050c230
mov rcx, rdi
mov edx, dword [rax]
call fcn.1403e9e50
mov rdi, qword [r15 + 0x248]
lea rcx, [0x140d96cc0]
mov edx, 0x13
call fcn.1406ebbe0
lea rdx, [rsp + 0x68]
mov qword [rsp + 0x68], rax
mov rcx, rdi
call fcn.1406e3c90
mov rax, qword [rsp + 0x68]
mov ecx, dword [rax]
test ecx, ecx
je 0x140256d53
cmp ecx, ebx
je 0x140256d66
mov rax, qword [rsp + 0x68]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140256d66
mov rcx, qword [rsp + 0x68]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov rcx, r15
call fcn.140248d80
mov rdi, qword [r15 + 0x248]
test rax, rax
je 0x140256d83
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x78]
movzx edx, al
mov rcx, rdi
call fcn.1403e9ff0
cmp byte [r15 + 0x220], 0
je 0x140256da0
mov rcx, r15
call fcn.140248650
mov rax, qword [r15 + 0x248]
lea r8, [0x140d96d08]
xor r13d, r13d
mov r9, r12
mov dword [rsp + 0x28], r13d
mov rcx, qword [rax + 8]
lea rax, [0x140d96cd8]
mov qword [rsp + 0x20], rax
mov byte [rcx + 0x17c], 1
lea rcx, [rbp + 0x40]
mov rdx, qword [r15 + 0x248]
call fcn.1406ddb50
lea rcx, [rbp + 0x40]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x248]
lea rax, [0x140d96d30]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d96d50]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x48]
call fcn.1406ddb50
lea rcx, [rbp + 0x48]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x248]
lea rax, [0x140d96d70]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d8f9f0]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x50]
call fcn.1406ddb50
lea rcx, [rbp + 0x50]
call fcn.1406dbf40
mov rcx, qword [r15 + 0x248]
xor edx, edx
call fcn.1403ea6f0
mov ecx, 0xd0
call fcn.1408d6ed8
xor edx, edx
mov r8d, 0xd0
mov rcx, rax
mov rdi, rax
call fcn.1408d97b0
mov rcx, qword [r15 + 0x298]
cmp rcx, rdi
je 0x140256ea0
mov edx, 0xd0
mov qword [r15 + 0x298], rdi
call fcn.1401ea580
mov rcx, qword [r15 + 0x298]
mov rdx, r12
call fcn.140261320
lea rax, [0x140ebfba8]
mov edx, 5
lea rcx, [0x140d96d90]
mov qword [rsp + 0x30], rax
call fcn.1406ebbe0
xor r8d, r8d
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x68]
call fcn.140763f90
mov rcx, qword [rsp + 0x30]
mov rdi, rax
mov edx, dword [rcx]
cmp edx, 1
jbe 0x140256f0c
mov edx, 0x7fffffff
lea rcx, [rsp + 0x30]
mov r8d, 1
call fcn.140258490
mov rdx, rdi
mov rcx, rax
call fcn.14046a6f0
jmp 0x140256f29
mov rdx, rdi
lea rcx, [rbp + 0x58]
call fcn.14046a6f0
lea rcx, [rsp + 0x30]
call fcn.14071d1f0
mov rcx, qword [rbp + 0x58]
mov qword [rax], rcx
lea rcx, [rbp - 0x18]
call fcn.1407606b0
mov rdx, rax
lea rcx, [rbp + 0x60]
call fcn.140766a20
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.140250610
lea rcx, [rbp + 0x60]
call fcn.140764090
mov rax, qword [rbp - 0x18]
mov ecx, dword [rax]
test ecx, ecx
je 0x140256f70
cmp ecx, ebx
je 0x140256f82
mov rax, qword [rbp - 0x18]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140256f82
mov rcx, qword [rbp - 0x18]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
lea rcx, [rbp + 0x68]
call fcn.140764090
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax]
test ecx, ecx
je 0x140256fa9
cmp ecx, ebx
je 0x140256fbc
mov rax, qword [rsp + 0x48]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140256fbc
mov rcx, qword [rsp + 0x48]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov rax, qword [r15 + 0x298]
lea r8, [rsp + 0x30]
mov rdx, qword [r15 + 0x248]
mov rcx, qword [rax + 0x58]
call fcn.1403f05a0
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96d98]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d96db0]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x70]
mov rdx, qword [rdx + 0x58]
call fcn.1406ddb50
lea rcx, [rbp + 0x70]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x298]
lea r14, [0x140d92c48]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d96dc0]
mov r9, r12
mov qword [rsp + 0x20], r14
lea rcx, [rbp + 0x78]
mov rdx, qword [rdx + 0xb8]
call fcn.1406ddb50
lea rcx, [rbp + 0x78]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d92c68]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d96dd0]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x80]
mov rdx, qword [rdx + 0xb8]
call fcn.1406ddb50
lea rcx, [rbp + 0x80]
call fcn.1406dbf40
mov rax, qword [r15 + 0x298]
mov ecx, 0x30
mov rdi, qword [rax + 0x18]
mov qword [rdi + 0x38], r15
call fcn.1408d6ed8
mov rdx, rdi
mov rcx, rax
call fcn.1403ed770
mov qword [rdi + 0x30], rax
mov byte [rax + 0x10], 1
mov rdx, qword [rdi + 0x38]
mov rcx, qword [rdi + 0x30]
mov rdx, qword [rdx + 0x248]
call fcn.1403f0440
mov rdx, qword [rdi + 0x30]
mov rcx, rdi
call fcn.140231090
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96de0]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d91800]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x88]
mov rdx, qword [rdx + 0x18]
call fcn.1406ddb50
lea rcx, [rbp + 0x88]
call fcn.1406dbf40
mov rax, qword [r15 + 0x298]
xor edx, edx
mov rcx, qword [rax + 0x18]
call fcn.1402309f0
mov rax, qword [r15 + 0x298]
xor edx, edx
mov rcx, qword [rax + 0x18]
call fcn.1402306b0
mov rax, qword [r15 + 0x298]
mov rcx, qword [rax + 0xb0]
mov qword [rcx + 0x38], r15
mov rdx, qword [r15 + 0x298]
mov rcx, qword [rdx + 0xa8]
mov rdx, qword [rdx + 0xb0]
call fcn.14023c2d0
mov ecx, 0x20
call fcn.1408d6ed8
mov rdi, qword [r15 + 0x248]
mov r8, r12
mov rdx, rdi
mov rcx, rax
mov rsi, rax
call fcn.1403a90e0
lea rax, [0x140d95ba0]
mov qword [rsi + 0x10], r13
xor edx, edx
mov qword [rsi], rax
mov rcx, rsi
mov qword [rsi + 0x18], rdi
call fcn.1403afa10
mov rcx, qword [r15 + 0x298]
mov rdx, rsi
mov qword [r15 + 0x250], rsi
mov rcx, qword [rcx + 0xb0]
call fcn.140242c80
mov rax, qword [r15 + 0x298]
mov edx, 0x40
mov rcx, qword [rax + 0xb0]
call fcn.140211090
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96e00]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d8f850]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x90]
mov rdx, qword [rdx + 0xb0]
call fcn.1406ddb50
lea rcx, [rbp + 0x90]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96e28]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d8f850]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x98]
mov rdx, qword [rdx + 0xb0]
call fcn.1406ddb50
lea rcx, [rbp + 0x98]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x298]
lea r8, [0x140d8f7e8]
mov dword [rsp + 0x28], r13d
lea rcx, [rbp + 0xa0]
mov r9, r12
mov qword [rsp + 0x20], r14
mov rdx, qword [rdx + 0xb0]
call fcn.1406ddb50
lea rcx, [rbp + 0xa0]
call fcn.1406dbf40
mov rax, qword [r15 + 0x298]
xor edx, edx
mov rcx, qword [rax + 0xc8]
call fcn.1402306b0
mov rax, qword [r15 + 0x298]
mov edx, 2
mov rcx, qword [rax + 0xc8]
call fcn.140231610
mov rax, qword [r15 + 0x298]
mov edx, 0x70000
mov dword [rbp + 0x3c], 0x70000
mov rcx, qword [rax + 0xc8]
call fcn.140213940
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96e40]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d96e58]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xa8]
mov rdx, qword [rdx + 0xc8]
call fcn.1406ddb50
lea rcx, [rbp + 0xa8]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x298]
mov rdx, qword [rdx + 0xc8]
lea rax, [0x140d96a20]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d91800]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xf0]
call fcn.1406ddb50
lea rcx, [rbp + 0xf0]
call fcn.1406dbf40
mov rax, qword [r15 + 0x298]
mov edx, 1
mov rdi, qword [rax + 0x88]
mov rcx, rdi
mov qword [rdi + 0x30], r15
call fcn.14029c670
mov dl, 1
mov rcx, rdi
call fcn.1402b1740
mov edx, 1
mov rcx, rdi
call fcn.1402b07e0
mov edx, 8
mov dword [rbp + 0xb0], 8
mov rcx, rdi
call fcn.14029bb60
mov edx, 3
mov rcx, rdi
call fcn.14020f650
mov edx, 4
mov rcx, rdi
call fcn.14029bb10
mov rax, qword [r15 + 0x298]
mov rdx, qword [r15 + 0x248]
mov rcx, qword [rax + 0x88]
mov rax, qword [rcx]
call qword [rax + 0x188]
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96e68]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d8f780]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xb8]
mov rdx, qword [rdx + 0x88]
call fcn.1406ddb50
lea rcx, [rbp + 0xb8]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96e88]
mov dword [rsp + 0x28], r13d
lea r8, [0x140d96ea8]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xc0]
mov rdx, qword [rdx + 0x88]
call fcn.1406ddb50
lea rcx, [rbp + 0xc0]
call fcn.1406dbf40
mov ecx, 0x10
call fcn.1408d6ed8
mov rcx, qword [r15 + 0x298]
mov rdx, qword [rcx + 0x88]
mov rcx, rax
call fcn.140328f00
mov edx, 6
lea rcx, [0x140d91a7c]
mov rdi, rax
call fcn.1406ebbe0
xor r8d, r8d
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0xc8]
call fcn.1404e9f90
mov rdx, rax
mov rcx, rdi
call fcn.140329c20
lea rcx, [rbp + 0xc8]
call fcn.1404ea200
mov rax, qword [rsp + 0x78]
mov ecx, dword [rax]
test ecx, ecx
je 0x1402574ec
cmp ecx, ebx
je 0x1402574ff
mov rax, qword [rsp + 0x78]
lock add dword [rax], ebx
setne al
test al, al
jne 0x1402574ff
mov rcx, qword [rsp + 0x78]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
lea rax, [0x140d96ed0]
mov dword [rsp + 0x28], r13d
mov r9, r12
mov qword [rsp + 0x20], rax
lea r8, [0x140d96ee8]
mov rdx, rdi
lea rcx, [rbp + 0xd0]
call fcn.1406ddb50
lea rcx, [rbp + 0xd0]
call fcn.1406dbf40
mov rax, qword [r15 + 0x298]
mov edx, 1
mov rdi, qword [rax + 0xa0]
mov rcx, rdi
mov qword [rdi + 0x30], r15
call fcn.14029c670
xor edx, edx
mov rcx, rdi
call fcn.1402c2390
xor edx, edx
mov rcx, rdi
call fcn.1402c20c0
mov dl, 1
mov rcx, rdi
call fcn.1402c27c0
mov rcx, rdi
call fcn.1402ba1f0
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.1402f2ef0
mov rcx, rdi
call fcn.1402ba1f0
xor edx, edx
mov rcx, rax
call fcn.1402f30d0
mov edx, 2
mov rcx, rdi
call fcn.14029ca40
mov edx, 8
mov dword [rbp + 0x30], 8
mov rcx, rdi
call fcn.14029bb60
mov edx, 3
mov rcx, rdi
call fcn.14020f650
mov edx, 4
mov rcx, rdi
call fcn.14029bb10
mov rax, qword [r15 + 0x298]
mov rdx, qword [r15 + 0x248]
mov rcx, qword [rax + 0xa0]
mov rax, qword [rcx]
call qword [rax + 0x188]
mov rcx, qword [r15 + 0x298]
mov rcx, qword [rcx + 0xa0]
call fcn.1402ba1f0
mov rdx, qword [r12 + 0x28]
lea rcx, [rsp + 0x40]
add rdx, 0x38
mov r13, rax
call fcn.14046a6f0
mov edx, 0x1a
lea rcx, [0x140d96ef8]
call fcn.1406ebbe0
mov r8d, ebx
mov qword [rbp - 0x80], rax
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.1404a5460
mov r8d, eax
xor edx, edx
mov rcx, r13
call fcn.1402ef1c0
mov rax, qword [rbp - 0x80]
mov ecx, dword [rax]
test ecx, ecx
je 0x14025766a
cmp ecx, ebx
je 0x14025767c
mov rax, qword [rbp - 0x80]
lock add dword [rax], ebx
setne al
test al, al
jne 0x14025767c
mov rcx, qword [rbp - 0x80]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov edx, 9
lea rcx, [0x140d96f18]
call fcn.1406ebbe0
mov r8d, ebx
mov qword [rbp - 0x78], rax
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x40]
call fcn.1404a5460
mov r8d, eax
mov edx, 1
mov rcx, r13
call fcn.1402ef1c0
mov rax, qword [rbp - 0x78]
mov ecx, dword [rax]
test ecx, ecx
je 0x1402576ce
cmp ecx, ebx
je 0x1402576e0
mov rax, qword [rbp - 0x78]
lock add dword [rax], ebx
setne al
test al, al
jne 0x1402576e0
mov rcx, qword [rbp - 0x78]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov edx, 9
lea rcx, [0x140d96f28]
call fcn.1406ebbe0
mov r8d, ebx
mov qword [rbp - 0x70], rax
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x40]
call fcn.1404a5460
mov r8d, eax
mov edx, 2
mov rcx, r13
call fcn.1402ef1c0
mov rax, qword [rbp - 0x70]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257732
cmp ecx, ebx
je 0x140257744
mov rax, qword [rbp - 0x70]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257744
mov rcx, qword [rbp - 0x70]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov edx, 0x10
lea rcx, [0x140d96f38]
call fcn.1406ebbe0
mov r8d, ebx
mov qword [rbp - 0x68], rax
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x40]
call fcn.1404a5460
mov r8d, eax
mov edx, 3
mov rcx, r13
call fcn.1402ef1c0
mov rax, qword [rbp - 0x68]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257796
cmp ecx, ebx
je 0x1402577a8
mov rax, qword [rbp - 0x68]
lock add dword [rax], ebx
setne al
test al, al
jne 0x1402577a8
mov rcx, qword [rbp - 0x68]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov edx, 2
mov rcx, r13
call fcn.14020f650
mov ecx, 0x10
call fcn.1408d6ed8
mov rdx, r12
mov rcx, rax
call fcn.1403de340
xor edx, edx
mov rcx, rax
mov rdi, rax
call fcn.1403dedb0
lea rax, [0x140d96f50]
mov dword [rsp + 0x28], 0
mov r9, r12
mov qword [rsp + 0x20], rax
lea r8, [0x140d96f70]
mov rdx, rdi
lea rcx, [rbp + 0xd8]
call fcn.1406ddb50
lea rcx, [rbp + 0xd8]
call fcn.1406dbf40
mov rax, qword [r15 + 0x238]
lea rdx, [rbp + 0x18]
mov r14, qword [r15 + 0x248]
test rax, rax
mov esi, 1
mov qword [rbp + 0x18], 0xffffffffffffffff
cmovne r14, rax
xor ecx, ecx
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rcx
mov rcx, r14
mov rax, qword [r14]
call qword [rax + 0x78]
cmp eax, esi
jle 0x1402578b3
mov r12, rdi
mov ecx, 0x10
call fcn.1408d6ed8
mov rdx, r12
mov rcx, rax
call fcn.1403c1e70
mov dl, 1
mov rcx, rax
mov rdi, rax
call fcn.1403c3380
mov dl, 1
mov rcx, rdi
call fcn.1403c33c0
mov rdx, rdi
mov rcx, r13
call fcn.140201210
mov rax, qword [r14]
lea rdx, [rbp + 0x18]
xor ecx, ecx
mov qword [rbp + 0x18], 0xffffffffffffffff
mov qword [rbp + 0x20], rcx
inc esi
mov qword [rbp + 0x28], rcx
mov rcx, r14
call qword [rax + 0x78]
cmp esi, eax
jl 0x140257850
mov r12, qword [rbp + 0x1a8]
mov rcx, qword [r15 + 0x298]
mov rcx, qword [rcx + 0xa0]
call fcn.14029b7f0
mov rcx, qword [r15 + 0x298]
mov rsi, rax
mov r14, qword [rcx + 0xa0]
mov rcx, qword [rcx + 0x88]
mov rax, qword [r14]
mov rdi, qword [rax + 0x190]
call fcn.14029b7f0
mov rdx, rax
mov rcx, r14
call rdi
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96e68]
xor r14d, r14d
lea r8, [0x140d8f780]
mov dword [rsp + 0x28], r14d
lea rcx, [rbp + 0xe0]
mov r9, r12
mov qword [rsp + 0x20], rax
mov rdx, qword [rdx + 0xa0]
call fcn.1406ddb50
lea rcx, [rbp + 0xe0]
call fcn.1406dbf40
mov rdx, qword [r15 + 0x298]
lea rax, [0x140d96e88]
mov dword [rsp + 0x28], r14d
lea r8, [0x140d96ea8]
mov r9, r12
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xe8]
mov rdx, qword [rdx + 0xa0]
call fcn.1406ddb50
lea rcx, [rbp + 0xe8]
call fcn.1406dbf40
lea ecx, [r14 + 0x10]
call fcn.1408d6ed8
mov r8, qword [r15 + 0x298]
mov rcx, rax
mov rdx, qword [r8 + 0xa0]
call fcn.140328f00
lea edx, [r14 + 6]
mov rdi, rax
lea rcx, [0x140d91a7c]
call fcn.1406ebbe0
xor r8d, r8d
mov qword [rbp - 0x60], rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x128]
call fcn.1404e9f90
mov rdx, rax
mov rcx, rdi
call fcn.140329c20
lea rcx, [rbp + 0x128]
call fcn.1404ea200
mov rcx, qword [rbp - 0x60]
mov eax, dword [rcx]
test eax, eax
je 0x1402579f6
cmp eax, ebx
je 0x140257a08
mov rax, qword [rbp - 0x60]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257a08
mov rcx, qword [rbp - 0x60]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
lea rax, [0x140d96ed0]
mov dword [rsp + 0x28], r14d
mov r9, r12
mov qword [rsp + 0x20], rax
lea r8, [0x140d96ee8]
mov rdx, rdi
lea rcx, [rbp + 0xf8]
call fcn.1406ddb50
lea rcx, [rbp + 0xf8]
call fcn.1406dbf40
mov rcx, qword [r15 + 0x298]
mov rcx, qword [rcx + 0x88]
call fcn.14029b7f0
mov rdi, rax
mov dword [rsp + 0x28], r14d
lea rax, [0x140d96f88]
mov rdx, rdi
mov r9, r12
mov qword [rsp + 0x20], rax
lea r8, [0x140d96fa0]
lea rcx, [rbp + 0x100]
call fcn.1406ddb50
lea rcx, [rbp + 0x100]
call fcn.1406dbf40
lea rax, [0x140d96fd8]
mov dword [rsp + 0x28], r14d
mov r9, r12
mov qword [rsp + 0x20], rax
lea r8, [0x140d8f658]
mov rdx, rdi
lea rcx, [rbp + 0x108]
call fcn.1406ddb50
lea rcx, [rbp + 0x108]
call fcn.1406dbf40
mov rax, qword [r15 + 0x298]
mov edx, 1
mov rdi, qword [rax + 0x50]
mov rcx, rdi
call fcn.1403f6600
mov rdx, rax
mov rcx, rdi
call fcn.1403f3dc0
mov r8d, 7
mov edx, eax
mov rcx, rdi
call fcn.1403f60e0
mov rcx, r15
call fcn.140256780
mov rcx, r15
call fcn.140256340
mov rcx, r15
call fcn.14025bac0
test al, al
jne 0x140257c8a
lea rax, [0x140e8a5a8]
mov edx, 9
lea rcx, [0x140d96c28]
mov qword [rsp + 0x70], rax
call fcn.1406ebbe0
lea r9, [rsp + 0x70]
mov qword [rbp - 0x58], rax
lea r8, [rbp - 0x58]
mov qword [rsp + 0x20], r14
xor edx, edx
lea rcx, [rbp + 0x130]
call fcn.1407500e0
mov rax, qword [rbp - 0x58]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257b6c
cmp ecx, ebx
je 0x140257b7e
mov rax, qword [rbp - 0x58]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257b7e
mov rcx, qword [rbp - 0x58]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257b9c
cmp ecx, ebx
je 0x140257baf
mov rax, qword [rsp + 0x70]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257baf
mov rcx, qword [rsp + 0x70]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov edx, 0xd
mov dword [rbp + 0x120], 0x80000000
lea rcx, [0x140d96cb0]
mov qword [rbp + 0x118], r14
call fcn.1406ebbe0
lea r9, [rbp + 0x118]
mov qword [rbp - 0x48], rax
lea r8, [rbp - 0x48]
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0x130]
call fcn.140759880
lea rdx, [rbp - 0x10]
mov rcx, rax
call fcn.140701610
mov rdx, rax
mov rcx, r12
call fcn.14025c560
mov rax, qword [rbp - 0x10]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257c26
cmp ecx, ebx
je 0x140257c38
mov rax, qword [rbp - 0x10]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257c38
mov rcx, qword [rbp - 0x10]
mov edx, 1
lea r8d, [rdx + 7]
call fcn.1406e4ad0
lea rcx, [rbp + 0x140]
call fcn.1406fe2b0
mov rax, qword [rbp - 0x48]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257c60
cmp ecx, ebx
je 0x140257c72
mov rax, qword [rbp - 0x48]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257c72
mov rcx, qword [rbp - 0x48]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
lea rcx, [rbp + 0x118]
call fcn.1406fe2b0
lea rcx, [rbp + 0x130]
call fcn.1407508a0
mov rcx, qword [r15 + 0x2c8]
call fcn.1404cb9e0
mov edx, eax
mov rcx, r12
call fcn.140260210
mov rcx, qword [r15 + 0x2c8]
call fcn.1404a7b00
mov edx, eax
mov rcx, r12
call fcn.14025fc80
mov rcx, qword [r15 + 0x2c8]
call fcn.1404cb9f0
mov rdi, qword [r12 + 8]
mov edx, eax
mov r14d, eax
mov rcx, qword [rdi + 0x2c8]
call fcn.1404e9ef0
cmp byte [rdi + 0x220], 0
jne 0x140257cff
cmp qword [rdi + 0x298], 0
je 0x140257cff
mov rcx, rdi
test r14d, r14d
jne 0x140257cfa
call fcn.140253720
jmp 0x140257cff
call fcn.1402537b0
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp + 0x34]
call fcn.1404cbb50
mov rcx, r12
mov edx, dword [rax]
mov dword [rbp + 0x38], edx
call fcn.140260e30
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp - 8]
call fcn.14050ceb0
mov rcx, qword [rax]
mov eax, dword [rcx + 0xc]
mov dword [rbp + 0x1a8], eax
mov eax, dword [rcx + 8]
mov dword [rbp + 0x1a0], eax
mov rax, qword [rbp - 8]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257d5d
cmp ecx, ebx
je 0x140257d9a
mov rax, qword [rbp - 8]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257d9a
mov r13, qword [rbp - 8]
movsxd rax, dword [r13 + 8]
lea rdi, [r13 + 0x10]
lea r14, [rax*8 + 0x10]
movsxd rax, dword [r13 + 0xc]
add r14, r13
lea rdi, [rdi + rax*8]
cmp rdi, r14
je 0x140257d92
sub rdi, 8
mov rcx, rdi
call fcn.140764090
cmp rdi, r14
jne 0x140257d81
mov rcx, r13
call fcn.1400d3dd0
mov eax, dword [rbp + 0x1a0]
cmp dword [rbp + 0x1a8], eax
je 0x140257e3a
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp]
call fcn.14050ceb0
mov rcx, qword [r12 + 8]
cmp byte [rcx + 0x220], 0
jne 0x140257de1
mov rcx, qword [rcx + 0x298]
mov rdx, rax
mov rcx, qword [rcx + 0x58]
mov rcx, qword [rcx + 0x30]
call fcn.1403f1080
mov rax, qword [rbp]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257dfd
cmp ecx, ebx
je 0x140257e3a
mov rax, qword [rbp]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257e3a
mov r13, qword [rbp]
movsxd rax, dword [r13 + 8]
lea rdi, [r13 + 0x10]
lea r14, [rax*8 + 0x10]
movsxd rax, dword [r13 + 0xc]
add r14, r13
lea rdi, [rdi + rax*8]
cmp rdi, r14
je 0x140257e32
sub rdi, 8
mov rcx, rdi
call fcn.140764090
cmp rdi, r14
jne 0x140257e21
mov rcx, r13
call fcn.1400d3dd0
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp + 0x110]
call fcn.14050c270
mov rdx, rax
mov rcx, r12
call fcn.1402600b0
lea rcx, [rbp + 0x110]
call fcn.140764090
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp + 8]
call fcn.14050c3e0
mov rcx, qword [rax]
mov eax, dword [rcx + 0xc]
mov dword [rbp + 0x1a8], eax
mov eax, dword [rcx + 8]
mov dword [rbp + 0x1a0], eax
mov rax, qword [rbp + 8]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257ea5
cmp ecx, ebx
je 0x140257f0a
mov rax, qword [rbp + 8]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257f0a
mov r13, qword [rbp + 8]
movsxd rax, dword [r13 + 0xc]
lea r14, [r13 + 0x10]
lea rdi, [rax*8 + 0x10]
movsxd rax, dword [r13 + 8]
add rdi, r13
lea r14, [r14 + rax*8]
cmp r14, rdi
je 0x140257f02
nop dword [rax]
mov rcx, qword [rdi - 8]
sub rdi, 8
mov eax, dword [rcx]
test eax, eax
je 0x140257eec
cmp eax, ebx
je 0x140257efd
lock add dword [rcx], ebx
setne al
test al, al
jne 0x140257efd
mov rcx, qword [rdi]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
cmp rdi, r14
jne 0x140257ed0
mov rcx, r13
call fcn.1400d3dd0
mov eax, dword [rbp + 0x1a0]
mov rcx, qword [r15 + 0x2c8]
cmp dword [rbp + 0x1a8], eax
je 0x140257fbf
lea rdx, [rbp + 0x10]
call fcn.14050c3e0
mov rdx, rax
mov rcx, r12
call fcn.140260810
mov rax, qword [rbp + 0x10]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257f5b
cmp ecx, ebx
je 0x140258049
mov rax, qword [rbp + 0x10]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140258049
mov r13, qword [rbp + 0x10]
movsxd rax, dword [r13 + 0xc]
lea r14, [r13 + 0x10]
lea rdi, [rax*8 + 0x10]
movsxd rax, dword [r13 + 8]
add rdi, r13
lea r14, [r14 + rax*8]
cmp r14, rdi
je 0x140257fb2
nop
mov rcx, qword [rdi - 8]
sub rdi, 8
mov eax, dword [rcx]
test eax, eax
je 0x140257f9c
cmp eax, ebx
je 0x140257fad
lock add dword [rcx], ebx
setne al
test al, al
jne 0x140257fad
mov rcx, qword [rdi]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
cmp rdi, r14
jne 0x140257f80
mov rcx, r13
call fcn.1400d3dd0
jmp 0x140258049
lea rdx, [rbp - 0x40]
call fcn.14050c410
mov rcx, qword [rax]
mov rax, qword [rbp - 0x40]
mov edi, dword [rcx + 0xc]
mov r14d, dword [rcx + 8]
mov ecx, dword [rax]
test ecx, ecx
je 0x140257fee
cmp ecx, ebx
je 0x140257ffb
mov rax, qword [rbp - 0x40]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140257ffb
mov rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x40]
call fcn.140030af0
cmp edi, r14d
je 0x140258049
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rsp + 0x50]
call fcn.14050c410
mov rdx, rax
mov rcx, r12
call fcn.140260aa0
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax]
test ecx, ecx
je 0x14025803a
cmp ecx, ebx
je 0x140258049
mov rax, qword [rsp + 0x50]
lock add dword [rax], ebx
setne al
test al, al
jne 0x140258049
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x50]
call fcn.140030af0
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp - 0x38]
call fcn.14050c2d0
mov rdx, rax
mov rcx, r12
call fcn.14025f3d0
mov rax, qword [rbp - 0x38]
mov r14, qword [rsp + 0x258]
mov r13, qword [rsp + 0x260]
mov ecx, dword [rax]
test ecx, ecx
je 0x140258090
cmp ecx, ebx
je 0x1402580a2
mov rax, qword [rbp - 0x38]
lock add dword [rax], ebx
setne al
test al, al
jne 0x1402580a2
mov rcx, qword [rbp - 0x38]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rbp - 0x30]
call fcn.14050c180
mov rcx, qword [r12 + 8]
mov rdx, rax
mov rcx, qword [rcx + 0x2c8]
call fcn.14050cc10
mov rax, qword [rbp - 0x30]
mov ecx, dword [rax]
test ecx, ecx
je 0x1402580e2
cmp ecx, ebx
je 0x1402580f4
mov rax, qword [rbp - 0x30]
lock add dword [rax], ebx
setne al
test al, al
jne 0x1402580f4
mov rcx, qword [rbp - 0x30]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rsp + 0x58]
call fcn.14050c240
mov rcx, qword [r12 + 8]
cmp byte [rcx + 0x220], 0
jne 0x140258130
cmp qword [rcx + 0x298], 0
je 0x140258130
mov rcx, qword [rcx + 0x298]
mov rdx, rax
mov rcx, qword [rcx + 0x18]
call fcn.140260500
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax]
test ecx, ecx
je 0x14025814e
cmp ecx, ebx
je 0x14025815d
mov rax, qword [rsp + 0x58]
lock add dword [rax], ebx
setne al
test al, al
jne 0x14025815d
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x58]
call fcn.140030af0
mov rcx, qword [r15 + 0x2c8]
lea rdx, [rsp + 0x60]
call fcn.14050c2a0
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 8]
mov ecx, dword [rax + 0xc]
sub ecx, edx
cmp ecx, 1
jne 0x1402581d6
add rax, 0x10
mov r8d, 0x7f00000
lea rcx, [rax + rdx*8]
lea rdx, [rbp - 0x28]
call fcn.140766830
mov rdx, rax
mov rcx, r12
call fcn.14025eda0
mov rax, qword [rbp - 0x28]
mov ecx, dword [rax]
test ecx, ecx
je 0x1402581bf
cmp ecx, ebx
je 0x1402581d1
mov rax, qword [rbp - 0x28]
lock add dword [rax], ebx
setne al
test al, al
jne 0x1402581d1
mov rcx, qword [rbp - 0x28]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.1406e4ad0
mov rax, qword [rsp + 0x60]
movsxd rdi, dword [rax + 0xc]
movsxd rbx, dword [rax + 8]
add rdi, 2
add rbx, 2
lea rdi, [rax + rdi*8]
lea rbx, [rax + rbx*8]
cmp rbx, rdi
je 0x140258207
mov rdx, rbx
mov rcx, r12
call fcn.14025f650
add rbx, 8
cmp rbx, rdi
jne 0x1402581f3
mov rcx, qword [r15 + 0x298]
mov rcx, qword [rcx + 0xb0]
call fcn.1402428b0
mov rcx, r15
call fcn.140253840
mov rcx, r15
call fcn.14025cd80
mov rax, qword [rbp - 0x20]
mov rdi, qword [rsp + 0x270]
mov rbx, qword [rsp + 0x280]
test eax, eax
js 0x140258252
cmp dword [rbp - 0x4c], 0
jl 0x140258252
mov qword [rbp - 0x50], rax
lea rax, [rbp - 0x50]
jmp 0x140258260
mov rax, qword [r12]
lea rdx, [rbp - 0x20]
mov rcx, r12
call qword [rax + 0x60]
mov rdx, rax
mov rcx, r12
call fcn.14020d870
mov edx, dword [rbp + 0x1b0]
mov rcx, r12
call fcn.140215490
lea rcx, [rsp + 0x60]
call fcn.14007a280
mov r12, qword [rsp + 0x268]
test rsi, rsi
je 0x14025829e
mov rax, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [rax + 0x18]
lea rcx, [rsp + 0x40]
call fcn.1404a4cc0
lea rcx, [rsp + 0x30]
call fcn.14007a280
mov rsi, qword [rsp + 0x278]
add rsp, 0x288
pop r15
pop rbp
ret