Function at 0x180129c40
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x1f8
mov rax, qword [rcx + 0x10]
xor ecx, ecx
mov rdi, rdx
mov dword [rsp + 0xd0], 2
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0xc8], rax
mov r8d, ecx
mov dword [rsp + 0x90], ecx
mov r11d, ecx
mov dword [rsp + 0xa4], ecx
mov dword [rsp + 0x78], ecx
mov dword [rsp + 0xa0], ecx
mov rbx, rcx
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x160], ecx
mov qword [rsp + 0xc0], rcx
mov dword [rsp + 0xd4], ecx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x98], rcx
mov rsi, rcx
mov qword [rsp + 0x138], rcx
mov r10, rcx
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x158], rcx
lea edx, [rcx + 1]
test rdi, rdi
jne 0x180129d16
test r9, r9
jne 0x180129d1c
xor eax, eax
add rsp, 0x1f8
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp dword [rdi + 8], 5
je 0x180129d26
mov edi, 0x80004005
jmp 0x18012d40d
mov rax, qword [rdi + 0x90]
mov qword [rsp + 0x60], rax
test rax, rax
jne 0x180129d40
lea rax, [rdi + 0x68]
mov qword [rsp + 0x60], rax
mov ebx, dword [rdi + 0x34]
mov dword [rsp + 0xb8], ecx
mov rcx, qword [rdi + 0x28]
imul ebx, dword [rdi + 0x30]
mov dword [rsp + 0x120], ebx
test rcx, rcx
je 0x180129e21
mov rax, rcx
test rax, rax
je 0x180129d76
cmp dword [rax + 8], 0xa
jne 0x180129d76
mov rax, qword [rax + 0x38]
jmp 0x180129d65
cmp dword [rax + 8], 5
sete al
test al, al
je 0x180129d8d
mov dword [rsp + 0xb8], edx
jmp 0x180129e21
test rcx, rcx
je 0x180129e21
test rcx, rcx
je 0x180129da7
cmp dword [rcx + 8], 0xa
jne 0x180129da7
mov rcx, qword [rcx + 0x38]
jmp 0x180129d96
cmp dword [rcx + 8], 7
sete al
test al, al
je 0x180129e21
mov rcx, qword [rdi + 0x28]
lea rdx, [rsp + 0x148]
mov rax, qword [rcx]
call qword [rax + 0x40]
test eax, eax
jne 0x180129e10
mov rax, qword [rsp + 0x148]
test rax, rax
je 0x180129e10
test rax, rax
je 0x180129de6
cmp dword [rax + 8], 0xa
jne 0x180129de6
mov rax, qword [rax + 0x38]
jmp 0x180129dd5
cmp dword [rax + 8], 5
sete al
test al, al
je 0x180129e10
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x180129e06
cmp dword [rax + 8], 0xa
jne 0x180129e06
mov rax, qword [rax + 0x38]
jmp 0x180129df5
mov eax, dword [rax + 0x38]
mov dword [rsp + 0xb8], eax
mov r9, qword [rsp + 0x238]
mov r11d, esi
mov r10, rsi
mov r8d, esi
mov rax, qword [rdi + 0x40]
test rax, rax
je 0x180129e4c
cmp dword [rax + 8], 5
jne 0x180129e4c
mov r8d, dword [rax + 0x34]
mov rsi, rax
mov qword [rsp + 0x138], rax
imul r8d, dword [rax + 0x30]
mov dword [rsp + 0x90], r8d
mov rcx, qword [rdi + 0x48]
mov dword [rsp + 0x148], r8d
test rcx, rcx
je 0x180129e7f
cmp dword [rcx + 8], 5
jne 0x180129e7f
mov r11d, dword [rcx + 0x34]
mov r10, rcx
mov qword [rsp + 0xb0], rcx
imul r11d, dword [rcx + 0x30]
mov dword [rsp + 0xa4], r11d
mov eax, dword [rdi + 0x38]
mov edx, dword [rsp + 0x240]
mov rbp, qword [rsp + 0x220]
mov dword [rsp + 0x130], edx
cmp eax, 0x1d
je 0x180129ffa
cmp eax, 0x20
jne 0x18012a119
test r9, r9
je 0x18012a1a2
test rcx, rcx
je 0x180129fa6
mov eax, dword [rcx + 8]
cmp eax, 6
jne 0x180129f03
cmp dword [rcx + 0x28], 2
jne 0x180129ef9
mov eax, 0xffffffff
cmp qword [rcx + 0x30], rax
ja 0x180129ef9
mov eax, dword [rcx + 0x30]
mov ebx, dword [rsp + 0x230]
xor ecx, ecx
lea r9d, [rdx + rax]
mov edi, ecx
lea r8d, [r9 + rbx - 1]
mov dword [rsp + 0xa0], r9d
jmp 0x180129fc5
mov edi, 0x80004005
jmp 0x180129fab
cmp eax, 1
jne 0x180129fa6
mov ebx, 0xffffffff
mov r9d, ebx
mov dword [rsp + 0xa0], ebx
mov r8d, ebx
test edx, edx
je 0x180129f2f
mov rax, rdx
sub rax, 1
mov rcx, qword [rcx + 0x18]
jne 0x180129f25
mov edi, dword [rsp + 0x230]
xor eax, eax
mov edx, eax
test edi, edi
je 0x180129f9f
nop
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x180129f9f
cmp dword [rax + 8], 6
jne 0x180129f9f
cmp dword [rax + 0x28], 2
jne 0x180129f9f
cmp qword [rax + 0x30], rbx
ja 0x180129f9f
cmp r9d, ebx
jne 0x180129f71
mov r8d, dword [rax + 0x30]
mov r9d, r8d
mov dword [rsp + 0xa0], r8d
jmp 0x180129f8a
mov eax, dword [rax + 0x30]
cmp eax, r9d
cmovb r9d, eax
cmp eax, r8d
cmova r8d, eax
mov dword [rsp + 0xa0], r9d
mov rcx, qword [rcx + 0x18]
inc edx
cmp edx, edi
jb 0x180129f40
cmp r9d, ebx
je 0x180129f9f
xor ecx, ecx
mov edi, ecx
jmp 0x180129fc5
mov edi, 0x80004005
jmp 0x180129fc3
mov edi, 0x80070057
mov r9d, dword [rsp + 0x220]
mov r8d, dword [rsp + 0x220]
mov dword [rsp + 0xa0], r9d
xor ecx, ecx
test edi, edi
js 0x18012d403
mov eax, dword [rsp + 0x230]
mov rdi, qword [rsp + 0x228]
sub r8d, r9d
inc r8d
mov edx, ecx
mov ebx, eax
mov dword [rsp + 0x90], r8d
mov dword [rsp + 0x120], eax
jmp 0x18012a122
test r9, r9
je 0x18012a1a2
test ebx, ebx
je 0x18012a119
test r10, r10
je 0x18012a119
test r8d, r8d
je 0x18012a119
cmp r11d, 1
jne 0x18012a119
xor eax, eax
lea r9, [rsp + 0x158]
mov r8d, r11d
mov dword [rsp + 0x28], eax
mov rdx, r10
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.180129c40
mov edi, eax
test eax, eax
js 0x18012a0b2
mov edi, 1
lea r9, [rsp + 0xe0]
lea r8, [rsp + 0x158]
mov edx, edi
mov rcx, rbp
call fcn.1801078c0
test eax, eax
js 0x18012a0ba
lea r9, [rsp + 0x128]
lea r8, [rsp + 0x88]
lea rdx, [rsp + 0xe0]
mov rcx, rbp
call fcn.1801379b0
test al, al
je 0x18012a0ba
mov rax, qword [rsp + 0x88]
cmp rax, qword [rsp + 0x128]
jne 0x18012a0ba
mov qword [rsp + 0x88], rax
xor eax, eax
mov edi, eax
test edi, edi
js 0x18012d403
mov r8d, dword [rsp + 0x90]
mov r10, qword [rsp + 0xb0]
xor ecx, ecx
mov r11d, ecx
mov dword [rsp + 0xa4], ecx
test edi, edi
jne 0x18012a16e
xor edx, edx
mov eax, r8d
div ebx
mov edx, dword [rsp + 0x240]
mov ecx, eax
mov rax, qword [rsp + 0x88]
cmp rax, rcx
jae 0x18012a111
mov edi, eax
mov r8d, ebx
mov dword [rsp + 0x90], ebx
imul edi, ebx
mov dword [rsp + 0xa0], edi
mov rdi, qword [rsp + 0x228]
xor ecx, ecx
mov eax, dword [rsp + 0x230]
cmp qword [rsp + 0x238], 0
je 0x18012a1a2
test edx, edx
jne 0x18012a135
cmp eax, ebx
jae 0x18012a1a2
cmp dword [rdi + 0x38], 0
mov r9d, ebx
mov dword [rsp + 0x78], ebx
jne 0x18012a1a7
cmp dword [rsp + 0xb8], 0
jne 0x18012a1a7
test rsi, rsi
je 0x18012a17f
cmp r8d, ebx
je 0x18012a17f
cmp r8d, 1
jne 0x18012a1a7
mov ebx, eax
mov dword [rsp + 0x120], eax
mov r9d, ecx
mov dword [rsp + 0x78], ecx
jmp 0x18012a1b4
mov edx, dword [rsp + 0x240]
mov rdi, qword [rsp + 0x228]
jmp 0x18012a11b
mov dword [rsp + 0xa0], edx
mov r8d, eax
mov dword [rsp + 0x90], eax
mov ebx, eax
mov dword [rsp + 0x120], eax
mov r9d, ecx
mov dword [rsp + 0x78], ecx
jmp 0x18012a1a7
mov r9d, dword [rsp + 0x78]
cmp r8d, 0x100000
ja 0x18012d3fe
cmp r11d, 0x100000
ja 0x18012d3fe
cmp r9d, 0x100000
ja 0x18012d3fe
mov edx, 8
test rsi, rsi
jne 0x18012a1e6
test r10, r10
jne 0x18012a1e6
test r9d, r9d
je 0x18012a2ca
lea ecx, [r8 + r8]
mov dword [rsp + 0x88], ecx
lea eax, [rcx + r9]
add eax, r11d
cmp eax, 0x1ffffffe
jbe 0x18012a20b
mov rdx, qword [rsp + 0x68]
mov edi, 0x80070216
jmp 0x18012a264
mov rcx, qword [rsp + 0x1e0]
shl eax, 3
test eax, eax
cmove eax, edx
add rcx, 0xd280
mov edx, eax
mov dword [rsp + 0x160], eax
call fcn.1800c58b0
mov ecx, dword [rsp + 0x88]
mov r8d, dword [rsp + 0x90]
mov r9d, dword [rsp + 0x78]
mov r11d, dword [rsp + 0xa4]
test rax, rax
mov rdx, rax
mov qword [rsp + 0x68], rax
mov edi, 0x8007000e
mov eax, 0
cmovne edi, eax
test edi, edi
js 0x18012d403
test rsi, rsi
je 0x18012a288
mov eax, r8d
mov qword [rsp + 0x80], rdx
lea rax, [rdx + rax*8]
mov qword [rsp + 0x150], rax
mov r10, qword [rsp + 0xb0]
test r10, r10
je 0x18012a2b8
cmp qword [rsp + 0x158], 0
je 0x18012a2aa
lea rax, [rsp + 0x158]
jmp 0x18012a2b0
mov eax, ecx
lea rax, [rdx + rax*8]
mov qword [rsp + 0x98], rax
test r9d, r9d
je 0x18012a2ca
lea eax, [rcx + r11]
lea rax, [rdx + rax*8]
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x228]
xor r9d, r9d
movsxd rax, dword [rdx + 0x38]
mov ecx, r9d
mov edi, r9d
mov dword [rsp + 0x128], r9d
mov dword [rsp + 0x88], r9d
mov dword [rsp + 0x78], ecx
cmp eax, 0x24
ja case.default.0x18012a31c
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax + 0x12d4cc]
mov ecx, dword [rcx + rax*4 + 0x12d4b8]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov edi, dword [rsp + 0x248]
mov ecx, r9d
and edi, 3
or edi, 4
mov dword [rsp + 0x128], edi
jmp case.default.0x18012a31c
mov edi, dword [rsp + 0x248]
mov ecx, r9d
mov dword [rsp + 0x128], edi
jmp case.default.0x18012a31c
mov edi, dword [rsp + 0x248]
mov dword [rsp + 0x88], 2
mov ecx, r9d
and edi, 3
mov dword [rsp + 0x128], edi
jmp case.default.0x18012a31c
mov ecx, dword [rsp + 0x248]
mov edi, 2
and ecx, 4
mov dword [rsp + 0x128], edi
mov dword [rsp + 0x78], ecx
cmp dword [rsp + 0xb8], r9d
jbe case.default.0x18012a31c
or ecx, 1
mov dword [rsp + 0x78], ecx
jmp case.default.0x18012a31c
mov ecx, edi
cmp byte [rdx + 0x50], r9b
je 0x18012a45a
test rsi, rsi
je 0x18012a3d5
mov eax, dword [rsp + 0xa0]
mov r9, qword [rsp + 0x80]
mov rdx, rsi
mov rcx, rbp
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call fcn.180129c40
mov edi, eax
test eax, eax
js 0x18012d403
mov eax, dword [rsp + 0x88]
test eax, eax
je 0x18012a419
test rsi, rsi
je 0x18012a419
mov r9, qword [rsp + 0x150]
mov r8d, dword [rsp + 0x90]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xa0]
mov rdx, rsi
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.180129c40
mov edi, eax
test eax, eax
js 0x18012d403
mov rdx, qword [rsp + 0xb0]
mov r9, qword [rsp + 0x98]
test rdx, rdx
je 0x18012a52c
lea rax, [rsp + 0x158]
cmp r9, rax
je 0x18012a52c
mov eax, dword [rsp + 0x78]
mov r8d, dword [rsp + 0xa4]
mov dword [rsp + 0x28], eax
xor eax, eax
jmp 0x18012a506
test r10, r10
je 0x18012a498
mov rax, qword [rsp + 0x98]
lea rdx, [rsp + 0x158]
cmp rax, rdx
je 0x18012a498
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r9d
mov r8d, r11d
mov r9, rax
mov rdx, r10
mov rcx, rbp
call fcn.180129c40
mov edi, eax
test eax, eax
js 0x18012d403
test rsi, rsi
je 0x18012a4d8
mov eax, dword [rsp + 0x128]
mov r9, qword [rsp + 0x80]
mov r8d, dword [rsp + 0x90]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xa0]
mov rdx, rsi
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.180129c40
mov edi, eax
test eax, eax
js 0x18012d403
mov eax, dword [rsp + 0x88]
test eax, eax
je 0x18012a51c
test rsi, rsi
je 0x18012a51c
mov r9, qword [rsp + 0x150]
mov r8d, dword [rsp + 0x90]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xa0]
mov rdx, rsi
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.180129c40
mov edi, eax
test eax, eax
js 0x18012d403
mov rdx, qword [rsp + 0xb0]
mov r9, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x228]
xor r11d, r11d
movsxd rax, dword [rdi + 0x38]
mov r10, r11
mov qword [rsp + 0x78], r11
mov r8, r11
mov qword [rsp + 0x88], r11
cmp eax, 0x2c
ja case.default.0x18012a56f
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x12d4f4]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
test rsi, rsi
je 0x18012a855
cmp qword [rsp + 0x70], r8
je 0x18012a994
mov ecx, dword [rsp + 0xb8]
test ecx, ecx
je 0x18012a5e6
mov rax, qword [rsi + 0x28]
mov rsi, qword [rsp + 0x70]
mov r9d, dword [rsp + 0xa0]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x90]
mov r8d, ecx
mov dword [rsp + 0x30], eax
mov rcx, rbp
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], ebx
call fcn.180127a50
mov edi, eax
test eax, eax
js 0x18012d403
jmp 0x18012a6cd
mov eax, dword [rsp + 0x90]
cmp eax, 1
jne 0x18012a62f
mov rsi, qword [rsp + 0x70]
test ebx, ebx
je 0x18012a6d8
mov rbp, qword [rsp + 0x80]
mov rcx, rsi
mov edx, ebx
nop dword [rax]
mov rax, qword [rbp]
add rcx, 8
sub rdx, 1
mov qword [rcx - 8], rax
jne 0x18012a610
mov rbp, qword [rsp + 0x220]
jmp 0x18012a6d8
cmp ebx, eax
je 0x18012a834
mov ecx, dword [rdi + 0x30]
cmp ecx, 1
jne 0x18012a647
cmp ebx, eax
jb 0x18012a834
cmp ecx, dword [rsi + 0x30]
ja 0x18012a816
mov eax, dword [rsi + 0x34]
cmp dword [rdi + 0x34], eax
ja 0x18012a816
mov esi, r11d
test ecx, ecx
je 0x18012a994
mov rbp, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x70]
nop word [rax + rax]
mov edi, dword [rdi + 0x34]
mov rcx, qword [rsp + 0x80]
mov eax, esi
imul eax, dword [rbp + 0x34]
lea rdx, [rcx + rax*8]
mov eax, edi
mov r8, rdi
shl r8, 3
imul eax, esi
lea rcx, [rbx + rax*8]
call sub.msvcrt.dll_memcpy
mov rdi, qword [rsp + 0x228]
inc esi
cmp esi, dword [rdi + 0x30]
jb 0x18012a680
mov ebx, dword [rsp + 0x120]
mov rbp, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x70]
mov r8, qword [rsp + 0x88]
mov r10, r8
mov rdi, qword [rsp + 0x60]
test ebx, ebx
je 0x18012a733
test r10, r10
je 0x18012a733
test r8, r8
je 0x18012a733
mov eax, dword [rsp + 0x248]
mov r9, r10
mov rdx, rdi
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r8
mov r8d, ebx
mov rcx, rbp
call fcn.180129830
mov edi, eax
test eax, eax
js 0x18012d403
test rsi, rsi
je 0x18012d3e0
mov rdx, qword [rsp + 0x78]
mov r8d, ebx
mov rcx, rsi
shl r8, 3
call sub.msvcrt.dll_memcpy
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012d3e0
mov edi, dword [rsp + 0x128]
test dil, 3
jne 0x18012a784
test ebx, ebx
je 0x18012a784
test byte [rsp + 0x248], 4
jne 0x18012a784
mov rdx, qword [rsp + 0x60]
mov r9, rsi
mov r8, rsi
mov rcx, rbp
mov dword [rsp + 0x20], ebx
call fcn.180102660
mov edi, eax
test eax, eax
js 0x18012d403
mov edi, dword [rsp + 0x128]
mov rcx, qword [rsp + 0x238]
cmp rsi, rcx
je 0x18012a7b7
mov eax, dword [rsp + 0x130]
mov ebx, dword [rsp + 0x230]
mov r8, rbx
lea rdx, [rsi + rax*8]
shl r8, 3
call sub.msvcrt.dll_memcpy
mov rsi, qword [rsp + 0x238]
test rsi, rsi
je 0x18012d3e0
mov rcx, qword [rsp + 0x228]
cmp dword [rcx + 0x38], 2
je 0x18012d3e0
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012d3ba
test byte [rsp + 0x248], 4
jne 0x18012d3e0
mov eax, dword [rsp + 0x130]
mov rdx, rcx
mov r9, rsi
mov r8d, ebx
mov rcx, rbp
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call fcn.180127d10
jmp 0x18012d3da
lea r9, [0x180044740]
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
call fcn.180109730
mov edi, 0x80004005
jmp 0x18012d403
mov rsi, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x80]
mov r8d, ebx
mov rcx, rsi
shl r8, 3
call sub.msvcrt.dll_memcpy
jmp 0x18012a6cd
mov eax, dword [rsp + 0xa0]
mov rsi, qword [rsp + 0x70]
mov r8d, dword [rsp + 0xb8]
mov rdx, qword [rdi + 0x40]
mov dword [rsp + 0x28], eax
mov r9, rsi
mov rcx, rbp
mov dword [rsp + 0x20], ebx
call fcn.180105e20
mov edi, eax
test eax, eax
js 0x18012d403
jmp 0x18012a6cd
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
movsxd rdi, dword [rsp + 0x90]
test edi, edi
je 0x18012a8e9
mov rbx, qword [rsp + 0x80]
mov rcx, rsi
mov edx, edi
sub rbx, rsi
nop word [rax + rax]
mov rax, qword [rbx + rcx]
add rcx, 8
sub rdx, 1
mov qword [rcx - 8], rax
jne 0x18012a8d0
mov ebx, dword [rsp + 0x120]
mov edx, dword [rsp + 0xa4]
test edx, edx
je 0x18012a6d8
lea rcx, [rsi + rdi*8]
nop dword [rax]
mov rax, qword [r9]
add rcx, 8
add r9, 8
sub rdx, 1
mov qword [rcx - 8], rax
jne 0x18012a900
jmp 0x18012a6d8
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
test ebx, ebx
je 0x18012a733
mov rdi, qword [rsp + 0x80]
mov rax, qword [rdi]
test rax, rax
je 0x18012a994
mov rcx, qword [rax + 0xa8]
mov rax, qword [rbp + 0x10]
cmp qword [rax + 0xd038], rcx
je 0x18012a963
mov eax, dword [rcx + 0x10]
shr rax, 0x1b
test al, 1
je 0x18012a994
mov edx, r11d
test ebx, ebx
je 0x18012a989
mov rcx, rdi
mov r8d, 0xffffffff
mov rax, qword [rcx]
cmp dword [rax + 0xdc], r8d
je 0x18012a99e
inc edx
add rcx, 8
cmp edx, ebx
jb 0x18012a973
mov r10, rdi
mov qword [rsp + 0x78], rdi
mov r8, r9
mov rsi, qword [rsp + 0x70]
jmp 0x18012a6d8
lea r9, [0x1800446c0]
xor r8d, r8d
jmp 0x18012a81d
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
test ebx, ebx
je 0x18012a733
mov rbp, qword [rsp + 0x80]
mov edx, r11d
mov rdi, r11
mov dword [rsp + 0x88], edx
nop dword [rax]
mov rsi, qword [rbp]
mov rax, qword [rsi + 0x108]
test rax, rax
je 0x18012aa3a
cmp dword [rax + 8], 2
je 0x18012aa01
test rax, rax
je 0x18012aa3a
cmp dword [rax + 8], 3
jne 0x18012aa3a
cmp rax, rdi
je 0x18012aa3a
mov rcx, qword [rsp + 0x220]
mov r8, rax
mov rdx, rsi
mov qword [rsp + 0x138], rax
call fcn.180127940
mov edi, eax
test eax, eax
js 0x18012d403
mov edx, dword [rsp + 0x88]
mov rdi, qword [rsp + 0x138]
mov eax, 0xffffffff
cmp dword [rsi + 0xdc], eax
jne 0x18012aa5a
mov rax, qword [rsi + 0xa8]
mov ecx, dword [rax + 0x10]
shr rcx, 0x1b
test cl, 1
je 0x18012aa96
inc edx
add rbp, 8
mov dword [rsp + 0x88], edx
cmp edx, ebx
jb 0x18012a9e0
mov r10, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x220]
mov r8, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x70]
mov qword [rsp + 0x78], r10
jmp 0x18012a6d8
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x220]
lea r9, [0x1800446c0]
xor r8d, r8d
call fcn.180109730
mov edi, 0x80004005
jmp 0x18012d403
test rsi, rsi
je 0x18012a82a
lea edx, [rbx + rbx]
lea rcx, [rsp + 0xc0]
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r8, qword [rsp + 0xc0]
xor esi, esi
lea rdi, [rsp + 0x138]
lea ebp, [rsi + 2]
mov edx, esi
nop word [rax + rax]
mov eax, edx
add rdi, 8
add edx, ebx
sub rbp, 1
lea rcx, [r8 + rax*8]
mov qword [rdi - 8], rcx
jne 0x18012ab00
mov r10, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x220]
mov r11, qword [rsp + 0x80]
test ebx, ebx
je 0x18012ab62
mov rdi, r10
mov r9d, ebx
nop dword [rax + rax]
mov rax, qword [r11]
mov rcx, rbp
mov edx, dword [rax + 0xa4]
call fcn.1801066c0
add rdi, 8
sub r9, 1
mov rcx, qword [rax]
mov qword [rdi - 8], rcx
jne 0x18012ab40
mov r9, qword [rsp + 0x138]
mov qword [rsp + 0x88], r9
test ebx, ebx
je 0x18012ab82
mov ecx, ebx
mov rdi, r9
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], esi
mov r8d, ebx
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], r10
and r8d, 0xfffff
mov rcx, rbp
mov qword [rsp + 0x20], r11
bts r8d, 0x1d
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r10, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x70]
mov r8, qword [rsp + 0x88]
mov qword [rsp + 0x78], r10
jmp 0x18012a6d8
test rsi, rsi
je 0x18012a82a
lea edx, [rbx + rbx]
lea rcx, [rsp + 0xc0]
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r8, qword [rsp + 0xc0]
xor esi, esi
lea rdi, [rsp + 0x138]
lea ebp, [rsi + 2]
mov edx, esi
nop dword [rax]
mov eax, edx
add rdi, 8
add edx, ebx
sub rbp, 1
lea rcx, [r8 + rax*8]
mov qword [rdi - 8], rcx
jne 0x18012ac20
mov r10, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x220]
mov r11, qword [rsp + 0x80]
test ebx, ebx
je 0x18012ab62
mov rdi, r10
mov r9d, ebx
nop dword [rax]
mov rax, qword [r11]
mov rcx, rbp
mov edx, dword [rax + 0xa4]
call fcn.180106750
add rdi, 8
sub r9, 1
mov rcx, qword [rax]
mov qword [rdi - 8], rcx
jne 0x18012ac60
jmp 0x18012ab62
test rsi, rsi
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012ad0f
test ebx, ebx
je 0x18012acbb
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x13300000
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], r11
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9, rsi
mov rcx, rbp
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
jmp 0x18012a6cd
lea edx, [rbx + rbx]
lea rcx, [rsp + 0xc0]
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r8, qword [rsp + 0xc0]
lea eax, [rbx + rbx]
test eax, eax
je 0x18012ad44
mov ecx, eax
mov rdi, r8
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
xor eax, eax
lea rdi, [rsp + 0x138]
lea ebp, [rax + 2]
mov edx, eax
nop word [rax + rax]
mov eax, edx
add rdi, 8
add edx, ebx
sub rbp, 1
lea rcx, [r8 + rax*8]
mov qword [rdi - 8], rcx
jne 0x18012ad60
mov rbp, qword [rsp + 0x220]
test ebx, ebx
je 0x18012ad8e
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rsp + 0x80]
mov r9, qword [rsp + 0x140]
mov r8, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call fcn.180103260
mov edi, eax
test eax, eax
js 0x18012d403
mov dword [rsp + 0x40], 0x11
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x21900000
xor eax, eax
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0x60]
mov r9, rsi
mov rcx, rbp
call fcn.18012ed20
mov edi, eax
test eax, eax
jns 0x18012a6cd
jmp 0x18012d403
test rsi, rsi
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012ae4a
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x10400000
jmp 0x18012accc
test rsi, rsi
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012ae87
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
bts r8d, 0x1c
jmp 0x18012accc
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012aecb
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
bts r8d, 0x1d
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], r9
jmp 0x18012ace3
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
lea rcx, [rsp + 0xc0]
mov edx, ebx
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov rdx, qword [rsp + 0xc0]
test ebx, ebx
je 0x18012af56
or rax, 0xffffffffffffffff
mov ecx, ebx
mov rdi, rdx
rep stosq qword [rdi], rax
test ebx, ebx
je 0x18012af56
mov ecx, ebx
mov rdi, rsi
or rax, rax
rep stosq qword [rdi], rax
mov rcx, qword [rsp + 0x98]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov r9, rdx
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov esi, ebx
mov rcx, rbp
and esi, 0xfffff
mov r8d, esi
or r8d, 0x10400000
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
bts esi, 0x1d
mov r8, qword [rsp + 0xc0]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], r8
mov r9, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov r8d, esi
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
jns 0x18012a6c8
jmp 0x18012d403
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012b02c
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], r9
mov r8d, ebx
mov rcx, rbp
mov r9, rsi
and r8d, 0xfffff
test byte [rax + 0xcefb], 0x10
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
je 0x18012b07e
or r8d, 0x21a00000
jmp 0x18012acfb
or r8d, 0x21800000
jmp 0x18012acfb
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012b0ba
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov r8d, ebx
and r8d, 0xfffff
test byte [rax + 0xcefb], 0x10
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov r9, rsi
mov rcx, rbp
je 0x18012b07e
or r8d, 0x21a00000
jmp 0x18012acfb
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012b140
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov r8d, ebx
and r8d, 0xfffff
test byte [rax + 0xcefb], 0x10
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov r9, rsi
mov rcx, rbp
je 0x18012b192
or r8d, 0x21e00000
jmp 0x18012acfb
or r8d, 0x21900000
jmp 0x18012acfb
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012b1ce
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], r9
mov r8d, ebx
mov rcx, rbp
mov r9, rsi
and r8d, 0xfffff
test byte [rax + 0xcefb], 0x10
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
je 0x18012b192
or r8d, 0x21e00000
jmp 0x18012acfb
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012b277
test ebx, ebx
je 0x18012b261
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x22200000
jmp 0x18012aeda
lea edx, [rbx*4]
lea rcx, [rsp + 0xc0]
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xc0]
lea eax, [rbx*4]
test eax, eax
je 0x18012b2b4
mov ecx, eax
mov rdi, r9
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
xor r10d, r10d
lea r8, [rsp + 0xe0]
lea edx, [r10 + 4]
mov edi, r10d
nop word [rax + rax]
mov eax, edi
add r8, 8
add edi, ebx
sub rdx, 1
lea rcx, [r9 + rax*8]
mov qword [r8 - 8], rcx
jne 0x18012b2d0
test ebx, ebx
je 0x18012b2f6
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rcx, qword [rsp + 0x98]
mov r9, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r10d
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
mov esi, ebx
and esi, 0xfffff
mov rcx, rbp
mov r8d, esi
or r8d, 0x10400000
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe0]
mov r8d, esi
mov rcx, rbp
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x80]
bts r8d, 0x1d
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov rax, qword [rsp + 0xe8]
mov r9, qword [rsp + 0xf8]
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call fcn.180103260
mov edi, eax
test eax, eax
js 0x18012d403
mov dword [rsp + 0x40], 0x11
or esi, 0x21900000
xor eax, eax
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xf8]
jmp 0x18012afd3
test rsi, rsi
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
jne 0x18012acab
mov rdx, qword [rsp + 0x60]
lea r9, [0x180044778]
mov r8d, 0xdcf
mov rcx, rbp
mov edi, 0x80004001
call fcn.180109730
jmp 0x18012d403
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012b432
test ebx, ebx
je 0x18012b493
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], r9
mov r8d, ebx
mov r9, rsi
mov rcx, rbp
and r8d, 0xfffff
mov qword [rsp + 0x20], rax
or r8d, 0x23000000
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
xor r10d, r10d
mov esi, r10d
test ebx, ebx
je 0x18012d3ad
mov rax, qword [rsp + 0x98]
mov edi, 0x80000000
movabs r8, 0xffffffff00000000
nop word [rax + rax]
mov rax, qword [rax]
cmp qword [rax + 0x150], 0
je 0x18012b5e4
mov rdx, qword [rax + 0x148]
mov rcx, qword [rax + 0x150]
movsxd rax, dword [rax + 0xa4]
lea r9, [0x180000000]
mov eax, dword [r9 + rax*4 + 0x27d20]
and eax, 0xf
cmp al, 3
jne 0x18012b576
test rdi, rcx
je 0x18012b56a
mov edx, edx
mov rax, rdx
and rax, rdi
neg rax
sbb rax, rax
and rax, r8
or rdx, rax
or rcx, r8
jmp 0x18012b576
and edx, 0x7fffffff
and ecx, 0x7fffffff
and cl, 0x1f
cmp cl, 0x1f
jne 0x18012b5e4
test cl, dl
jne 0x18012b5e4
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x80]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r10d
mov eax, esi
mov qword [rsp + 0x30], r10
lea rcx, [rcx + rax*8]
lea r9, [rdx + rax*8]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
mov r8d, 0x10000001
mov rcx, rbp
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov edi, 0x80000000
movabs r8, 0xffffffff00000000
xor r10d, r10d
mov rax, qword [rsp + 0x98]
inc esi
add rax, 8
mov qword [rsp + 0x98], rax
cmp esi, ebx
jb 0x18012b510
jmp 0x18012a6c8
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012b432
test ebx, ebx
je 0x18012b648
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], r9
mov r8d, ebx
mov r9, rsi
mov rcx, rbp
and r8d, 0xfffff
mov qword [rsp + 0x20], rax
or r8d, 0x23100000
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
xor r10d, r10d
mov esi, r10d
test ebx, ebx
je 0x18012d3ad
mov rax, qword [rsp + 0x98]
mov edi, 0x80000000
movabs r8, 0xffffffff00000000
nop dword [rax]
mov rax, qword [rax]
cmp qword [rax + 0x150], 0
je 0x18012b794
mov rdx, qword [rax + 0x148]
mov rcx, qword [rax + 0x150]
movsxd rax, dword [rax + 0xa4]
lea r9, [0x180000000]
mov eax, dword [r9 + rax*4 + 0x27d20]
and eax, 0xf
cmp al, 3
jne 0x18012b726
test rdi, rcx
je 0x18012b71a
mov edx, edx
mov rax, rdx
and rax, rdi
neg rax
sbb rax, rax
and rax, r8
or rdx, rax
or rcx, r8
jmp 0x18012b726
and edx, 0x7fffffff
and ecx, 0x7fffffff
and cl, 0x1f
cmp cl, 0x1f
jne 0x18012b794
test cl, dl
jne 0x18012b794
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x80]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r10d
mov eax, esi
mov qword [rsp + 0x30], r10
lea rcx, [rcx + rax*8]
lea r9, [rdx + rax*8]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
mov r8d, 0x10000001
mov rcx, rbp
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov edi, 0x80000000
movabs r8, 0xffffffff00000000
xor r10d, r10d
mov rax, qword [rsp + 0x98]
inc esi
add rax, 8
mov qword [rsp + 0x98], rax
cmp esi, ebx
jb 0x18012b6c0
jmp 0x18012a6c8
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012b432
test ebx, ebx
je 0x18012b7f8
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x22d00000
jmp 0x18012aeda
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012b432
test ebx, ebx
je 0x18012b84f
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x22e00000
jmp 0x18012aeda
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012b432
test ebx, ebx
je 0x18012b8a6
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x22f00000
jmp 0x18012aeda
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012b90f
test ebx, ebx
je 0x18012b8f9
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x22600000
jmp 0x18012aeda
lea edx, [rbx*4]
lea rcx, [rsp + 0xc0]
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xc0]
lea eax, [rbx*4]
test eax, eax
je 0x18012b94c
mov ecx, eax
mov rdi, r9
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
xor r10d, r10d
lea r8, [rsp + 0xe0]
lea edx, [r10 + 4]
mov edi, r10d
nop
mov eax, edi
add r8, 8
add edi, ebx
sub rdx, 1
lea rcx, [r9 + rax*8]
mov qword [r8 - 8], rcx
jne 0x18012b960
test ebx, ebx
je 0x18012b986
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rcx, qword [rsp + 0x98]
mov r9, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r10d
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rcx
mov esi, ebx
and esi, 0xfffff
mov rcx, rbp
mov r8d, esi
or r8d, 0x10400000
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe0]
mov r8d, esi
mov rcx, rbp
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x80]
bts r8d, 0x1d
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov rax, qword [rsp + 0xe8]
mov r9, qword [rsp + 0xf8]
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call fcn.180103260
mov edi, eax
test eax, eax
js 0x18012d403
mov dword [rsp + 0x40], 0x11
or esi, 0x21800000
xor eax, eax
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xf8]
jmp 0x18012afd3
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012bb69
mov r10, qword [rsp + 0x80]
mov edx, r11d
test ebx, ebx
je 0x18012bb16
mov rdi, r10
mov rcx, r9
sub rdi, r9
mov rax, qword [rdi + rcx]
cmp dword [rax + 0xa4], r8d
jne 0x18012bb45
mov rax, qword [rcx]
cmp dword [rax + 0xa4], r8d
jne 0x18012bb45
inc edx
add rcx, 8
cmp edx, ebx
jb 0x18012bae3
test ebx, ebx
je 0x18012bb16
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov dword [rsp + 0x40], r11d
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov r8d, ebx
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r10
and r8d, 0xfffff
or r8d, 0x22d00000
jmp 0x18012ae04
mov rdx, qword [rsp + 0x60]
lea r9, [0x1800447b0]
mov r8d, 0xf3c
mov rcx, rbp
mov edi, 0x80004005
call fcn.180109730
jmp 0x18012d403
mov esi, r11d
test ebx, ebx
je 0x18012bd2e
mov rax, qword [rsp + 0x80]
mov rdi, r9
sub rax, r9
mov qword [rsp + 0x220], rax
nop word [rax + rax]
mov rcx, qword [rdi + rax]
call fcn.18010a000
test al, al
je 0x18012bbdc
mov rcx, qword [rdi]
call fcn.18010a000
test al, al
je 0x18012bbdc
mov rax, qword [rsp + 0x220]
inc esi
add rdi, 8
cmp esi, ebx
jb 0x18012bb90
xor r11d, r11d
test ebx, ebx
je 0x18012bd2e
mov rsi, qword [rsp + 0x70]
mov ecx, ebx
or rax, 0xffffffffffffffff
mov rdi, rsi
rep stosq qword [rdi], rax
jmp 0x18012bd33
lea esi, [rbx + rbx*2]
lea rcx, [rsp + 0xc0]
mov edx, esi
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xc0]
test esi, esi
je 0x18012bc10
mov ecx, esi
mov rdi, r9
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
xor r10d, r10d
lea r8, [rsp + 0xe0]
lea edx, [r10 + 3]
mov edi, r10d
nop word [rax + rax]
mov eax, edi
add r8, 8
add edi, ebx
sub rdx, 1
lea rcx, [r9 + rax*8]
mov qword [r8 - 8], rcx
jne 0x18012bc30
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x60]
or rax, 0xffffffffffffffff
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r10d
mov qword [rsp + 0x30], r10
mov rdi, rsi
mov ecx, ebx
rep stosq qword [rdi], rax
mov rcx, qword [rsp + 0x98]
mov eax, ebx
and eax, 0xfffff
mov qword [rsp + 0x28], rcx
mov rcx, rbp
mov r8d, eax
mov dword [rsp + 0x220], eax
mov rax, qword [rsp + 0x80]
or r8d, 0x20400000
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov rax, qword [rsp + 0xe0]
mov r9, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call fcn.180103260
mov edi, eax
test eax, eax
js 0x18012d403
mov r8d, dword [rsp + 0x220]
mov dword [rsp + 0x40], 0x11
or r8d, 0x21800000
xor eax, eax
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xf0]
jmp 0x18012adff
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], 0x20000032
mov r8d, ebx
mov qword [rsp + 0x30], r11
and r8d, 0xfffff
mov qword [rsp + 0x28], rcx
or r8d, 0x20400000
jmp 0x18012adff
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012be46
mov r10, qword [rsp + 0x80]
mov edx, r11d
test ebx, ebx
je 0x18012bdf3
mov rdi, r10
mov rcx, r9
sub rdi, r9
nop dword [rax]
mov rax, qword [rcx + rdi]
cmp dword [rax + 0xa4], r8d
jne 0x18012be22
mov rax, qword [rcx]
cmp dword [rax + 0xa4], r8d
jne 0x18012be22
inc edx
add rcx, 8
cmp edx, ebx
jb 0x18012bdc0
test ebx, ebx
je 0x18012bdf3
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov dword [rsp + 0x40], r11d
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov r8d, ebx
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r10
and r8d, 0xfffff
or r8d, 0x22e00000
jmp 0x18012ae04
mov rdx, qword [rsp + 0x60]
lea r9, [0x1800447e0]
mov r8d, 0xf3d
mov rcx, rbp
mov edi, 0x80004005
call fcn.180109730
jmp 0x18012d403
lea edx, [rbx*4]
lea rcx, [rsp + 0xc0]
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xc0]
lea eax, [rbx*4]
test eax, eax
je 0x18012be83
mov ecx, eax
mov rdi, r9
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
xor eax, eax
lea r8, [rsp + 0xe0]
lea edx, [rax + 4]
mov edi, eax
nop word [rax + rax]
mov eax, edi
add r8, 8
add edi, ebx
sub rdx, 1
lea rcx, [r9 + rax*8]
mov qword [r8 - 8], rcx
jne 0x18012bea0
test ebx, ebx
je 0x18012bec6
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x60]
mov r8, qword [rsp + 0xe0]
mov rdx, rsi
xor r9d, r9d
mov rcx, rbp
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call fcn.180103260
mov edi, eax
test eax, eax
js 0x18012d403
mov rcx, qword [rsp + 0x98]
mov r8, qword [rsp + 0xe8]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov rdx, rsi
mov rcx, rbp
call fcn.180103260
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], 0x20000002
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe8]
mov esi, ebx
mov rcx, rbp
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xe0]
and esi, 0xfffff
mov r8d, esi
mov qword [rsp + 0x20], rax
bts r8d, 0x1d
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], 0x20000004
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xf0]
mov r8d, esi
or r8d, 0x10400000
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18012ed20
jmp 0x18012ba5d
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012c00a
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x20400000
jmp 0x18012aeda
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012c073
test ebx, ebx
je 0x18012c05d
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x20800000
jmp 0x18012aeda
lea rcx, [rsp + 0xc0]
mov edx, ebx
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov rdx, qword [rsp + 0xc0]
test ebx, ebx
je 0x18012c0b3
or rax, 0xffffffffffffffff
mov ecx, ebx
mov rdi, rdx
rep stosq qword [rdi], rax
test ebx, ebx
je 0x18012c0b3
mov ecx, ebx
mov rdi, rsi
or rax, rax
rep stosq qword [rdi], rax
mov rcx, qword [rsp + 0x98]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov r9, rdx
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov esi, ebx
mov rcx, rbp
and esi, 0xfffff
mov r8d, esi
or r8d, 0x10700000
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
or esi, 0x20400000
jmp 0x18012afab
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
lea edx, [rbx*8]
lea rcx, [rsp + 0xc0]
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r8, qword [rsp + 0xc0]
lea eax, [rbx*8]
test eax, eax
je 0x18012c16c
mov ecx, eax
mov rdi, r8
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
xor r9d, r9d
lea rdi, [rsp + 0xe0]
lea ebp, [r9 + 8]
mov edx, r9d
nop
mov eax, edx
add rdi, 8
add edx, ebx
sub rbp, 1
lea rcx, [r8 + rax*8]
mov qword [rdi - 8], rcx
jne 0x18012c180
mov rbp, qword [rsp + 0x220]
test ebx, ebx
je 0x18012c1ae
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012c51b
mov rcx, qword [rsp + 0x228]
lea r8, [rsp + 0x170]
xor edx, edx
mov rcx, qword [rcx + 0x28]
mov rax, qword [rcx]
call qword [rax + 0x60]
test al, al
je 0x18012c4e5
movsxd rax, dword [rsp + 0x174]
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x26b00]
bt ecx, 9
jae 0x18012c4e5
and cl, 0xf
cmp cl, 4
je 0x18012c4e5
mov r9, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x30], rcx
mov rcx, qword [rsp + 0x98]
mov esi, ebx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x80]
and esi, 0xfffff
mov eax, esi
mov qword [rsp + 0x20], rcx
mov rcx, rbp
or eax, 0x20400000
mov r8d, eax
mov dword [rsp + 0x220], eax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0xe0]
mov eax, esi
or eax, 0x10400000
mov qword [rsp + 0x20], rcx
mov rcx, rbp
mov r8d, eax
mov dword [rsp + 0x148], eax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe8]
mov r8d, esi
mov rcx, rbp
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xe0]
or r8d, 0x21e00000
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xf8]
mov r8d, dword [rsp + 0x148]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov rcx, rbp
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
test ebx, ebx
je 0x18012c3b4
mov rax, qword [rsp + 0xf0]
mov r9, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18016e410
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], 0xc0
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x100]
mov r8d, esi
or r8d, 0x10700000
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0x110]
mov r8d, dword [rsp + 0x220]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov rcx, rbp
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], 0x20000002
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x110]
or esi, 0x10a00000
mov r8d, esi
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov rsi, qword [rsp + 0x70]
mov r8d, dword [rsp + 0x220]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x100]
jmp 0x18012adff
mov dword [rsp + 0x40], 0x11
mov r8d, ebx
and r8d, 0xfffff
or r8d, 0x20c00000
xor eax, eax
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x28], rax
jmp 0x18012ace3
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r9d
mov qword [rsp + 0x30], r9
mov r9, qword [rsp + 0xe0]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x80]
mov esi, ebx
mov qword [rsp + 0x20], rcx
and esi, 0xfffff
mov rcx, rbp
mov eax, esi
or eax, 0x20400000
mov r8d, eax
mov dword [rsp + 0x220], eax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0xe0]
mov eax, esi
or eax, 0x10400000
mov qword [rsp + 0x20], rcx
mov rcx, rbp
mov r8d, eax
mov dword [rsp + 0x148], eax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe8]
mov r8d, esi
mov rcx, rbp
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xe0]
or r8d, 0x21900000
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xf8]
mov r8d, dword [rsp + 0x148]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov rcx, rbp
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
test ebx, ebx
je 0x18012c6bf
mov rax, qword [rsp + 0xf0]
mov r9, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18016e410
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], 0xc0
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x100]
mov r8d, esi
or r8d, 0x10700000
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0x110]
mov r8d, dword [rsp + 0x220]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov rcx, rbp
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], 0x20000002
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x110]
or esi, 0x10a00000
mov r8d, esi
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov rsi, qword [rsp + 0x70]
mov r8d, dword [rsp + 0x220]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x100]
jmp 0x18012adff
test rdx, rdx
je 0x18012a82a
mov eax, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x60]
shl rax, 3
sub rcx, rax
mov eax, dword [rsp + 0x248]
mov dword [rsp + 0x40], eax
mov rax, qword [rsi + 0x28]
mov rsi, qword [rsp + 0x70]
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x148]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov r9d, ebx
mov rcx, rbp
mov r8, rsi
call fcn.180137d80
jmp 0x18012ad00
test rdx, rdx
je 0x18012a82a
mov eax, dword [rsp + 0xa4]
mov rsi, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x148]
mov qword [rsp + 0x30], r9
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x80]
mov r9d, ebx
mov r8, rsi
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.18013cad0
jmp 0x18012ad00
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x60]
test rsi, rsi
je 0x18012a6dd
lea r9, [0x180044810]
mov r8d, 0xc35
mov rdx, rdi
mov rcx, rbp
call fcn.180109730
mov r8, qword [rsp + 0x88]
mov r10, r8
jmp 0x18012a6dd
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
cmp dword [rsp + 0x90], 1
lea rdx, [rbp + 0x88]
jne 0x18012a82a
mov rdi, qword [rsp + 0x80]
mov rax, qword [rdi]
mov ecx, dword [rax + 0xa4]
cmp ecx, 0x17
jl 0x18012c92e
cmp ecx, 0x1b
jle 0x18012c9c4
cmp ecx, 0x39
jle 0x18012c92e
cmp ecx, 0x3e
jle 0x18012c9d5
cmp ebx, 1
jne 0x18012a82a
mov r8d, 0x68300001
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], rdx
mov rdx, qword [rsp + 0x60]
lea r9, [rsp + 0xe0]
mov rcx, rbp
mov qword [rsp + 0xe0], 0xffffffffffffffff
mov qword [rsp + 0xe8], 0xffffffffffffffff
mov qword [rsp + 0xf0], 0xffffffffffffffff
mov qword [rsp + 0xf8], 0xffffffffffffffff
mov qword [rsp + 0x20], rdi
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov r8d, ebx
lea rdx, [rsp + 0xe0]
mov rcx, rsi
shl r8, 3
call sub.msvcrt.dll_memcpy
jmp 0x18012a6cd
cmp dword [rsp + 0xa4], 1
jne 0x18012a82a
mov rdx, r9
mov r8d, 0x68200001
jmp 0x18012c93d
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
cmp ebx, 1
jne 0x18012a82a
cmp dword [rsp + 0x90], ebx
jne 0x18012a82a
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], r11
lea rax, [rbp + 0xa8]
lea r9, [rsp + 0xe0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x80]
mov r8d, 0x68200001
mov rcx, rbp
mov qword [rsp + 0xe0], 0xffffffffffffffff
mov qword [rsp + 0xe8], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov qword [rsp + 0xf0], 0xffffffffffffffff
mov qword [rsp + 0xf8], 0xffffffffffffffff
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
mov rax, qword [rsp + 0xf8]
mov qword [rsi], rax
jmp 0x18012a733
test rsi, rsi
je 0x18012a82a
mov rdx, qword [rdi + 0x48]
test rdx, rdx
je 0x18012a82a
mov eax, dword [rdx + 8]
cmp eax, 6
jne 0x18012caf5
cmp dword [rdx + 0x28], 2
jne 0x18012a82a
mov eax, 0xffffffff
cmp qword [rdx + 0x30], rax
ja 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov rdx, qword [rsp + 0x80]
mov r8d, ebx
mov rcx, rsi
shl r8, 3
call sub.msvcrt.dll_memcpy
jmp 0x18012a6cd
cmp eax, 1
jne 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
mov eax, dword [rsp + 0x130]
test eax, eax
je 0x18012cb2a
nop word [rax + rax]
sub rax, 1
mov rdx, qword [rdx + 0x18]
jne 0x18012cb20
test ebx, ebx
je 0x18012a6d8
mov r9d, dword [rsp + 0xa0]
mov rdi, rsi
nop dword [rax]
mov rax, qword [rdx + 0x10]
test rax, rax
je 0x18012a82a
cmp dword [rax + 8], 6
jne 0x18012a82a
cmp dword [rax + 0x28], 2
jne 0x18012a82a
mov ecx, 0xffffffff
cmp qword [rax + 0x30], rcx
ja 0x18012a82a
mov eax, dword [rax + 0x30]
mov rcx, qword [rsp + 0x80]
inc r8d
sub eax, r9d
add rdi, 8
mov rcx, qword [rcx + rax*8]
mov qword [rdi - 8], rcx
mov rdx, qword [rdx + 0x18]
cmp r8d, ebx
jb 0x18012cb40
mov r8, r10
jmp 0x18012a6d8
test rsi, rsi
je 0x18012a82a
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x18012a82a
cmp dword [rax + 8], 5
jne 0x18012a82a
cmp dword [rsp + 0x90], 4
jne 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
test ebx, ebx
je 0x18012a733
mov rcx, qword [rsp + 0x80]
mov edx, 4
lea r9, [rsp + 0xe0]
mov rax, qword [rcx]
mov dword [rsp + 0x20], edx
xor edx, edx
mov qword [rsp + 0xe0], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0xe8], rax
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xf0], rax
mov rax, qword [rcx + 0x18]
mov rcx, rbp
mov qword [rsp + 0xf8], rax
call fcn.1801070d0
mov edi, eax
test eax, eax
js 0x18012d403
mov rcx, qword [rsp + 0xe0]
cmp dword [rcx + 0xa4], 0x13
jne 0x18012a82a
mov rax, qword [rcx + 0x118]
test rax, rax
je 0x18012cccc
nop
test rax, rax
je 0x18012cc71
cmp dword [rax + 8], 0xa
jne 0x18012cc71
mov rax, qword [rax + 0x38]
jmp 0x18012cc60
cmp dword [rax + 8], 3
sete al
test al, al
je 0x18012cccc
mov eax, 0xffffffff
cmp dword [rcx + 0x120], eax
je 0x18012a82a
mov rcx, qword [rcx + 0x118]
mov rax, qword [rcx]
call qword [rax + 8]
cmp ebx, eax
ja 0x18012a82a
mov rax, qword [rsp + 0xe0]
mov r8d, ebx
mov ecx, dword [rax + 0x120]
mov rax, qword [rbp + 0x30]
shl r8, 3
lea rdx, [rax + rcx*8]
mov rcx, rsi
call sub.msvcrt.dll_memcpy
jmp 0x18012a6cd
xor edi, edi
mov eax, 0xffffffff
mov dword [rsp + 0x190], eax
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x1a0], rdi
mov dword [rsp + 0x1a8], edi
mov dword [rsp + 0x1ac], edi
mov byte [rsp + 0x1b0], dil
mov dword [rsp + 0x170], edi
mov dword [rsp + 0x174], edi
mov dword [rsp + 0x180], edi
mov dword [rsp + 0x184], edi
mov dword [rsp + 0x188], edi
mov dword [rsp + 0x18c], edi
mov dword [rsp + 0x194], edi
mov qword [rsp + 0x178], rdi
mov byte [rsp + 0x198], dil
mov qword [rsp + 0x1b8], rdi
test byte [rax + 0xcf01], 1
jne 0x18012ce26
mov rax, qword [rsp + 0x228]
mov rdi, qword [rax + 0x90]
test rdi, rdi
jne 0x18012cd6a
lea rdi, [rax + 0x68]
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x18]
lea r9, [0x180044868]
mov r8d, 0xdd8
mov rdx, rdi
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.180109730
mov edi, 0x80004005
lea rcx, [rsp + 0x1a0]
call fcn.180120170
mov rbx, qword [rsp + 0x178]
test rbx, rbx
je 0x18012cdd2
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x18012cdbe
xor eax, eax
jmp 0x18012cdc4
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax]
mov r8, rbx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rsp + 0x1b8]
xor esi, esi
mov qword [rsp + 0x178], rsi
test rbx, rbx
je 0x18012ce0c
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x18012cdf8
mov rax, rsi
jmp 0x18012cdfe
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax]
mov r8, rbx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea rcx, [rsp + 0x1a0]
mov qword [rsp + 0x1b8], rsi
call fcn.180120170
jmp 0x18012d403
mov esi, edi
test ebx, ebx
je 0x18012cec2
mov rdx, qword [rsp + 0x70]
mov rbp, rdx
nop dword [rax + rax]
mov rax, qword [rsp + 0x220]
xor r9d, r9d
mov dword [rsp + 0x28], 0x11
mov rcx, qword [rax + 0x10]
mov eax, esi
mov dword [rsp + 0x20], edi
mov r8, qword [rcx + 0xd038]
lea rdx, [rdx + rax*8]
call fcn.18019f030
mov edi, eax
test eax, eax
js 0x18012cd96
mov rcx, qword [rbp]
mov rax, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x70]
mov rax, qword [rax + 0x28]
add rbp, 8
mov edi, 0
mov rax, qword [rax + 0x10]
mov qword [rcx + 0x108], rax
mov rax, qword [rbp - 8]
mov dword [rax + 0x110], esi
mov rax, qword [rbp - 8]
mov dword [rax + 0x118], esi
inc esi
cmp esi, ebx
jb 0x18012ce40
mov rbp, qword [rsp + 0x220]
lea rcx, [rsp + 0x170]
xor r8d, r8d
mov edx, 0x80
call fcn.18011e260
mov edi, eax
test eax, eax
js 0x18012cd96
mov rax, qword [rsp + 0x228]
mov rsi, qword [rsp + 0x70]
mov r9d, ebx
mov rdx, qword [rax + 0x28]
mov r8, rsi
mov rcx, rbp
call fcn.180106ba0
mov edi, eax
test eax, eax
js 0x18012cd96
mov rcx, qword [rsp + 0x228]
mov rdx, qword [rcx + 0x90]
test rdx, rdx
jne 0x18012cf22
lea rdx, [rcx + 0x68]
mov rax, qword [rbp + 0x10]
xor r8d, r8d
lea rdi, [rsp + 0x170]
mov rax, qword [rax + 0xd160]
mov qword [rsp + 0x50], r8
mov dword [rsp + 0x48], 0x10
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], r8
mov r8, qword [rcx + 0x28]
mov r9, rsi
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.180133120
mov edi, eax
test eax, eax
js 0x18012cd96
test ebx, ebx
je 0x18012d007
mov rdx, rsi
mov r8d, ebx
xor r9d, r9d
nop dword [rax + rax]
mov rax, qword [rdx]
mov rcx, qword [rax + 0xa8]
mov rcx, qword [rcx + 0x10]
mov rax, rcx
shr rax, 0x17
test al, 1
je 0x18012cfb7
mov rcx, qword [rsp + 0xf0]
or rdi, 0xffffffffffffffff
jmp 0x18012cfdd
shr cl, 7
test cl, 1
je 0x18012cfcd
mov rcx, qword [rsp + 0xf8]
or rdi, 0xffffffffffffffff
jmp 0x18012cfdd
mov rcx, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0xe0]
mov rax, qword [rdx]
add rdx, 8
sub r8, 1
mov qword [rax + 0xb8], rdi
mov rax, qword [rdx - 8]
mov qword [rax + 0xc0], rcx
mov rax, qword [rdx - 8]
mov dword [rax + 0xb0], r9d
jne 0x18012cf90
lea rcx, [rsp + 0x1a0]
call fcn.180120170
mov rdi, qword [rsp + 0x178]
test rdi, rdi
je 0x18012d043
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x18012d02f
xor eax, eax
jmp 0x18012d035
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax]
mov r8, rdi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [rsp + 0x1b8]
xor eax, eax
mov qword [rsp + 0x178], rax
test rdi, rdi
je 0x18012d07a
mov ecx, dword [0x18025e63c]
test ecx, ecx
js 0x18012d06a
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax]
mov r8, rdi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
lea rcx, [rsp + 0x1a0]
mov qword [rsp + 0x1b8], rax
call fcn.180120170
jmp 0x18012a6cd
test rsi, rsi
je 0x18012a82a
test rdx, rdx
je 0x18012a82a
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x18012a6d8
lea esi, [rbx + rbx*2]
lea rcx, [rsp + 0xc0]
mov edx, esi
call fcn.1800c4620
mov edi, eax
test eax, eax
js 0x18012d403
mov r9, qword [rsp + 0xc0]
test esi, esi
je 0x18012d0e8
mov ecx, esi
mov rdi, r9
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
xor r10d, r10d
lea r8, [rsp + 0xe0]
lea edx, [r10 + 3]
mov edi, r10d
nop word [rax + rax]
mov eax, edi
add r8, 8
add edi, ebx
sub rdx, 1
lea rcx, [r9 + rax*8]
mov qword [r8 - 8], rcx
jne 0x18012d100
mov esi, r10d
movsxd rax, ebx
test ebx, ebx
je 0x18012d1c8
mov r8, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x80]
lea rbp, [r8 + rax*8]
sub rcx, r8
mov rax, r8
sub rax, rdx
mov rdi, rdx
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x138], rax
nop dword [rax]
add rax, rdi
lea r8, [rsp + 0xa8]
mov rdx, qword [rcx + rax]
mov rcx, qword [rsp + 0x220]
call fcn.180107760
test eax, eax
js 0x18012d1bd
cmp byte [rsp + 0xa8], 0
je 0x18012d198
mov rax, qword [rsp + 0x138]
mov rax, qword [rax + rdi]
jmp 0x18012d19c
mov rax, qword [rbp]
mov rcx, qword [rsp + 0x150]
mov qword [rdi], rax
mov rax, qword [rsp + 0x138]
inc esi
add rbp, 8
add rdi, 8
cmp esi, ebx
jb 0x18012d160
mov rbp, qword [rsp + 0x220]
xor r10d, r10d
cmp esi, ebx
jne 0x18012d214
mov rsi, qword [rsp + 0x70]
test ebx, ebx
je 0x18012d1e1
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rsp + 0xe0]
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], r10d
mov r8d, ebx
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], r10
and r8d, 0xfffff
bts r8d, 0x1c
jmp 0x18012aceb
mov rax, qword [rbp + 0x10]
test byte [rax + 0xcefb], 0x10
je 0x18012d267
test ebx, ebx
je 0x18012a733
mov rcx, qword [rsp + 0x98]
mov eax, ebx
mov dword [rsp + 0x30], ebx
lea r9, [rcx + rax*8]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], rax
mov rsi, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x20], rcx
mov r8, rsi
mov rcx, rbp
call fcn.18016e410
jmp 0x18012ad00
mov r8, qword [rsp + 0xe0]
test ebx, ebx
je 0x18012d27f
mov ecx, ebx
mov rdi, r8
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rdx, qword [rsp + 0xe8]
test ebx, ebx
je 0x18012d297
mov ecx, ebx
mov rdi, rdx
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rsi, qword [rsp + 0xf0]
test ebx, ebx
je 0x18012d2af
mov ecx, ebx
mov rdi, rsi
or rax, 0xffffffffffffffff
rep stosq qword [rdi], rax
mov rax, qword [rsp + 0x80]
mov r9, rdx
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
call fcn.180103260
mov edi, eax
test eax, eax
js 0x18012d403
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xe8]
mov r8d, ebx
and r8d, 0xfffff
mov r9, rsi
mov rcx, rbp
or r8d, 0x21800000
mov qword [rsp + 0x20], rax
call fcn.18012ed20
mov edi, eax
test eax, eax
js 0x18012d403
test ebx, ebx
je 0x18012a733
mov rcx, qword [rsp + 0x98]
mov eax, ebx
mov dword [rsp + 0x30], ebx
lea r9, [rcx + rax*8]
mov qword [rsp + 0x28], rsi
jmp 0x18012d248
mov rsi, qword [rsp + 0x70]
mov r8d, ebx
mov rdx, rdi
mov r9, rsi
mov rcx, rbp
call fcn.180184fe0
jmp 0x18012ad00
mov rsi, qword [rsp + 0x70]
xor r9d, r9d
mov rdx, rdi
mov r8, rsi
mov rcx, rbp
call fcn.180154280
jmp 0x18012ad00
mov rsi, qword [rsp + 0x70]
mov r9b, 1
mov rdx, rdi
mov r8, rsi
mov rcx, rbp
call fcn.180154280
mov edi, eax
test eax, eax
js 0x18012d403
jmp 0x18012a6cd
mov rsi, qword [rsp + 0x70]
mov r8, r10
jmp 0x18012a6d5
mov eax, dword [rsp + 0x130]
mov rdx, rcx
mov r9, rsi
mov r8d, ebx
mov rcx, rbp
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call fcn.180128450
mov edi, eax
test eax, eax
js 0x18012d403
xor eax, eax
mov edi, eax
jmp 0x18012d403
lea r9, [0x180044890]
xor edx, edx
mov rcx, rbp
call fcn.180109730
mov edi, 0x80004005
jmp 0x18012d403
mov edi, 0x80070057
mov rbx, qword [rsp + 0x68]
mov edx, 1
cmp qword [rsp + 0xc0], 0
movsxd rax, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xd4]
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0xc8]
lea rcx, [rax + rcx*8 + 0xd250]
je 0x18012d45d
test r8, r8
cmove r8, rdx
mov rdx, qword [rcx]
cmp r8, qword [rdx + 8]
jae 0x18012d452
sub qword [rdx + 8], r8
jmp 0x18012d45d
mov rax, qword [rdx]
mov qword [rcx], rax
call fcn.1800c56f0
mov rcx, qword [rsp + 0x1e0]
mov eax, dword [rsp + 0x160]
add rcx, 0xd280
test rbx, rbx
je 0x18012d4aa
test rax, rax
mov edx, 1
cmove rax, rdx
mov rdx, qword [rcx]
cmp rax, qword [rdx + 8]
jae 0x18012d49f
sub qword [rdx + 8], rax
mov eax, edi
add rsp, 0x1f8
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [rdx]
mov qword [rcx], rax
call fcn.1800c56f0
mov eax, edi
add rsp, 0x1f8
pop rdi
pop rsi
pop rbp
pop rbx
ret