Function at 0x14000281f
Capabilities:
Inspect section memory permissions

Disassembly:
jmp 0x140365710
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x4d8
mov rax, qword [0x14056a550]
xor rax, rsp
mov qword [rsp + 0x4d0], rax
mov qword [rsp + 0x98], r8
mov qword [rsp + 0x90], rdx
mov rsi, qword [rcx + 8]
xor r15d, r15d
test rsi, rsi
je 0x140366a8f
mov rdi, qword [rsi + 0xc0]
test rdi, rdi
je 0x140366a8f
mov rbx, rcx
cmp qword [rsi + 0x188], 0
jle 0x1403669a4
lea r12, [rdi + 0x9c]
xor eax, eax
mov qword [rsp + 0x48], rax
mov eax, 1
mov qword [rsp + 0x38], rax
lea r14, [rsp + 0x1d8]
lea r13, [rsp + 0x90]
lea rbp, [rsp + 0x98]
mov dword [rsp + 0x44], 0
mov dword [rsp + 0x34], 0
jmp 0x1403657de
mov rcx, qword [rsi + 0xa0]
cmp rax, rcx
cmova rcx, rax
mov qword [rsi + 0xa0], rcx
nop dword [rax]
cmp qword [rsi + 0x188], 0
jle 0x1403669a4
test byte [rsi + 0x29c], 0x20
je 0x140365837
nop word [rax + rax]
mov rax, qword [rsp + 0x90]
cmp byte [rax], 0x41
je 0x140365824
mov rcx, r13
mov rdx, rbp
lea r8, [rsp + 0x68]
mov r9, r14
call fcn.140003cd8
test eax, eax
jne 0x1403669c9
cmp dword [rsp + 0x78], 2
jne 0x1403657f0
jmp 0x1403668b7
add rax, 2
mov qword [rsp + 0x90], rax
and byte [rsi + 0x29c], 0xdf
mov r14, qword [rdi + 0x28]
cmp r14, 2
jb 0x1403658d3
dec r14
mov qword [rdi + 0x28], r14
mov eax, dword [rdi + 0x94]
mov ecx, dword [rdi + 0x98]
mov dword [rdi + 0x9c], eax
mov eax, dword [rdi + 0xb8]
and ecx, 1
and eax, 0xfffffffd
lea eax, [rax + rcx*2]
mov dword [rdi + 0xb8], eax
mov eax, dword [rdi + 0xb4]
mov ecx, eax
not ecx
test ecx, 0x30000000
jne 0x1403659cf
mov rdx, qword [rsp + 0x90]
movzx ecx, byte [rdx]
cmp cl, 0x41
jne 0x1403658a9
lea rcx, [rdx + 2]
mov qword [rsp + 0x90], rcx
movzx ecx, byte [rdx + 2]
cmp cl, 2
jne 0x14036596c
cmp dword [rsp + 0x34], 0
jne 0x14036596c
cmp qword [rsp + 0x38], 1
jg 0x14036596c
or eax, 0x20000000
jmp 0x14036598c
mov rax, qword [rsp + 0x90]
movzx ecx, byte [rax]
cmp cl, 0x41
jne 0x1403658f3
lea rcx, [rax + 2]
mov qword [rsp + 0x90], rcx
movzx ecx, byte [rax + 2]
mov eax, dword [rdi + 0xb4]
cmp cl, 2
lea r14, [rsp + 0x1d8]
jne 0x140365921
cmp dword [rsp + 0x34], 0
jne 0x140365921
cmp qword [rsp + 0x38], 1
jg 0x140365921
or eax, 0x20000000
and eax, 0xbfffffff
jmp 0x14036593f
and eax, 0xdfffffff
cmp cl, 1
jne 0x14036591a
cmp dword [rsp + 0x34], 0
jne 0x14036591a
cmp qword [rsp + 0x38], 1
jg 0x14036591a
or eax, 0x40000000
mov dword [rdi + 0xb4], eax
mov rcx, rsi
call fcn.140003008
test eax, eax
jne 0x1403669c9
mov eax, dword [rdi + 0xb4]
mov ecx, eax
not ecx
test ecx, 0x30000000
jne 0x1403659d7
jmp 0x1403668bf
and eax, 0xdfffffff
cmp cl, 1
jne 0x14036598c
cmp dword [rsp + 0x34], 0
jne 0x14036598c
cmp qword [rsp + 0x38], 1
jg 0x14036598c
or eax, 0x40000000
jmp 0x140365991
and eax, 0xbfffffff
mov dword [rdi + 0xb4], eax
mov rcx, rsi
call fcn.140003008
test eax, eax
jne 0x1403669c9
movsxd rcx, r14d
mov qword [rdi + 0x28], rcx
mov eax, dword [rdi + 0xb4]
mov edx, eax
not edx
test edx, 0x30000000
je 0x140366928
or eax, 0x20000000
mov dword [rdi + 0xb4], eax
lea r14, [rsp + 0x1d8]
movsx ecx, byte [rdi + 0xb0]
add ecx, 0xfffffffe
cmp ecx, 0x1a
ja case.0x1403659f4.3
lea rdx, [0x140366dd4]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov rcx, qword [rsp + 0x90]
movzx ecx, byte [rcx]
lea edx, [rcx - 1]
cmp dl, 2
jae 0x140365ba1
cmp cl, 1
jne 0x140365a1e
cmp qword [rsp + 0x38], 2
jl 0x1403669a4
cmp cl, 2
jne 0x140365bac
cmp qword [rsp + 0x38], 1
jg 0x140365bac
jmp 0x140366b4d
mov rcx, qword [rsp + 0x38]
cmp rcx, 2
jl 0x140365c1a
mov eax, dword [rsp + 0x1d8]
add eax, 0xfffffff9
cmp eax, 1
ja 0x140365c59
cmp dword [rsp + 0x34], 0
jne 0x140365f5e
xor eax, eax
cmp dword [rsp + 0x44], 0
setne al
mov dword [rsp + 0x34], eax
mov rcx, r14
lea rdx, [rsp + 0xe0]
call fcn.14000114f
mov rcx, qword [rsp + 0x38]
jmp 0x140365c6e
cmp qword [rsp + 0x38], 1
jg case.0x1403659f4.16
mov rax, qword [rsp + 0x90]
movzx eax, byte [rax]
cmp eax, 1
je 0x1403669a4
cmp eax, 2
je 0x140366b4d
mov rcx, r13
mov rdx, rbp
mov r8, qword [rsp + 0x38]
call fcn.1400055d3
cmp eax, 1
je 0x1403669a4
cmp eax, 2
jne case.0x1403659f4.16
jmp 0x140366b4d
mov rcx, qword [rsi + 0x90]
mov rax, qword [rsi + 0x188]
mov qword [rsi + 0x80], rcx
mov rdx, qword [rsi + 0x1d0]
add rdx, rcx
mov qword [rsi + 0x90], rdx
mov qword [rsi + 0x98], rcx
lea rdx, [rax - 1]
mov qword [rsi + 0x188], rdx
cmp rax, 1
jle 0x1403668db
mov r8, qword [rsi + 0x1c8]
mov dl, 0x20
call fcn.1400020b8
jmp case.0x1403659f4.16
mov rax, qword [rsi + 0x80]
movsxd rcx, dword [rdi + 0x9c]
lea rdx, [rax + rcx]
cmp rdx, qword [rsi + 0x90]
ja 0x140366937
test ecx, ecx
jle 0x1403657b8
mov rax, qword [rdi + 0xa0]
xor ecx, ecx
nop word cs:[rax + rax]
movzx edx, byte [rax + rcx]
mov r8, qword [rsi + 0x80]
lea r9, [r8 + 1]
mov qword [rsi + 0x80], r9
mov byte [r8], dl
inc rcx
movsxd rdx, dword [r12]
cmp rcx, rdx
jl 0x140365b70
mov rax, qword [rsi + 0x80]
jmp 0x1403657b8
test eax, 0x200000
je 0x140366aeb
mov rcx, qword [rsi + 0x90]
mov rax, qword [rsi + 0x188]
mov qword [rsi + 0x80], rcx
mov rdx, qword [rsi + 0x1d0]
add rdx, rcx
mov qword [rsi + 0x90], rdx
mov qword [rsi + 0x98], rcx
lea rdx, [rax - 1]
mov qword [rsi + 0x188], rdx
cmp rax, 1
jle 0x1403668db
mov r8, qword [rsi + 0x1c8]
mov dl, 0x20
call fcn.1400020b8
mov rcx, r13
mov rdx, rbp
mov r8, qword [rsp + 0x38]
call fcn.1400055d3
cmp eax, 1
jne case.0x1403659f4.16
jmp 0x140366993
mov rcx, r13
mov rdx, rbp
lea r8, [rsp + 0x68]
mov r9, r14
call fcn.140003cd8
test eax, eax
jne 0x1403669c9
mov eax, dword [rsp + 0x78]
cmp eax, 0x41
je 0x140365d53
cmp eax, 1
je 0x1403669a4
cmp eax, 2
jne 0x140365d77
jmp 0x140366bd7
mov rax, qword [rsp + 0x68]
add rax, qword [rsp + 0x80]
mov dword [rsp + 0x34], 0
mov qword [rsp + 0x68], rax
dec rcx
cmp dword [rsp + 0x48], 0
mov qword [rsp + 0x38], rcx
jne 0x140366074
mov edx, dword [rsp + 0x78]
mov eax, edx
or eax, 2
cmp eax, 0x42
jne 0x140365df5
cmp byte [rdi + 0xb0], 0x74
jne 0x140365e03
mov r8d, 1
mov r9d, 1
mov rcx, rsi
lea rdx, [rsp + 0x68]
call fcn.140001ed3
test eax, eax
jne 0x140366c2c
mov qword [rsp + 0x58], r12
xor eax, eax
mov qword [rsp + 0x48], rax
mov r14d, 1
xor r12d, r12d
test r12d, r12d
jne 0x14036609b
mov rax, qword [rsp + 0x90]
movzx eax, byte [rax]
cmp eax, 0x40
jg 0x140365d03
lea ecx, [rax - 0x3f]
cmp ecx, 2
jb 0x140365d0d
cmp eax, 1
je 0x140365d15
jmp 0x140365d10
cmp eax, 0x41
je 0x140365d15
cmp eax, 0x42
jne 0x140365d10
inc r14d
xor r12d, r12d
jmp 0x140365d27
xor r12d, r12d
cmp r14d, 2
lea eax, [r14 - 1]
setl r12b
mov r14d, eax
mov rcx, r13
mov rdx, rbp
lea r8, [rsp + 0x68]
lea r9, [rsp + 0x1d8]
call fcn.140003cd8
test eax, eax
jne 0x1403669c9
cmp dword [rsp + 0x78], 2
jne 0x140365cdb
jmp 0x140366984
add qword [rsp + 0x90], 2
mov rcx, r13
mov rdx, rbp
lea r8, [rsp + 0x68]
mov r9, r14
call fcn.140003cd8
test eax, eax
jne 0x1403669c9
mov eax, dword [rsp + 0x1d8]
lea ecx, [rax - 5]
cmp ecx, 2
jb 0x140365dc2
add eax, 0xfffffff9
cmp eax, 1
ja 0x140365f34
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x140365f7b
mov rax, qword [rsp + 0x70]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x140365fa8
cqo
idiv rcx
jmp 0x140365fac
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x140365f8f
mov rax, qword [rsp + 0x70]
mov rdx, rax
or rdx, rcx
shr rdx, 0x20
je 0x140366049
cqo
idiv rcx
mov rcx, rax
jmp 0x14036604f
cmp byte [rdi + 0xb0], 0x74
jne 0x140365e39
jmp 0x140366c34
cmp edx, 0x40
je 0x140365e12
cmp edx, 0x42
jne 0x140365e39
jmp 0x140366cce
mov rcx, r13
mov rdx, rbp
lea r8, [rsp + 0x68]
mov r9, r14
call fcn.140003cd8
test eax, eax
jne 0x1403669c9
mov edx, dword [rsp + 0x78]
lea eax, [rdx - 0x40]
cmp eax, 3
jb 0x140365e12
and byte [rdi + 0xb7], 0xf7
mov rax, qword [rdi]
test byte [rax + 0x296], 0x80
je 0x140365e75
movsx rax, byte [rdi + 0xb0]
lea rcx, [0x14052cf90]
mov rax, qword [rcx + rax*8]
test rax, rax
je 0x140365e75
movsxd rcx, edx
movsx eax, byte [rax + rcx]
test eax, eax
je 0x140365e75
mov dword [rsp + 0x78], eax
mov edx, eax
mov r8d, dword [rdi + 0xb8]
mov ecx, r8d
and ecx, 0xfffffaef
mov dword [rdi + 0xb8], ecx
movsx eax, word [rdi + 0xa8]
test eax, eax
je 0x140365eae
and r8d, 0xfffff8ef
or r8d, 0x200
mov dword [rdi + 0xb8], r8d
mov ecx, r8d
mov r11d, dword [r12]
test r11d, r11d
jne 0x140365ec3
or ecx, 0x400
mov dword [rdi + 0xb8], ecx
movsx r8d, byte [rdi + 0xb0]
lea r9d, [r8 - 0x13]
cmp r9d, 0x65
ja case.0x140365ee7.28
lea r10, [0x140366e40]
movsxd r9, dword [r10 + r9*4]
add r9, r10
jmp r9
mov r10d, ecx
xor r15d, r15d
mov r9b, 1
test r11d, r11d
jne 0x140365f22
or r10d, 2
mov dword [rdi + 0xb8], r10d
movsxd rcx, edx
lea rdx, [0x14052ceb0]
movsx ecx, word [rdx + rcx*8 - 0xc6]
mov r11d, eax
add r11d, ecx
mov dword [rdi + 0x9c], r11d
mov ecx, r10d
cmp r8d, 0x2d
jbe 0x1403662ea
jmp 0x14036630f
mov eax, dword [rsp + 0x78]
cmp eax, 0x1c
jl 0x140365f54
mov ecx, 2
cmp eax, 0x2d
jb 0x1403660d2
cmp eax, 0x34
je 0x1403660d2
mov ecx, 1
jmp 0x140365c76
mov rax, qword [rsp + 0x80]
add qword [rsp + 0x68], rax
dec rcx
mov dword [rsp + 0x34], 0
jmp 0x140365c76
test byte [rsi + 0x290], 2
je 0x14036606d
mov rax, qword [rsp + 0x70]
jmp 0x140365fac
mov eax, dword [rsi + 0x290]
and eax, 2
je 0x14036605a
mov rcx, qword [rsp + 0x70]
jmp 0x14036605c
xor edx, edx
div ecx
test rax, rax
je 0x14036606d
mov ecx, dword [rsp + 0x78]
cmp ecx, 0x1c
jl 0x140365fda
mov r14d, 1
cmp ecx, 0x2d
jb 0x140366152
mov dword [rsp + 0x44], 1
cmp ecx, 0x34
je 0x140365fe7
mov dword [rsp + 0x44], 0
mov r14d, dword [rsp + 0x34]
mov qword [rsp + 0x38], rax
movsxd rax, dword [rsp + 0x1dc]
test rax, rax
jle 0x14036601a
lea rcx, [rsp + 0x1f0]
xor edx, edx
mov r8, qword [rcx]
mov qword [rsp + rdx*8 + 0xe0], r8
inc rdx
add rcx, 0x18
cmp rax, rdx
jne 0x140366003
lea r15, [rsp + 0x1d8]
mov rcx, r15
lea rdx, [rsp + 0xe0]
call fcn.14000114f
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x34], r14d
mov r14, r15
mov rcx, qword [rsp + 0x38]
jmp 0x140365c76
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [rsi + 0x290]
and eax, 2
jmp 0x14036605c
xor ecx, ecx
test eax, eax
je 0x140365c76
test rcx, rcx
jne 0x140365c76
xor eax, eax
mov qword [rsp + 0x38], rax
mov rax, qword [rdi + 0x28]
lea rcx, [rax + 1]
test rax, rax
mov eax, 2
cmove rcx, rax
mov qword [rdi + 0x28], rcx
mov eax, 1
mov qword [rsp + 0x48], rax
jmp case.0x1403659f4.16
mov r12, qword [rsp + 0x58]
lea r14, [rsp + 0x1d8]
jmp case.0x1403659f4.16
lea r9d, [rdx - 0x35]
xor r15d, r15d
cmp r9d, 0xffffffe4
jae 0x14036610f
mov r15d, 0x3d
xor r9d, r9d
cmp r8d, 0x2d
jbe 0x1403662ea
jmp 0x14036630f
mov dword [rsp + 0x34], 1
jmp 0x140365c76
xor r15d, r15d
mov r9b, 1
test r11d, r11d
jne 0x1403662e4
or ecx, 2
mov dword [rdi + 0xb8], ecx
movsxd rdx, edx
lea r10, [0x14052cdd0]
movsx r11d, byte [rdx + r10]
mov dword [rdi + 0x9c], r11d
jmp 0x140366178
add edx, 0xffffffe7
lea r10, [0x14052ceb0]
movsx r11d, word [r10 + rdx*8]
mov dword [rdi + 0x9c], r11d
movzx eax, word [r10 + rdx*8 + 4]
xor r9d, r9d
cmp r8b, 0x2e
sete r9b
sub eax, r9d
mov word [rdi + 0xa8], ax
movzx edx, word [r10 + rdx*8 + 6]
mov word [rdi + 0xaa], dx
jmp 0x1403662e1
mov dword [rsp + 0x44], 1
jmp 0x140365fe7
movsxd rdx, edx
lea r9, [0x14052cdd0]
movsx r11d, byte [rdx + r9]
xor r15d, r15d
mov dword [r12], r11d
mov r9b, 1
cmp r11d, 0xffffffff
jne 0x1403662e4
mov rdx, qword [rsp + 0x80]
lea r11, [rdx + rdx*2]
cmp r11, 8
mov edx, 7
cmovl r11, rdx
mov dword [r12], r11d
cmp r8d, 0x2d
jbe 0x1403662ea
jmp 0x14036630f
test ax, ax
jne 0x1403661bf
or ecx, 0x400
mov dword [rdi + 0xb8], ecx
xor r15d, r15d
mov r9b, 1
test r11d, r11d
jne 0x1403662e4
add edx, 0xfffffffb
xor r15d, r15d
cmp edx, 0xc
ja 0x140366715
or ecx, 2
mov dword [rdi + 0xb8], ecx
mov edx, edx
lea r10, [0x14052cdc0]
movsx r11d, byte [rdx + r10]
mov dword [rdi + 0x9c], r11d
cmp r8d, 0x2d
jbe 0x1403662ea
jmp 0x14036630f
xor r15d, r15d
mov r9b, 1
test r11d, r11d
jne 0x1403662e4
or ecx, 2
mov dword [rdi + 0xb8], ecx
movsxd rdx, edx
lea r10, [0x14052ce20]
movsx r11d, word [r10 + rdx*2]
mov dword [rdi + 0x9c], r11d
cmp r11d, 0xffffffff
jne 0x1403662e4
mov r11, qword [rsp + 0x80]
shl r11, 3
cmp r11, 0x12
mov edx, 0x11
jmp 0x140366197
or ecx, 0x110
mov dword [rdi + 0xb8], ecx
cmp edx, 0x19
jl 0x1403666f2
cmp edx, 0x34
ja 0x1403667e7
add edx, 0xffffffe7
lea r8, [0x14052ceb0]
movsx r11d, word [r8 + rdx*8]
mov dword [rdi + 0x9c], r11d
movzx eax, word [r8 + rdx*8 + 4]
movzx edx, word [r8 + rdx*8 + 6]
mov word [rdi + 0xa8], ax
mov word [rdi + 0xaa], dx
jmp 0x140366318
lea r8d, [rdx - 0x12]
cmp r8d, 0xfffffff3
jb 0x140366da7
add edx, 0xfffffffb
jmp 0x140366700
add edx, 0xffffffee
cmp edx, 0xfffffff3
jb 0x140366da7
mov dword [r12], 2
mov r11d, 2
jmp 0x140366318
xor r15d, r15d
mov r9b, 1
cmp r8d, 0x2d
ja 0x14036630f
mov edx, r8d
movabs r8, 0x250000000000
bt r8, rdx
jae 0x14036630f
mov eax, dword [rdi + 0xa8]
cmp r11d, eax
jge 0x14036630f
mov dword [r12], eax
mov r11d, eax
test r9b, r9b
je 0x1403669e3
test cl, 2
je 0x1403665f4
test r11d, r11d
jle 0x140366344
cwde
test cl, 0x10
je 0x140366334
lea ecx, [rax + 6]
cmp ecx, r11d
jg 0x14036633d
cmp r11d, eax
jge 0x140366344
inc eax
mov ecx, eax
mov dword [r12], ecx
mov r11d, ecx
cmp r11d, 0x40
ja 0x140366360
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x60], rcx
xor eax, eax
mov qword [rsp + 0x50], rax
jmp 0x140366388
movsxd rcx, r11d
xor edx, edx
lea r8, [rsp + 0x60]
call fcn.140003765
test eax, eax
jne 0x1403669c9
mov rcx, qword [rsp + 0x60]
mov r11d, dword [r12]
mov rax, rcx
mov qword [rsp + 0x50], rcx
movsxd r8, r11d
mov dl, 0x20
call fcn.1400020b8
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
mov rdx, rdi
call fcn.1400032a6
test eax, eax
je 0x1403663c4
mov r15d, eax
cmp eax, 0x3f
jne 0x1403669e3
test byte [rsi + 0x297], 8
jne 0x1403663c4
mov dword [rdi + 0x30], 0x3f
mov r11d, dword [r12]
mov rax, qword [rsp + 0x60]
test r11, r11
je 0x14036647f
cmp r11d, 1
je 0x140366446
mov r8d, r11d
shr r8d, 1
mov rdx, 0xfffffffffffffffe
xor r9d, r9d
movzx r10d, byte [rax + r9]
cmp r10b, 0x20
jne 0x1403664ae
mov r10d, edx
inc r10
lea rcx, [rax + r9]
inc rcx
mov qword [rsp + 0x60], rcx
add r10d, r11d
mov dword [r12], r10d
movzx r10d, byte [rax + r9 + 1]
cmp r10b, 0x20
jne 0x1403664b6
lea rcx, [rax + r9]
add rcx, 2
mov qword [rsp + 0x60], rcx
lea ecx, [r11 + rdx]
mov dword [r12], ecx
add r9, 2
add rdx, 0xfffffffffffffffe
dec r8d
jne 0x1403663ec
mov ecx, r11d
and ecx, 0xfffffffe
cmp ecx, r11d
jae 0x140366473
movzx r10d, byte [rax + rcx]
cmp r10b, 0x20
jne 0x1403664be
add rcx, rax
inc rcx
mov qword [rsp + 0x60], rcx
mov ecx, r11d
and ecx, 1
dec ecx
mov dword [r12], ecx
lea ecx, [r11 - 1]
add rcx, rax
inc rcx
jmp 0x140366482
mov rcx, rax
xor r11d, r11d
cmp word [rdi + 0xa8], 0
jne 0x1403665f4
mov dword [r12], 1
dec rcx
mov qword [rsp + 0x60], rcx
mov r11d, 1
jmp 0x1403665f4
add rax, r9
sub r11d, r9d
jmp 0x1403664c5
add r11d, edx
inc r11d
jmp 0x1403664c8
add rax, rcx
and r11d, 1
mov rcx, rax
add r10b, 0xd5
xor r14d, r14d
test r10b, 0xfd
sete al
cmp r11d, 8
jb 0x14036650f
mov r15, r11
mov r14b, al
add rcx, r14
mov r8d, 8
lea rdx, str.Infinity
call fcn.140005222
test eax, eax
je 0x1403665e1
lea r14, [rsp + 0x1d8]
mov r11, r15
jmp 0x1403665f4
test r11d, r11d
lea r14, [rsp + 0x1d8]
jne 0x1403665f4
jmp 0x140366482
mov r10d, ecx
or r10d, 0x100
mov dword [rdi + 0xb8], r10d
test r11d, r11d
je 0x140366727
lea ecx, [rdx - 0x19]
cmp ecx, 0x1b
ja 0x1403667df
test r10b, r10b
jns 0x140365eed
cmp byte [rdi + 0xac], 0
jne 0x14036689d
test ax, ax
jne 0x14036689d
mov word [rdi + 0xa8], 0
lea r14, [rsp + 0x1d8]
jmp 0x140365eed
mov r8d, ecx
or r8d, 0x100
mov dword [rdi + 0xb8], r8d
test r11d, r11d
je 0x14036675e
mov ecx, r8d
jmp 0x140366318
movsxd rdx, edx
lea r8, [0x14052ce20]
movsx r11d, word [r8 + rdx*2]
mov dword [r12], r11d
cmp r11d, 0xffffffff
jne 0x140366318
mov r11, qword [rsp + 0x80]
shl r11, 3
cmp r11, 0x12
mov edx, 0x11
cmovl r11, rdx
mov dword [r12], r11d
jmp 0x140366318
add r14d, 3
mov dword [r12], r14d
mov r11d, r14d
lea r14, [rsp + 0x1d8]
mov r8, qword [rsi + 0x80]
movsxd rax, r11d
add rax, r8
cmp rax, qword [rsi + 0x90]
ja 0x140366937
mov eax, dword [rdi + 0xb8]
test al, 2
jne 0x140366678
mov rax, qword [rsi + 0xf0]
mov rcx, qword [rsp + 0x68]
cmp rax, rcx
ja 0x140366639
add rax, qword [rsi + 0x138]
cmp rax, rcx
ja 0x140366c81
lea rcx, [rsp + 0x68]
mov rdx, rdi
call fcn.1400032a6
test eax, eax
je 0x140366666
mov r15d, eax
cmp eax, 0x3f
jne 0x140366d1b
test byte [rsi + 0x297], 8
jne 0x140366666
mov dword [rdi + 0x30], 0x3f
movsxd rax, dword [r12]
add qword [rsi + 0x80], rax
xor eax, eax
jmp 0x140366091
test r11d, r11d
je 0x1403666b8
mov rax, qword [rsp + 0x60]
lea rcx, [rax + 1]
mov qword [rsp + 0x60], rcx
movzx eax, byte [rax]
mov rcx, qword [rsi + 0x80]
lea rdx, [rcx + 1]
mov qword [rsi + 0x80], rdx
mov byte [rcx], al
dec dword [r12]
je 0x1403666b2
mov rax, qword [rsp + 0x60]
cmp byte [rax], 0x20
jne 0x140366682
mov eax, dword [rdi + 0xb8]
and eax, 0xfffffffd
mov dword [rdi + 0xb8], eax
mov dword [rdi + 0x9c], 0
xor eax, eax
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1403666e6
call fcn.140001b0e
jmp case.0x1403659f4.16
xor eax, eax
mov qword [rsp + 0x50], rax
jmp case.0x1403659f4.16
add edx, 0xfffffffb
cmp edx, 0xc
ja 0x140366da7
mov edx, edx
lea r8, [0x14052cdc0]
movsx r11d, byte [rdx + r8]
mov dword [r12], r11d
jmp 0x140366318
xor r11d, r11d
cmp r8d, 0x2d
jbe 0x1403662ea
jmp 0x14036630f
mov r10d, ecx
or r10d, 0x110
mov dword [rdi + 0xb8], r10d
cmp edx, 5
jl 0x140366804
cmp edx, 0x11
ja 0x14036684f
or ecx, 0x112
mov dword [rdi + 0xb8], ecx
add edx, 0xfffffffb
jmp 0x14036682f
mov r8d, ecx
or r8d, 0x110
mov dword [rdi + 0xb8], r8d
cmp edx, 0x19
jl 0x140366815
cmp edx, 0x34
ja 0x140366875
add edx, 0xffffffe7
or ecx, 0x112
mov dword [rdi + 0xb8], ecx
lea r8, [0x14052ceb0]
movsx r8d, word [r8 + rdx*8]
mov r11, r8
mov dword [rdi + 0x9c], r8d
test ax, ax
jne 0x1403667be
lea rax, [0x14052ceb0]
movzx eax, word [rax + rdx*8 + 4]
mov word [rdi + 0xa8], ax
lea r8, [0x14052ceb0]
movzx edx, word [r8 + rdx*8 + 6]
mov word [rdi + 0xaa], dx
lea r14, [rsp + 0x1d8]
jmp 0x140366318
mov ecx, r10d
jmp 0x140366318
and edx, 0xfffffffe
cmp edx, 0x38
jne 0x140366da7
mov r11d, dword [rsp + 0x80]
mov dword [r12], r11d
jmp 0x140366318
xor r11d, r11d
test cl, 2
jne 0x14036634a
jmp 0x1403665f4
add edx, 0xfffffffb
cmp edx, 0xc
ja 0x140366da7
or ecx, 0x112
mov dword [rdi + 0xb8], ecx
mov edx, edx
lea r8, [0x14052cdc0]
movsx r11d, byte [rdx + r8]
mov dword [rdi + 0x9c], r11d
lea r14, [rsp + 0x1d8]
jmp 0x140366318
mov ecx, edx
and ecx, 0xfffffffe
cmp ecx, 0x38
jne 0x1403668aa
mov r11d, dword [rsp + 0x80]
mov dword [r12], r11d
mov ecx, r10d
lea r14, [rsp + 0x1d8]
jmp 0x140366318
and edx, 0xfffffffe
cmp edx, 0x38
jne 0x140366da7
mov r11d, dword [rsp + 0x80]
mov dword [r12], r11d
mov ecx, r8d
lea r14, [rsp + 0x1d8]
jmp 0x140366318
lea r14, [rsp + 0x1d8]
jmp 0x140365eed
lea r14, [rsp + 0x1d8]
jmp 0x14036653f
xor r15d, r15d
jmp 0x140366a8f
mov rax, qword [rdi + 0x28]
xor r15d, r15d
test rax, rax
je 0x140366a8f
inc rax
mov qword [rdi + 0x28], rax
jmp 0x140366a8f
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140366ab6
test byte [rax + 0x74], 2
jne 0x140366acb
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x1b
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x1b
jmp 0x140366a1d
inc rcx
mov qword [rdi + 0x28], rcx
xor r15d, r15d
jmp 0x140366a8f
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140366b5d
test byte [rax + 0x74], 2
jne 0x140366b72
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x42
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x42
jmp 0x140366a1d
or byte [rsi + 0x29c], 0x20
xor r15d, r15d
jmp 0x140366a8f
and byte [rsi + 0x299], 0x7f
mov dword [rsi + 0x22c], 1
mov eax, dword [rdi + 0xb4]
test eax, 0x2000000
je 0x1403669d6
and eax, 0xfdffffff
mov dword [rdi + 0xb4], eax
mov rcx, qword [rdi + 8]
call fcn.140001b0e
test eax, eax
je 0x1403669ce
mov r15d, eax
jmp 0x1403669e3
mov qword [rdi + 8], 0
mov r15d, dword [rdi + 0x30]
test r15d, r15d
je 0x140366a68
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140366a27
test byte [rax + 0x74], 2
jne 0x140366a3f
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], r15d
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, r15d
call fcn.14000475f
mov r15d, eax
jmp 0x140366a8f
mov ecx, 1
mov edx, r15d
mov r8d, r15d
mov r9, rsi
call fcn.140002b35
mov r15d, eax
jmp 0x140366a8f
mov dword [rax + 0x68], r15d
mov dword [rax + 0x6c], r15d
mov rax, qword [rsi + 0xd8]
test rax, rax
je 0x140366a8f
mov qword [rax + 8], 0
mov qword [rsi + 0xd8], 0
jmp 0x140366a8f
and byte [rsi + 0x29e], 0xef
and dword [rsi + 0x294], 0xfff7ffdc
mov ecx, dword [rsi + 0x1e0]
call fcn.1400023f6
mov r15d, eax
mov qword [rbx + 8], 0
mov rcx, qword [rsp + 0x4d0]
xor rcx, rsp
call fcn.140003706
mov eax, r15d
add rsp, 0x4d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, 1
mov edx, 0x1b
mov r8d, 0x1b
jmp 0x140366a32
movabs rcx, 0x1b0000001b
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov r15d, 0x1b
jmp 0x140366a4e
test byte [rsi + 0x290], 2
je 0x140366b92
test eax, eax
jns 0x140366b92
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0x98]
lea r8, [rsp + 0x68]
lea r9, [rsp + 0x1d8]
call fcn.140006500
test eax, eax
je 0x140366b92
mov rax, qword [rsp + 0x90]
cmp byte [rax], 2
jne 0x1403669a4
cmp qword [rsp + 0x38], 1
jg 0x1403669a4
mov qword [rdi + 0x28], 2
xor r15d, r15d
jmp 0x140366a8f
mov ecx, 1
mov edx, 0x42
mov r8d, 0x42
jmp 0x140366a32
movabs rcx, 0x4200000042
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov r15d, 0x42
jmp 0x140366a4e
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140366bf7
test byte [rax + 0x74], 2
jne 0x140366c0c
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x69
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x69
jmp 0x140366a1d
mov rax, qword [rdi + 0x28]
lea rcx, [rax + 1]
test rax, rax
mov eax, 2
cmovne rax, rcx
mov qword [rdi + 0x28], rax
xor r15d, r15d
jmp 0x140366a8f
mov ecx, 1
mov edx, 0x69
mov r8d, 0x69
jmp 0x140366a32
movabs rcx, 0x6900000069
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov r15d, 0x69
jmp 0x140366a4e
mov r15d, eax
jmp 0x140366a8f
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140366d28
test byte [rax + 0x74], 2
jne 0x140366d3d
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x3d
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x3d
jmp 0x140366a1d
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140366d5d
test byte [rax + 0x74], 2
jne 0x140366d72
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x300
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x300
jmp 0x140366a1d
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140366d92
test byte [rax + 0x74], 2
jne 0x140366db2
mov eax, dword [rsi + 0x294]
mov r8d, dword [rsi + 0x29c]
and eax, 7
shr r8d, 0x11
and r8d, 8
or r8d, eax
mov dword [rsp + 0x20], 0x7d
mov rcx, rsi
mov edx, 0xffffffff
mov r9d, 0x7d
jmp 0x140366a1d
mov rcx, rdi
call fcn.140005722
jmp 0x1403669e3
mov ecx, 1
mov edx, 0x3d
mov r8d, 0x3d
jmp 0x140366a32
movabs rcx, 0x3d0000003d
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov r15d, 0x3d
jmp 0x140366a4e
mov ecx, 1
mov edx, 0x300
mov r8d, 0x300
jmp 0x140366a32
movabs rcx, 0x30000000300
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov r15d, 0x300
jmp 0x140366a4e
mov ecx, 1
mov edx, 0x7d
mov r8d, 0x7d
jmp 0x140366a32
mov r15d, 0x3d
jmp 0x1403669e3
movabs rcx, 0x7d0000007d
mov qword [rax + 0x68], rcx
mov rax, qword [rsi + 0xd8]
mov r15d, 0x7d
jmp 0x140366a4e