Function at 0x18003bf70
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Parse pe header

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x288]
sub rsp, 0x348
mov r11, qword [rsp + 0x78]
mov r13d, r9d
mov r15d, dword [rbp + 0x2a8]
mov r12, qword [rbp + 8]
mov r14d, dword [rbp - 0x20]
mov edi, dword [rbp - 0x24]
mov esi, dword [rbp - 0x38]
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
mov eax, dword [rbp + 0x14]
movsd xmm8, qword [0x1800becd0]
mov dword [rbp - 0x48], eax
mov rax, qword [rbp + 0x38]
mov qword [rbp + 0x38], rax
mov eax, dword [rbp + 0x2a8]
mov qword [rbp + 0x170], rax
mov eax, dword [rbp + 0x2a8]
mov qword [rbp + 0x178], rax
mov qword [rsp + 0x70], r11
mov qword [rbp + 0x60], r15
mov eax, r9d
xor ecx, ecx
shl eax, 0xa
cmp r13d, eax
ja 0x18003c130
cmp r13d, 0x10100
ja 0x18003c269
je 0x18003c246
cmp r13d, 0xd9b
ja 0x18003c1bf
je 0x18003c11a
mov eax, r13d
sub eax, 0x1b
je 0x18003c0c8
sub eax, 0xb4
je 0x1800424f8
sub eax, 0x31
je 0x18003c0b0
cmp eax, 0x5db
jne 0x1800424e3
mov rax, qword [rdx]
mov rcx, qword [rbp + 0x2b8]
sar rax, 0x3f
and rax, 0xfffffffffffffffe
inc rax
imul rax, qword [rcx]
mov rcx, qword [rbp + 0x1a8]
mov qword [rcx], rax
mov rax, qword [rdx]
cqo
xor rax, rdx
sub rax, rdx
mov rdx, qword [rbp + 0x298]
mov qword [rcx + 8], rax
mov eax, r9d
mov r11, qword [rsp + 0x78]
shl eax, 6
add r13d, eax
mov qword [rsp + 0x70], r11
jmp 0x18003c001
mov rdx, qword [rbp + 0x298]
mov eax, r9d
shl eax, 6
add r13d, eax
mov dword [rbp + 0x10], ecx
jmp 0x18003c001
xor r8d, r8d
mov qword [rbp + 0x1d8], 0x10
lea rdx, [rbp + 0x1d8]
lea ecx, [r8 + 0x7a]
call fcn.180051e40
mov r9d, dword [rbp + 0x2a8]
mov r11, qword [rsp + 0x78]
mov r8, qword [rbp + 0x2a0]
mov rdx, qword [rbp + 0x298]
mov qword [rbp + 0x1a8], rax
mov eax, r9d
shl eax, 6
add r13d, eax
mov qword [rsp + 0x70], r11
jmp 0x18003c001
mov ebx, 0x89
nop
cmp ebx, 0x89
je 0x18003c15a
cmp ebx, 0x113
jne 0x18003c176
mov rax, r12
lea r11, [rsp + 0x348]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r12, qword [rbp + 0x1a8]
xor r9d, r9d
xor edx, edx
mov rcx, r12
lea r8d, [r9 + 8]
call fcn.180012060
mov qword [rbp + 8], r12
add ebx, 0x8a
cmp ebx, 0x19d
jb 0x18003c120
mov r11, qword [rsp + 0x78]
mov r8, qword [rbp + 0x2a0]
mov r9d, dword [rbp + 0x2a8]
mov qword [rsp + 0x70], r11
mov rax, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x298]
mov qword [rbp + 0x140], rax
mov eax, r9d
shl eax, 6
add r13d, eax
jmp 0x18003c001
cmp r13d, 0x4100
je 0x18003c22b
cmp r13d, 0x8100
je 0x18003c204
cmp r13d, 0xc100
jne 0x1800424e3
mov rax, qword [rdx]
mov rdx, qword [rbp + 0x298]
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x130], rax
mov eax, r9d
shl eax, 6
add r13d, eax
mov dword [rbp + 0x54], ecx
jmp 0x18003c001
mov rax, qword [rbp + 0x2b8]
mov rdx, qword [rbp + 0x298]
mov dword [rbp + 0xd8], ecx
mov eax, dword [rax]
mov dword [rbp - 0x50], eax
mov eax, r9d
shl eax, 6
add r13d, eax
jmp 0x18003c001
mov rdx, qword [rbp + 0x298]
mov eax, r9d
shl eax, 6
add r13d, eax
mov dword [rbp - 0x48], ecx
mov dword [rbp + 0x14], ecx
jmp 0x18003c001
mov rax, qword [rbp - 0x80]
mov rdx, qword [rbp + 0x298]
mov qword [rbp + 0x168], rax
mov eax, r9d
shl eax, 6
add r13d, eax
mov dword [rbp - 0x58], ecx
jmp 0x18003c001
cmp r13d, 0x20100
ja 0x18003c323
je 0x18003c2ea
cmp r13d, 0x14100
je 0x18003c2c2
cmp r13d, 0x18100
je 0x18003c19c
cmp r13d, 0x1c100
jne 0x1800424e3
mov rdx, qword [rbp + 0x298]
mov eax, r9d
shl eax, 6
add r13d, eax
mov qword [rbp - 0x18], rcx
mov qword [rbp + 0xf0], rcx
mov qword [rbp + 0xc8], rcx
jmp 0x18003c001
mov r11, qword [r8]
mov eax, r9d
mov rdx, qword [rbp + 0x298]
shl eax, 6
add r13d, eax
mov dword [rbp + 0xfc], ecx
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c001
mov eax, dword [rbp - 0x50]
mov rdx, qword [rbp + 0x298]
shr eax, 0xb
and eax, 1
mov dword [rbp - 0x70], eax
mov eax, dword [rbp - 0x50]
shr eax, 9
and eax, 1
mov dword [rbp + 0xe0], eax
xor eax, 1
mov dword [rbp + 0x120], eax
mov eax, r9d
shl eax, 6
add r13d, eax
jmp 0x18003c001
cmp r13d, 0x24100
je 0x1800424bb
cmp r13d, 0x28100
je 0x18003c360
cmp r13d, 0x2c100
je 0x18004252f
mov rdx, qword [rbp + 0x298]
mov eax, r9d
shl eax, 6
add r13d, eax
jmp 0x18003c001
mov r8, qword [rbp + 0x2c8]
movzx r13d, byte [r11]
mov qword [rbp - 0x40], r13
test r8, r8
je 0x18003c4b9
mov r13d, 0x90
nop
mov eax, r13d
sub eax, 0x8e
je 0x18003c485
sub eax, 1
je 0x18003c3d3
mov r10, qword [rbp + 0x2b0]
cmp eax, 1
jne 0x18003c497
mov rax, qword [r10 + 0x20]
mov rbx, qword [rbp - 0x80]
add rax, 0x1000
cmp rbx, rax
ja 0x1800421e1
mov r9, qword [rbp + 0x130]
cmp rbx, r9
jae 0x18003c497
mov qword [rbp - 0x80], r9
jmp 0x18003c497
mov edx, dword [r8]
mov eax, 0x7fffffeb
mov rbx, qword [rbp - 0x80]
sub eax, edx
mov r9, qword [rbp + 0x130]
movsxd rcx, eax
mov rax, rbx
sub rax, r9
cmp rcx, rax
jl 0x180042224
mov rax, qword [rbp - 0x18]
sub edx, r9d
add edx, ebx
mov dword [r8], edx
test rax, rax
je 0x18003c478
mov rcx, qword [rbp + 0x168]
cmp rax, rcx
jbe 0x18003c490
mov r12, qword [rbp - 0x80]
mov ebx, 0x1a
cmp ebx, 0x1a
je 0x18003c436
cmp ebx, 0xd9c
jne 0x18003c459
mov rax, rcx
mov qword [rbp - 0x18], rcx
jmp 0x18003c459
mov r8, r12
mov rdx, rax
sub r8, rax
call fcn.180088a90
mov rcx, qword [rbp + 0x168]
mov rax, rcx
sub rax, qword [rbp - 0x18]
add r12, rax
mov rax, qword [rbp - 0x18]
add ebx, 0xd82
cmp ebx, 0x1b04
jbe 0x18003c420
mov r8, qword [rbp + 0x2c8]
mov qword [rbp - 0x80], r12
mov r12, qword [rbp + 8]
jmp 0x18003c490
mov rax, qword [rbp + 0x168]
mov qword [rbp - 0x80], rax
jmp 0x18003c490
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x130], rax
mov r10, qword [rbp + 0x2b0]
dec r13d
cmp r13d, 0x8d
ja 0x18003c380
mov r11, qword [rsp + 0x78]
xor ecx, ecx
mov r13, qword [rbp - 0x40]
mov qword [rsp + 0x70], r11
jmp 0x18003c4d4
mov r10, qword [rbp + 0x2b0]
mov rax, qword [r10 + 0x20]
add rax, 0x1000
cmp qword [r10 + 0x40], rax
ja 0x1800421eb
cmp dword [rbp - 0x58], 0
je 0x18003c5bb
test r13d, r13d
je 0x18003c5bb
cmp r13d, 0x5c
jne 0x18003c50c
cmp byte [r11 + 1], 0x45
jne 0x18003c50c
inc r11
mov dword [rbp - 0x58], ecx
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
mov ebx, 0x1a
mov eax, ebx
sub eax, 0x1a
je 0x18003c560
cmp eax, 1
jne 0x18003c5b0
test dword [rbp - 0x50], 0x4000
je 0x18003c703
mov rax, qword [rbp - 0x80]
mov edx, 0xa
mov qword [rbp + 0xf0], rax
mov r8, rax
cmp edx, 0x12
ja case.0x18003c55e.3
lea r9, [0x180000000]
mov eax, edx
mov ecx, dword [r9 + rax*4 + 0x4253c]
add rcx, r9
jmp rcx
mov rax, qword [rbp + 0xf0]
test rax, rax
je 0x18003c5b0
test r8, r8
jne 0x18003c5a9
mov qword [rsp + 0x28], rcx
mov r9, r11
mov qword [rsp + 0x20], rcx
mov r8d, 0xf2
mov rcx, rax
mov rdx, r10
call fcn.1800428a0
mov r11, qword [rsp + 0x78]
xor ecx, ecx
mov r10, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2c8]
mov qword [rsp + 0x70], r11
mov qword [rbp + 0xf0], rcx
inc ebx
cmp ebx, 0x1c
jb 0x18003c511
lea eax, [r13 - 0x2a]
cmp eax, 1
jbe 0x18003c726
cmp r13d, 0x3f
je 0x18003c726
cmp r13d, 0x7b
jne 0x18003c5f9
lea r8, [r11 + 1]
xor ecx, ecx
lea edx, [r13 + 0x34]
call fcn.180047360
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
test eax, eax
jne 0x18003c726
mov rcx, qword [rbp + 0xf0]
xor ebx, ebx
mov qword [rbp - 0x68], rbx
mov r13d, ebx
mov r9d, ebx
test rcx, rcx
je 0x18003c735
mov edx, dword [rbp + 0xd8]
mov eax, edx
dec edx
mov dword [rbp + 0xd8], edx
test eax, eax
jg 0x18003c735
cmp qword [rbp + 0x2c8], rbx
jne 0x18003c662
mov rdx, qword [rbp + 0x2b0]
mov r9, r11
mov qword [rsp + 0x28], rbx
mov r8d, 0xf2
mov qword [rsp + 0x20], rbx
call fcn.1800428a0
mov r11, qword [rsp + 0x78]
mov r9d, ebx
mov qword [rsp + 0x70], r11
mov qword [rbp + 0xf0], rbx
jmp 0x18003c735
test r11, r11
je case.0x18003c55e.3
mov dword [r11], 3
jmp case.0x18003c55e.3
test r10, r10
je case.0x18003c55e.3
mov dword [r10], 0x18
jmp case.0x18003c55e.3
lea rax, [r8 + 4]
mov qword [rbp + 0x1b0], rax
jmp case.0x18003c55e.3
mov word [r8], 0xff53
add r8, 2
jmp case.0x18003c55e.3
test r8, r8
je case.0x18003c55e.3
mov dword [r8], 2
jmp case.0x18003c55e.3
mov eax, r11d
sub eax, dword [r10 + 0x30]
sar eax, 8
mov byte [r8], al
movzx eax, r11b
sub al, byte [r10 + 0x30]
mov byte [r8 + 1], al
mov word [r8 + 2], 0
dec edx
lea eax, [rdx + 0x81]
cmp eax, 0x83
ja 0x18003c541
jmp case.0x18003c55e.7
mov rax, qword [r8]
cmp dword [rax], 0xffffffff
sete byte [rbp + 0x1b0]
mov rax, qword [rbp + 0x1b0]
mov r11, qword [rsp + 0x78]
mov qword [rbp - 0x80], rax
mov r15d, 1
mov r13d, 0xfd
mov qword [rbp + 0x60], r15
mov rbx, qword [rbp - 0x80]
inc r13d
mov r8d, dword [rbp - 0x50]
xor r10d, r10d
jmp 0x180041fc6
mov eax, 1
mov r13d, eax
mov qword [rbp - 0x68], rax
mov r9d, eax
mov r8d, dword [rbp - 0x50]
test r8b, 8
je 0x18003c847
mov r10, qword [rbp + 0x2b0]
mov rdx, qword [rbp - 0x40]
movsxd rcx, edx
mov rax, qword [r10 + 0x18]
test byte [rcx + rax], 1
jne 0x18003ca31
cmp edx, 0x23
jne 0x18003c847
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
movzx eax, byte [r11]
test al, al
je 0x18003c83a
mov rcx, qword [r10 + 0x38]
movzx r8d, al
mov eax, dword [r10 + 0x78]
test eax, eax
je 0x18003c7d5
cmp r11, rcx
jae 0x18003c7fd
mov edx, dword [rbp - 0x70]
lea rbx, [r10 + 0x7c]
mov dword [rbp - 0x60], edx
lea r9, [rbp - 0x60]
mov dword [rsp + 0x28], 0xec
mov r8, rbx
mov qword [rsp + 0x20], rcx
mov rdx, r11
lea rcx, [rbp - 0x30]
mov dword [rbp - 0x30], eax
call fcn.18002f9d0
mov r11, qword [rsp + 0x78]
test eax, eax
jne 0x18003c817
mov r10, qword [rbp + 0x2b0]
jmp 0x18003c7fd
movsxd rdx, dword [r10 + 0x7c]
sub rcx, rdx
cmp r11, rcx
ja 0x18003c7fd
cmp r8b, byte [r10 + 0x80]
jne 0x18003c7fd
cmp edx, 1
je 0x18003c819
movzx eax, byte [r10 + 0x81]
cmp byte [r11 + 1], al
je 0x18003c819
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
movzx eax, byte [r11]
test al, al
je 0x18003c836
jmp 0x18003c781
mov edx, dword [rbx]
movsxd rax, edx
dec r11
add r11, rax
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
cmp byte [r11], 0
jne 0x18003ca31
mov r8d, dword [rbp - 0x50]
mov r9, qword [rbp - 0x68]
xor r10d, r10d
mov dword [rbp - 0x40], r10d
jmp 0x18003c84a
xor r10d, r10d
bt r8d, 0xe
jae 0x18003c93a
test r13d, r13d
jne 0x18003c93a
mov rax, qword [rbp - 0x80]
mov edx, 0xa
mov qword [rbp + 0xf0], rax
mov r8, rax
cmp edx, 0x12
ja case.0x18003c88d.3
lea rbx, [0x180000000]
mov eax, edx
mov ecx, dword [rbx + rax*4 + 0x42588]
add rcx, rbx
jmp rcx
test r11, r11
je case.0x18003c88d.3
mov dword [r11], 3
jmp case.0x18003c88d.3
mov rcx, qword [rbp + 0x2b0]
test rcx, rcx
je case.0x18003c88d.3
mov dword [rcx], 0x18
jmp case.0x18003c88d.3
lea rax, [r8 + 4]
mov qword [rbp + 0x198], rax
jmp case.0x18003c88d.3
mov word [r8], 0xff53
add r8, 2
jmp case.0x18003c88d.3
test r8, r8
je case.0x18003c88d.3
mov dword [r8], 2
jmp case.0x18003c88d.3
mov rcx, qword [rbp + 0x2b0]
mov eax, r11d
sub eax, dword [rcx + 0x30]
sar eax, 8
mov byte [r8], al
movzx eax, r11b
sub al, byte [rcx + 0x30]
mov byte [r8 + 1], al
mov word [r8 + 2], 0
dec edx
lea eax, [rdx + 0x81]
cmp eax, 0x83
ja 0x18003c871
jmp case.0x18003c88d.7
mov rax, qword [r8]
cmp dword [rax], 0xffffffff
sete byte [rbp + 0x198]
mov rbx, qword [rbp + 0x198]
mov r11, qword [rsp + 0x78]
mov r8d, dword [rbp - 0x50]
mov qword [rbp - 0x80], rbx
mov qword [rsp + 0x70], r11
jmp 0x18003c93e
mov rbx, qword [rbp - 0x80]
mov r13, qword [rbp - 0x40]
cmp r13d, 0x7c
ja case.0x18003c968.1
lea rdx, [0x180000000]
movsxd rax, r13d
movzx eax, byte [rdx + rax + 0x42608]
mov ecx, dword [rdx + rax*4 + 0x425d4]
add rcx, rdx
jmp rcx
mov r8d, 0xb8
mov eax, r8d
sub eax, 0xb8
je 0x18003c9e9
sub eax, 1
je 0x18003c9d3
sub eax, 1
je 0x18003c99a
cmp eax, 1
jne 0x18003ca01
mov eax, 1
mov dword [rbp + 8], eax
mov rax, qword [rbp + 8]
jmp 0x18003c133
mov r9, qword [rbp + 0x2c8]
test r9, r9
je 0x18003ca01
mov edx, dword [r9]
mov eax, 0x7fffffeb
mov r10, qword [rbp + 0x130]
sub eax, edx
movsxd rcx, eax
mov rax, rbx
sub rax, r10
cmp rcx, rax
jl 0x18004223d
sub edx, r10d
add edx, ebx
mov dword [r9], edx
jmp 0x18003ca01
mov rax, qword [rbp + 0x298]
mov qword [rax], rbx
mov rax, qword [rbp + 0x2a0]
mov qword [rax], r11
jmp 0x18003ca01
mov rcx, qword [rbp + 0x290]
mov eax, dword [rbp - 0x54]
mov dword [rcx], eax
mov rcx, qword [rbp + 0x2c0]
mov eax, dword [rbp - 0x10]
mov dword [rcx], eax
inc r8d
cmp r8d, 0xbc
jb 0x18003c970
mov ecx, 0x37
mov eax, ecx
sub eax, 0x37
je 0x18003ca45
cmp eax, 1
jne 0x18003ca62
mov byte [rbx], 0x1a
inc rbx
mov qword [rbp - 0x80], rbx
mov r11, qword [rsp + 0x78]
xor ecx, ecx
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
test byte [rbp - 0x50], 2
je 0x18003ca5c
mov eax, dword [rbp - 0x54]
mov edx, 0xffffffff
cmp eax, 0xfffffffe
cmove eax, edx
mov dword [rbp - 0x54], eax
xor eax, eax
mov qword [rbp - 0x18], rax
inc ecx
cmp ecx, 0x39
jb 0x18003ca16
mov ecx, 0xf2
nop
mov eax, ecx
sub eax, 0xf2
je 0x18003ca83
cmp eax, 0x7a
jne 0x18003ca89
mov byte [rbx], 0x1b
jmp 0x18003ca25
xor eax, eax
mov qword [rbp - 0x18], rax
add ecx, 0x7a
cmp ecx, 0x1e6
jb 0x18003ca70
mov ecx, 0xd4
nop dword [rax]
mov eax, ecx
sub eax, 0xd4
je 0x18003cadd
sub eax, 1
je 0x18003cad5
sub eax, 1
je 0x18003cac9
cmp eax, 1
jne 0x18003caee
mov eax, dword [rbp - 0x50]
shr eax, 2
and al, 1
or al, 0xc
mov byte [rbx], al
jmp 0x18003ca25
mov eax, dword [rbp - 0x10]
mov dword [rbp + 0x58], eax
mov qword [rbp - 0x18], rbx
jmp 0x18003caee
mov eax, dword [rbp - 0x54]
mov dword [rbp + 0x28], eax
jmp 0x18003caee
mov eax, dword [rbp - 0x54]
mov edx, 0xffffffff
cmp eax, 0xfffffffe
cmove eax, edx
mov dword [rbp - 0x54], eax
inc ecx
cmp ecx, 0xd8
jb 0x18003caa0
mov rax, qword [rbp + 0x2b0]
test dword [rax + 0x68], 0x2000000
je 0x18003c703
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x40
jmp 0x1800421f8
movzx eax, byte [r11 + 1]
mov qword [rbp - 0x18], rbx
cmp al, 0x3d
ja 0x18003cb5f
movabs rcx, 0x2400400000000000
bt rcx, rax
jae 0x18003cb5f
mov r9, r11
lea rcx, [rbp + 0x140]
xor edx, edx
mov r8d, 0xbd
call fcn.18006fdf0
mov r11, qword [rsp + 0x78]
test eax, eax
jne 0x18004224c
xor eax, eax
mov edx, eax
mov dword [rbp + 0x40], eax
mov eax, 1
nop dword [rax + rax]
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
movzx r9d, byte [r11]
mov qword [rbp - 0x40], r9
cmp r9d, 0x5c
jne 0x18003cbc3
cmp byte [r11 + 1], 0x45
lea rcx, [r11 + 1]
jne 0x18003cb9b
mov r11, rcx
jmp 0x18003cb70
mov r8d, 3
lea rdx, [0x1800bad7c]
call fcn.18008c6c0
test eax, eax
jne 0x18003cc45
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp + 0x40]
add r11, 3
jmp 0x18003cb66
test edx, edx
jne 0x18003cbd4
cmp r9d, 0x5e
jne 0x18003cbd4
mov edx, eax
mov dword [rbp + 0x40], eax
jmp 0x18003cb70
cmp r9d, 0x5d
jne 0x18003cc53
mov rax, qword [rbp + 0x2b0]
test dword [rax + 0x68], 0x2000000
je 0x18003cc53
mov ecx, 0x6e
nop
cmp ecx, 0x6e
je 0x18003cc08
cmp ecx, 0x974
jne 0x18003cc35
mov edx, dword [rbp - 0x54]
mov dword [rbp + 0x28], edx
jmp 0x18003ca2c
test edx, edx
mov r8d, 0xd
mov eax, 0x6d
cmovne eax, r8d
mov r8d, 0xffffffff
mov byte [rbx], al
inc rbx
mov eax, dword [rbp - 0x54]
cmp eax, 0xfffffffe
mov qword [rbp - 0x80], rbx
cmove eax, r8d
mov dword [rbp - 0x54], eax
add ecx, 0x906
cmp ecx, 0x120c
jbe 0x18003cbf0
jmp 0x18003cc49
mov r9, qword [rbp - 0x40]
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov r10, qword [rbp - 0x80]
xor r8d, r8d
mov eax, 0xffffffff
mov dword [rbp - 0x30], r8d
add r10, 4
mov dword [rbp - 0x78], eax
mov dword [rbp + 0x30], r8d
xorps xmm0, xmm0
mov qword [rbp - 0x68], r10
mov edx, eax
mov rax, r10
mov ebx, r8d
mov qword [rbp + 0x128], rax
mov dword [rbp + 0x48], ebx
movups xmmword [rbp + 0x78], xmm0
movups xmmword [rbp + 0x88], xmm0
test r9d, r9d
je 0x1800422be
mov r8d, dword [rbp - 0x70]
nop
mov dword [rbp - 0x60], ebx
mov r13d, ebx
test r8d, r8d
je 0x18003cdc1
cmp r9d, 0x7f
jbe 0x18003cdc1
movzx r9d, byte [r11]
mov qword [rbp - 0x40], r9
cmp r9d, 0xc0
jb 0x18003cdc1
mov r12, qword [rbp - 0x40]
mov r9d, 0xeb
mov edi, dword [rbp + 0x98]
mov r14d, dword [rbp + 0x164]
mov eax, r9d
sub eax, 0xeb
je 0x18003cd67
sub eax, 1
je 0x18003cd4e
cmp eax, 1
jne 0x18003cd89
mov eax, 1
movsxd r8, r14d
mov edx, eax
cmp rax, r8
jg 0x18003cd44
mov ecx, dword [rbp + 0x98]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r11]
sub ecx, 6
and eax, 0x3f
inc rdx
shl eax, cl
or r12d, eax
cmp rdx, r8
jle 0x18003cd20
mov dword [rbp + 0x98], ecx
mov edi, ecx
mov qword [rbp - 0x40], r12
add r11, r8
mov qword [rsp + 0x78], r11
jmp 0x18003cd89
lea rcx, [0x180000000]
movsxd rax, r14d
and r12d, dword [rcx + rax*4 + 0xb1c78]
mov ecx, edi
shl r12d, cl
jmp 0x18003cd89
mov eax, r12d
lea rcx, [0x180000000]
and eax, 0x3f
movzx r14d, byte [rax + rcx + 0xb1c90]
lea edi, [r14 + r14*2]
add edi, edi
mov dword [rbp + 0x98], edi
inc r9d
cmp r9d, 0xee
jb 0x18003cce5
mov edi, dword [rbp - 0x24]
mov rax, qword [rbp + 0x128]
mov edx, dword [rbp - 0x78]
mov r8d, dword [rbp - 0x70]
mov qword [rbp - 0x40], r12
mov r9, qword [rbp - 0x40]
mov r12, qword [rbp + 8]
mov dword [rbp + 0x164], r14d
mov r14d, dword [rbp - 0x20]
mov rcx, qword [rbp + 0x2c8]
test rcx, rcx
je 0x18003cdda
sub r10d, eax
mov qword [rbp - 0x68], rax
add dword [rcx], r10d
mov r10, rax
cmp dword [rbp - 0x58], 0
je 0x18003ce02
cmp r9d, 0x5c
jne 0x18003d0a5
cmp byte [r11 + 1], 0x45
jne 0x18003d0a5
xor ecx, ecx
mov dword [rbp - 0x58], ecx
inc r11
jmp 0x18003ddee
cmp r9d, 0x5b
jne 0x18003d025
movzx eax, byte [r11 + 1]
cmp al, 0x3d
ja 0x18003d0a5
movabs rcx, 0x2400400000000000
bt rcx, rax
jae 0x18003d0a5
mov r9, r11
lea rcx, [rbp + 0x140]
xor edx, edx
mov r8d, 0xbd
call fcn.18006fdf0
test eax, eax
je 0x18003d8e8
mov r11, qword [rsp + 0x78]
xor eax, eax
mov dword [rbp - 0x60], eax
mov rax, qword [rbp + 0x2b0]
mov qword [rsp + 0x70], r11
cmp byte [r11 + 1], 0x3a
mov rbx, qword [rax + 0x10]
jne 0x18004228a
add r11, 2
mov qword [rsp + 0x78], r11
cmp byte [r11], 0x5e
jne 0x18003ceb5
mov eax, 0x29
cmp eax, 0x29
je 0x18003cea2
cmp eax, 0xbc
jne 0x18003cea9
inc r11
mov dword [rbp - 0x30], 1
mov qword [rsp + 0x78], r11
jmp 0x18003cea9
mov dword [rbp - 0x60], 1
add eax, 0x93
cmp eax, 0x14f
jb 0x18003ce85
mov r13, qword [rbp + 0x140]
lea r8, [rbp + 0x48]
mov eax, r13d
mov rdx, r11
sub eax, r11d
mov ecx, 0x56
mov dword [rbp + 0x48], eax
call fcn.18003bb50
test eax, eax
js 0x18004226e
test byte [rbp - 0x50], 1
je 0x18003cef3
cmp eax, 2
mov r10d, 0
cmovle eax, r10d
jmp 0x18003cef6
xor r10d, r10d
lea ecx, [rax + rax*2]
movsxd rdx, ecx
lea rcx, [0x180000000]
movsxd rax, dword [rcx + rdx*4 + 0xb8850]
mov r9d, dword [rcx + rdx*4 + 0xb8858]
movups xmm0, xmmword [rax + rbx]
movups xmm1, xmmword [rax + rbx + 0x10]
movsxd rax, dword [rcx + rdx*4 + 0xb8854]
movups xmmword [rbp + 0x1b8], xmm0
movups xmmword [rbp + 0x1c8], xmm1
test eax, eax
js 0x18003cf94
mov r8, rax
lea rcx, [rbp + 0x1b8]
lea rax, [rbp + 0x1b8]
mov edx, 0x20
sub r8, rax
add r8, rbx
test r9d, r9d
js 0x18003cf80
nop word [rax + rax]
movzx eax, byte [rcx + r8]
or byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x18003cf60
jmp 0x18003cf94
movzx eax, byte [rcx + r8]
lea rcx, [rcx + 1]
not al
and byte [rcx - 1], al
sub rdx, 1
jne 0x18003cf80
mov eax, r9d
neg eax
test r9d, r9d
cmovns eax, r9d
cmp eax, 1
jne 0x18003cfae
and byte [rbp + 0x1b9], 0xc3
jmp 0x18003cfba
cmp eax, 2
jne 0x18003cfba
and byte [rbp + 0x1c3], 0x7f
cmp dword [rbp - 0x60], 0
mov rcx, r10
mov edx, 0x20
je 0x18003d000
nop dword [rax + rax]
movzx eax, byte [rbp + rcx + 0x1b8]
lea rcx, [rcx + 1]
not al
or byte [rbp + rcx + 0x77], al
sub rdx, 1
jne 0x18003cfd0
lea ebx, [rdx + 0xa]
mov edx, dword [rbp - 0x78]
lea r11, [r13 + 1]
jmp 0x18003dde0
movzx eax, byte [rbp + rcx + 0x1b8]
or byte [rbp + rcx + 0x78], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x18003d000
lea ebx, [rdx + 0xa]
mov edx, dword [rbp - 0x78]
lea r11, [r13 + 1]
jmp 0x18003dde0
cmp r9d, 0x5c
jne 0x18003d0a5
mov r8, qword [rbp + 0x2d8]
lea r9, [rbp - 8]
mov eax, 1
lea rdx, [rsp + 0x70]
mov dword [rbp + 0x18], eax
mov ecx, 0xf7
mov eax, dword [rbp - 0x50]
mov dword [rbp - 8], eax
mov rax, qword [rbp + 0x2b0]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x70], eax
lea rax, [rbp + 0x18]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.18006b160
mov rcx, qword [rbp + 0x2d8]
mov r9d, eax
mov qword [rbp - 0x40], r9
cmp dword [rcx], 0
jne 0x180042231
neg eax
cmp eax, 5
jne 0x18003d144
mov r9d, 8
mov qword [rbp - 0x40], r9
mov r11, qword [rsp + 0x78]
mov r10, qword [rbp + 0x2b0]
cmp byte [r11 + 1], 0x5c
jne 0x18003d0d1
xor ecx, ecx
cmp byte [r11 + 2], 0x45
lea rax, [r11 + 2]
jne 0x18003d0d1
mov qword [rsp + 0x78], rax
mov r11, rax
cmp byte [rax + 1], 0x5c
mov dword [rbp - 0x58], ecx
je 0x18003d0b5
mov rcx, r11
mov qword [rbp + 0x48], rcx
cmp r9d, 0xd
je 0x18003d0e4
cmp r9d, 0xa
jne 0x18003d0e9
or dword [r10 + 0x6c], 0x20
mov ebx, dword [rbp - 0x58]
test ebx, ebx
jne 0x18003daf2
cmp byte [r11 + 1], 0x2d
jne 0x18003daf2
add r11, 2
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
cmp byte [r11], 0x5c
jne 0x18003d939
nop word [rax + rax]
cmp byte [r11 + 1], 0x45
jne 0x18003d8f1
add r11, 2
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
cmp byte [r11], 0x5c
je 0x18003d120
jmp 0x18003d939
cmp eax, 0x16
jne 0x18003d152
lea r9d, [rax + 0x42]
jmp 0x18003d09c
cmp r9d, 0xffffffef
jne 0x18003d163
mov r9d, 0x52
jmp 0x18003d09c
cmp r9d, 0xffffffe6
jne 0x18003d1a2
mov r11, qword [rsp + 0x78]
cmp byte [r11 + 1], 0x5c
jne 0x18003d188
cmp byte [r11 + 2], 0x45
jne 0x18003d188
mov edx, dword [rbp - 0x78]
add r11, 2
jmp 0x18003dde3
mov r10, qword [rbp - 0x68]
mov eax, 1
mov edx, dword [rbp - 0x78]
mov ecx, eax
mov r8d, dword [rbp - 0x70]
mov dword [rbp - 0x58], eax
jmp 0x18003ddee
cmp r9d, 0xffffffe7
je 0x18003d223
test r9d, r9d
jns 0x18003d0a0
mov r10, qword [rbp + 0x2b0]
add ebx, 2
cmp qword [rbp + 0x2c8], 0
mov dword [rbp + 0x48], ebx
mov rdx, qword [r10 + 0x10]
jne 0x18003d364
mov eax, 0xfffffffa
lea r11, [0x180000000]
sub eax, r9d
cmp eax, 5
ja case.default.0x18003d1f5
cdqe
mov ecx, dword [r11 + rax*4 + 0x42688]
add rcx, r11
jmp rcx
lea rcx, [rbp + 0x78]
add rdx, 0x40
mov r8d, 0x20
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x18003d210
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x78]
jmp 0x18003dde3
mov dword [rbp - 0x30], 1
lea rcx, [rbp + 0x78]
add rdx, 0x40
mov r8d, 0x20
nop word [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
not al
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x18003d250
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x78]
jmp 0x18003dde3
lea rcx, [rbp + 0x78]
add rdx, 0xa0
mov r8d, 0x20
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x18003d283
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x78]
jmp 0x18003dde3
mov dword [rbp - 0x30], 1
lea rcx, [rbp + 0x78]
add rdx, 0xa0
mov r8d, 0x20
nop dword [rax + rax]
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
not al
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x18003d2c0
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x78]
jmp 0x18003dde3
lea rax, [rbp + 0x78]
mov r8d, 0x20
sub rdx, rax
lea rcx, [rbp + 0x78]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x18003d300
and byte [rbp + 0x79], 0xf7
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x78]
jmp 0x18003dde3
lea rax, [rbp + 0x78]
mov dword [rbp - 0x30], 1
sub rdx, rax
lea rcx, [rbp + 0x78]
mov r8d, 0x20
nop dword [rax]
movzx eax, byte [rcx + rdx]
lea rcx, [rcx + 1]
not al
or byte [rcx - 1], al
sub r8, 1
jne 0x18003d340
or byte [rbp + 0x79], 8
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x78]
jmp 0x18003dde3
cmp r9d, 0xfffffff9
je 0x18003d223
cmp r9d, 0xfffffffa
je 0x18003d223
cmp r9d, 0xfffffff5
je 0x18003d223
cmp r9d, 0xfffffff6
je 0x18003d223
cmp r9d, 0xfffffff7
je 0x18003d223
cmp r9d, 0xfffffff8
je 0x18003d223
lea r11, [0x180000000]
cmp r9d, 0xffffffed
jne 0x18003d4bb
or byte [rbp + 0x79], 2
or byte [rbp + 0x7c], 1
or byte [rbp + 0x8c], 1
cmp dword [rbp - 0x70], 0
je 0x18003d223
mov r12, qword [rbp - 0x68]
lea r13d, [r9 + 0x1c]
xor eax, eax
mov ebx, eax
cmp ebx, 8
ja case.default.0x18003d3ec
mov eax, ebx
mov ecx, dword [r11 + rax*4 + 0x426a0]
add rcx, r11
jmp rcx
mov byte [r12], 1
inc r12
mov dword [rsp + 0x70], 0x205f
jmp 0x18003d46c
mov dword [rsp + 0x70], 0x180e
mov r8d, 6
lea rcx, [rsp + 0x70]
mov rdx, r12
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
jmp case.default.0x18003d3ec
mov dword [rsp + 0x70], 0x2000
jmp 0x18003d411
mov dword [rsp + 0x70], 0x202f
jmp 0x18003d411
mov dword [rbp + 0x30], 1
jmp 0x18003d485
mov dword [rsp + 0x70], 0x3000
jmp 0x18003d411
mov dword [rsp + 0x70], 0x200a
jmp 0x18003d46c
mov byte [r12], 2
jmp 0x18003d48a
mov dword [rsp + 0x70], 0x1680
mov r8d, 6
lea rcx, [rsp + 0x70]
mov rdx, r12
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
mov byte [r12], 1
inc r12
inc ebx
lea r11, [0x180000000]
sub r13, 1
jne 0x18003d3d6
mov ebx, dword [rbp + 0x48]
mov r11, qword [rsp + 0x78]
mov r10, r12
mov edx, dword [rbp - 0x78]
mov qword [rbp - 0x68], r12
mov r12, qword [rbp + 8]
jmp 0x18003dde7
cmp r9d, 0xffffffee
jne 0x18003d6ab
mov esi, dword [rbp + 0x9c]
xor r9d, r9d
mov edx, r9d
mov ecx, 0x33
mov eax, ecx
sub eax, 0x32
je 0x18003d503
cmp eax, 1
jne 0x18003d510
mov ecx, edx
mov esi, 0xff
sub ecx, eax
je 0x18003d4fe
sub ecx, 3
je 0x18003d4f7
cmp ecx, 0x10
jne 0x18003d503
mov esi, 0xfe
jmp 0x18003d503
mov esi, 0xfd
movsxd rax, edx
mov ecx, 0x32
or byte [rbp + rax + 0x78], sil
dec ecx
cmp ecx, 0x31
ja 0x18003d4d6
inc edx
mov dword [rbp + 0x9c], esi
cmp edx, 0x20
jl 0x18003d4d1
mov r8d, dword [rbp - 0x70]
mov esi, dword [rbp - 0x38]
test r8d, r8d
je 0x18003d69a
mov r12, qword [rbp - 0x68]
mov ebx, r9d
mov r13d, 0xb
cmp ebx, 0xa
ja case.default.0x18003d557
mov eax, ebx
mov ecx, dword [r11 + rax*4 + 0x426c4]
add rcx, r11
jmp rcx
mov dword [rsp + 0x70], 0x1fff
jmp 0x18003d669
mov r8d, 6
mov dword [rsp + 0x70], 0x167f
mov rdx, r12
lea rcx, [rsp + 0x70]
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
mov dword [rsp + 0x70], 0x1681
jmp 0x18003d661
mov byte [r12], 2
lea rcx, [rsp + 0x70]
inc r12
mov dword [rsp + 0x70], 0x200b
mov rdx, r12
mov r8d, 6
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
mov dword [rsp + 0x70], 0x202e
jmp 0x18003d669
mov r8d, 6
mov dword [rsp + 0x70], 0x205e
mov rdx, r12
lea rcx, [rsp + 0x70]
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
mov dword [rsp + 0x70], 0x2060
jmp 0x18003d661
mov r8d, 6
mov dword [rsp + 0x70], 0x180d
mov rdx, r12
lea rcx, [rsp + 0x70]
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
mov dword [rsp + 0x70], 0x180f
jmp 0x18003d661
mov byte [r12], 2
inc r12
jmp case.default.0x18003d557
mov dword [rsp + 0x70], 0x2fff
jmp 0x18003d669
mov dword [rsp + 0x70], 0x3001
jmp 0x18003d661
mov dword [rsp + 0x70], 0x2030
jmp 0x18003d669
mov dword [rsp + 0x70], 0x7fffffff
jmp 0x18003d669
mov dword [rbp + 0x30], 1
mov dword [rsp + 0x70], 0x100
mov byte [r12], 2
inc r12
mov r8d, 6
lea rcx, [rsp + 0x70]
mov rdx, r12
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
inc ebx
lea r11, [0x180000000]
sub r13, 1
jne 0x18003d541
jmp 0x18003d4a0
mov r11, qword [rsp + 0x78]
mov r10, qword [rbp - 0x68]
mov edx, dword [rbp - 0x78]
jmp 0x18003ddeb
cmp r9d, 0xffffffeb
jne 0x18003d74f
or byte [rbp + 0x79], 0x3c
or byte [rbp + 0x88], 0x20
mov r8d, dword [rbp - 0x70]
test r8d, r8d
je 0x18003d69a
mov r12, qword [rbp - 0x68]
mov ebx, 0x3f
cmp ebx, 0x3f
je 0x18003d735
cmp ebx, 0x46e
je 0x18003d72b
cmp ebx, 0x89d
jne 0x18003d73c
mov r8d, 6
mov dword [rsp + 0x70], 0x2028
mov rdx, r12
lea rcx, [rsp + 0x70]
call fcn.18002fe80
movsxd rcx, eax
mov r8d, 6
add r12, rcx
mov dword [rsp + 0x70], 0x2029
mov rdx, r12
lea rcx, [rsp + 0x70]
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
jmp 0x18003d73c
mov byte [r12], 2
inc r12
jmp 0x18003d73c
mov dword [rbp + 0x30], 1
add ebx, 0x42f
cmp ebx, 0xc8d
jbe 0x18003d6d2
jmp 0x18003d4a0
cmp r9d, 0xffffffec
jne 0x18003d8ca
mov r14d, dword [rbp + 0xd0]
xor eax, eax
mov edx, eax
nop dword [rax]
nop dword [rax + rax]
mov ecx, 0x87
mov eax, ecx
sub eax, 0x84
je 0x18003d7d9
sub eax, 1
je 0x18003d7d2
sub eax, 1
je 0x18003d795
cmp eax, 1
jne 0x18003d7e1
mov r14d, 0xff
jmp 0x18003d7e1
mov ecx, edx
sub ecx, 1
je 0x18003d7a8
cmp ecx, 0xf
je 0x18003d7ce
mov ecx, 0x85
jmp 0x18003d7e1
mov ecx, 0xe0
nop dword [rax]
mov eax, ecx
sub eax, 0xe0
je 0x18003d7c0
cmp eax, 1
je 0x18003d7ce
jmp 0x18003d7c4
xor r14d, 0x1c
inc ecx
cmp ecx, 0xe2
jb 0x18003d7b0
xor r14d, 0x20
mov ecx, 0x85
jmp 0x18003d7e1
movsxd rax, edx
or byte [rbp + rax + 0x78], r14b
dec ecx
cmp ecx, 0x83
ja 0x18003d775
inc edx
mov dword [rbp + 0xd0], r14d
cmp edx, 0x20
jl 0x18003d770
mov r8d, dword [rbp - 0x70]
mov r14d, dword [rbp - 0x20]
test r8d, r8d
je 0x18003d69a
mov r12, qword [rbp - 0x68]
mov ebx, 0xfc
mov eax, ebx
sub eax, 0xf9
je 0x18003d875
sub eax, 1
je 0x18003d84a
sub eax, 1
je 0x18003d840
cmp eax, 1
jne 0x18003d8b7
mov byte [r12], 2
inc r12
mov dword [rbp + 0x30], eax
jmp 0x18003d8b7
mov dword [rsp + 0x70], 0x100
jmp 0x18003d89e
mov r8d, 6
mov dword [rsp + 0x70], 0x2027
mov rdx, r12
lea rcx, [rsp + 0x70]
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
mov byte [r12], 2
inc r12
jmp 0x18003d8b7
mov r8d, 6
mov dword [rsp + 0x70], 0x2029
mov rdx, r12
lea rcx, [rsp + 0x70]
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
mov dword [rsp + 0x70], 0x7fffffff
mov r8d, 6
lea rcx, [rsp + 0x70]
mov rdx, r12
call fcn.18002fe80
movsxd rcx, eax
add r12, rcx
dec ebx
cmp ebx, 0xf8
ja 0x18003d817
jmp 0x18003d4a0
mov ebx, dword [rbp - 0x50]
mov r11, qword [rsp + 0x78]
test bl, 0x40
jne 0x18004229c
movzx r9d, byte [r11]
mov qword [rbp - 0x40], r9
jmp 0x18003d0ac
mov r9, qword [rbp - 0x40]
jmp 0x18003d0a0
cmp byte [r11], 0x5c
jne 0x18003d939
cmp byte [r11 + 1], 0x51
jne 0x18003d939
add r11, 2
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
cmp byte [r11], 0x5c
jne 0x18003d92f
cmp byte [r11 + 1], 0x45
jne 0x18003d92f
add r11, 2
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
cmp byte [r11], 0x5c
je 0x18003d8f7
jmp 0x18003d939
mov eax, 1
mov ebx, eax
mov dword [rbp - 0x58], eax
movzx eax, byte [r11]
test al, al
je 0x18003dd1e
test ebx, ebx
jne 0x18003d951
cmp al, 0x5d
je 0x18003dd1e
cmp dword [rbp - 0x70], 0
mov r13d, eax
je 0x18003da1b
cmp eax, 0xc0
jb 0x18003da1b
mov edi, dword [rbp + 0x190]
mov r9d, 0xfe
mov r15d, 1
nop dword [rax + rax]
mov eax, r9d
sub eax, 0xfc
je 0x18003d9ea
sub eax, r15d
je 0x18003d9ab
cmp eax, r15d
jne 0x18003d9f5
mov eax, r13d
lea rcx, [0x180000000]
and eax, 0x3f
movzx edi, byte [rax + rcx + 0xb1c90]
jmp 0x18003d9f5
movsxd r8, edi
lea rax, [0x180000000]
lea ecx, [rdi + rdi*2]
mov rdx, r15
add ecx, ecx
mov eax, dword [rax + r8*4 + 0xb1c78]
and r13d, eax
shl r13d, cl
cmp r15, r8
jg 0x18003d9f5
movzx eax, byte [rdx + r11]
sub ecx, 6
and eax, 0x3f
inc rdx
shl eax, cl
or r13d, eax
cmp rdx, r8
jle 0x18003d9d0
jmp 0x18003d9f5
movsxd rax, edi
add r11, rax
mov qword [rsp + 0x78], r11
dec r9d
cmp r9d, 0xfb
ja 0x18003d980
mov r15, qword [rbp + 0x60]
mov r9, qword [rbp - 0x40]
mov dword [rbp + 0x190], edi
mov edi, dword [rbp - 0x24]
mov qword [rsp + 0x70], r11
test ebx, ebx
jne 0x18003db85
cmp r13d, 0x5c
jne 0x18003db85
mov ebx, 0xa3
mov eax, ebx
sub eax, 0xa3
je 0x18003da71
cmp eax, 1
jne 0x18003dac7
test r13d, r13d
jns 0x18003dac7
cmp r13d, 0xfffffffb
jne 0x18003da55
lea r13d, [rax + 7]
jmp 0x18003dac7
cmp r13d, 0xffffffea
jne 0x18003da63
mov r13d, 0x58
jmp 0x18003dac7
cmp r13d, 0xffffffef
jne 0x18003dae1
mov r13d, 0x52
jmp 0x18003dac7
mov r8, qword [rbp + 0x2d8]
lea r9, [rbp - 8]
mov eax, 1
lea rdx, [rbp + 0x18]
mov dword [rsp + 0x70], eax
mov ecx, 0xf7
mov eax, dword [rbp - 0x50]
mov dword [rbp - 8], eax
mov eax, dword [r10 + 0x58]
mov dword [rbp + 0x18], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.18006b160
mov rcx, qword [rbp + 0x2d8]
mov r13d, eax
cmp dword [rcx], 0
jne 0x180042231
inc ebx
cmp ebx, 0xa5
jae 0x18003db77
mov r10, qword [rbp + 0x2b0]
jmp 0x18003da32
mov r11, qword [rbp + 0x48]
mov r9, qword [rbp - 0x40]
mov qword [rsp + 0x78], r11
mov r13d, dword [rbp - 0x60]
cmp dword [rbp - 0x70], 0
je 0x18003dd4f
cmp r9d, 0xff
jg 0x18003db1d
mov r10d, dword [rbp - 0x50]
test r10b, 1
je 0x18003dd53
cmp r9d, 0x7f
jle 0x18003dd53
mov r12, qword [rbp - 0x68]
mov ebx, 0x96
nop word [rax + rax]
cmp ebx, 0x96
je 0x18003dd2b
cmp ebx, 0x27d8
jne 0x18003dd32
mov byte [r12], 1
lea rcx, [rsp + 0x70]
inc r12
mov dword [rsp + 0x70], r9d
mov rdx, r12
mov r8d, 6
call fcn.18002fe80
mov r9, qword [rbp - 0x40]
movsxd rcx, eax
add r12, rcx
jmp 0x18003dd32
mov r11, qword [rsp + 0x78]
mov r9, qword [rbp - 0x40]
mov qword [rsp + 0x70], r11
cmp r13d, r9d
jl 0x1800422ac
je 0x18003daee
cmp r13d, 0xd
je 0x18003dba0
cmp r13d, 0xa
jne 0x18003dbab
mov rax, qword [rbp + 0x2b0]
or dword [rax + 0x6c], 0x20
mov r8d, dword [rbp - 0x70]
test r8d, r8d
je 0x18003dbd3
mov ebx, dword [rbp - 0x50]
cmp r13d, 0xff
jg 0x18003dc83
and ebx, 1
je 0x18003dbd3
cmp r13d, 0x7f
jg 0x18003dc86
mov r10, qword [rbp - 0x68]
mov ebx, dword [rbp - 0x60]
mov eax, r13d
sub eax, r9d
inc ebx
add ebx, eax
mov edx, r13d
cmp qword [rbp + 0x2c8], 0
mov dword [rbp + 0x48], ebx
mov dword [rbp - 0x78], edx
jne 0x18003ddeb
cmp r9d, r13d
jg 0x18003ddeb
mov r9d, dword [rbp - 0x50]
mov rcx, qword [rbp - 0x40]
and r9d, 1
mov r12, qword [rbp + 0x2b0]
movsxd r8, ecx
nop word [rax + rax]
mov eax, ecx
test ecx, ecx
jns 0x18003dc29
lea eax, [rcx + 7]
sar eax, 3
movsxd rdx, eax
mov eax, dword [rbp - 0x40]
and eax, 7
movzx ecx, byte [rbp + rdx + 0x78]
bts ecx, eax
mov byte [rbp + rdx + 0x78], cl
test r9d, r9d
je 0x18003dc65
mov rax, qword [r12 + 8]
movzx ecx, byte [r8 + rax]
mov edx, ecx
and ecx, 7
shr rdx, 3
movzx eax, byte [rbp + rdx + 0x78]
bts eax, ecx
mov byte [rbp + rdx + 0x78], al
mov rcx, qword [rbp - 0x40]
inc r8
inc ecx
mov qword [rbp - 0x40], rcx
cmp ecx, r13d
jle 0x18003dc20
mov r12, qword [rbp + 8]
mov edx, dword [rbp - 0x78]
jmp 0x18003dde7
and ebx, 1
mov rax, qword [rbp - 0x68]
lea rcx, [rsp + 0x70]
mov r8d, 6
mov dword [rbp + 0x30], 1
mov dword [rsp + 0x70], r9d
mov byte [rax], 2
inc rax
mov rdx, rax
mov qword [rbp - 0x68], rax
call fcn.18002fe80
movsxd rcx, eax
mov r8d, 6
mov rax, qword [rbp - 0x68]
add rax, rcx
mov dword [rsp + 0x70], r13d
mov rdx, rax
mov qword [rbp - 0x68], rax
lea rcx, [rsp + 0x70]
call fcn.18002fe80
mov r10, qword [rbp - 0x68]
movsxd rcx, eax
add r10, rcx
mov qword [rbp - 0x68], r10
test ebx, ebx
je 0x18003dd09
mov r9, qword [rbp - 0x40]
cmp r9d, 0x7f
jg 0x18003dd09
mov r11, qword [rsp + 0x78]
mov r13d, 0x7f
mov r8d, dword [rbp - 0x70]
jmp 0x18003dbd7
mov ecx, dword [rbp - 0x60]
mov ebx, ecx
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x78]
mov dword [rbp + 0x48], ecx
jmp 0x18003dde7
mov r11, rcx
mov qword [rsp + 0x78], rcx
jmp 0x18003daf2
mov dword [rbp + 0x30], 1
add ebx, 0x2742
cmp ebx, 0x4e84
jbe 0x18003db30
mov ebx, r13d
mov dword [rbp + 0x48], ebx
jmp 0x18003d4a3
mov r10d, dword [rbp - 0x50]
mov r12, qword [rbp + 0x2b0]
mov r8d, 0xc8
mov ebx, r13d
mov eax, r8d
sub eax, 0xc8
je 0x18003dd7a
cmp eax, 0x69
jne 0x18003ddcc
mov edx, r9d
mov dword [rbp - 0x78], edx
jmp 0x18003ddcf
mov eax, r9d
test r9d, r9d
jns 0x18003dd86
lea eax, [r9 + 7]
sar eax, 3
movsxd rdx, eax
mov eax, r9d
and eax, 7
movzx ecx, byte [rbp + rdx + 0x78]
bts ecx, eax
mov byte [rbp + rdx + 0x78], cl
test r10b, 1
je 0x18003ddca
mov rax, qword [r12 + 8]
movsxd rcx, r9d
movzx r9d, byte [rcx + rax]
mov edx, r9d
mov eax, r9d
shr rdx, 3
and eax, 7
movzx ecx, byte [rbp + rdx + 0x78]
bts ecx, eax
mov byte [rbp + rdx + 0x78], cl
inc ebx
mov edx, dword [rbp - 0x78]
add r8d, 0x69
cmp r8d, 0x19a
jb 0x18003dd63
mov r12, qword [rbp + 8]
mov dword [rbp + 0x48], ebx
mov r10, qword [rbp - 0x68]
mov r8d, dword [rbp - 0x70]
mov ecx, dword [rbp - 0x58]
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
movzx eax, byte [r11]
mov r9d, eax
mov qword [rbp - 0x40], r9
test eax, eax
je 0x1800422be
cmp eax, 0x5d
mov rax, qword [rbp + 0x128]
jne 0x18003cca0
test ecx, ecx
jne 0x18003cca0
mov r13d, dword [rbp + 0x30]
mov ecx, dword [rbp + 0x40]
cmp ebx, 1
jne 0x18003df31
test r13d, r13d
jne 0x18003df31
test r8d, r8d
je 0x18003de54
test ecx, ecx
je 0x18003de54
cmp edx, 0x80
jge 0x18003df31
mov ebx, 0x8b
nop dword [rax]
mov eax, ebx
sub eax, 0x8a
je 0x18003df98
cmp eax, 1
jne 0x18003df1a
mov eax, dword [rbp - 0x10]
mov dword [rbp + 0x58], eax
test ecx, ecx
je 0x18003ded8
mov ecx, 0x28
cmp ecx, 0x28
je 0x18003deb4
cmp ecx, 0x230
je 0x18003dea0
cmp ecx, 0x438
je 0x18003ca2c
jmp 0x18003deca
mov rax, qword [rbp - 0x80]
mov byte [rax], 0x1e
mov byte [rax + 1], dl
add rax, 2
mov qword [rbp - 0x80], rax
jmp 0x18003deca
mov eax, dword [rbp - 0x54]
mov r9d, 0xffffffff
cmp eax, 0xfffffffe
cmove eax, r9d
mov dword [rbp - 0x54], eax
mov dword [rbp + 0x28], eax
add ecx, 0x208
cmp ecx, 0x618
jbe 0x18003de85
test r8d, r8d
je 0x18003df0a
cmp edx, 0x7f
jle 0x18003df0a
mov dword [rsp + 0x70], edx
lea rcx, [rsp + 0x70]
lea rdx, [rbp + 0xb8]
mov r8d, 6
call fcn.18002fe80
mov r8d, dword [rbp - 0x70]
mov r15, rax
mov qword [rbp + 0x60], rax
jmp 0x18003df1a
mov r15d, 1
mov byte [rbp + 0xb8], dl
mov qword [rbp + 0x60], r15
mov edx, dword [rbp - 0x78]
dec ebx
mov ecx, dword [rbp + 0x40]
cmp ebx, 0x89
ja 0x18003de60
mov ebx, dword [rbp + 0x48]
mov eax, dword [rbp - 0x54]
mov edx, 0xffffffff
movups xmm6, xmmword [rbp + 0x88]
cmp eax, 0xfffffffe
movups xmm7, xmmword [rbp + 0x78]
cmove eax, edx
mov dword [rbp - 0x54], eax
mov dword [rbp + 0x28], eax
mov eax, dword [rbp - 0x10]
mov dword [rbp + 0x58], eax
test r13d, r13d
je 0x18003e07e
cmp dword [rbp - 0x30], 0
jne 0x18003e07e
mov r13d, 0x11e
nop
cmp r13d, 0x11e
je 0x18003e04d
cmp r13d, 0x1ce
je 0x18003dfb6
cmp r13d, 0x27e
je 0x18003ca2c
jmp 0x18003e06a
mov r11, qword [rsp + 0x78]
mov r13d, 0xfe
mov rbx, qword [rbp - 0x80]
inc r13d
mov r8d, dword [rbp - 0x50]
xor r10d, r10d
jmp 0x180041fc6
mov rdx, qword [rbp - 0x80]
test ecx, ecx
setne al
mov byte [rdx], al
test ebx, ebx
jle 0x18003e029
mov r12, qword [rbp - 0x68]
mov ebx, 0xf0
nop
cmp ebx, 0xf0
je 0x18003dfeb
cmp ebx, 0x1590
jne 0x18003e00f
lea rdx, [r12 + 0x20]
mov qword [rbp - 0x80], rdx
jmp 0x18003e00f
or byte [rdx], 2
mov r8, r12
inc rdx
sub r8, rdx
mov qword [rbp - 0x80], rdx
lea rcx, [rdx + 0x20]
call fcn.180088a90
mov rdx, qword [rbp - 0x80]
movups xmmword [rdx], xmm7
movups xmmword [rdx + 0x10], xmm6
add ebx, 0x14a0
cmp ebx, 0x2940
jbe 0x18003dfd0
mov r12, qword [rbp + 8]
mov ebx, dword [rbp + 0x48]
mov ecx, dword [rbp + 0x40]
jmp 0x18003e031
mov rdx, qword [rbp - 0x68]
mov qword [rbp - 0x80], rdx
mov r8, qword [rbp - 0x18]
mov eax, edx
sub eax, r8d
sar eax, 8
mov byte [r8 + 1], al
movzx eax, dl
sub al, r8b
mov byte [r8 + 2], al
jmp 0x18003e06a
mov rax, qword [rbp - 0x68]
mov byte [rax], 0
inc rax
mov qword [rbp - 0x68], rax
mov rax, qword [rbp - 0x80]
mov byte [rax], 0x50
add rax, 3
mov qword [rbp - 0x80], rax
add r13d, 0xb0
cmp r13d, 0x32e
jb 0x18003df70
cmp ecx, dword [rbp - 0x30]
mov r13, qword [rbp - 0x80]
setne al
add al, 0x4e
mov byte [r13], al
inc r13
test ecx, ecx
je 0x18003e0d1
cmp qword [rbp + 0x2c8], 0
jne 0x18003e0db
lea r8, [rbp + 0x78]
mov edx, 0x20
sub r8, r13
mov rcx, r13
nop
movzx eax, byte [r8 + rcx]
lea rcx, [rcx + 1]
not al
mov byte [rcx - 1], al
sub rdx, 1
jne 0x18003e0b0
add r13, 0x20
mov qword [rbp - 0x80], r13
jmp 0x18003ca2c
movups xmmword [r13], xmm7
movups xmmword [r13 + 0x10], xmm6
add r13, 0x20
mov qword [rbp - 0x80], r13
jmp 0x18003ca2c
mov ebx, 0x101
nop dword [rax]
mov eax, ebx
sub eax, 0xff
je 0x18003e15b
sub eax, 1
je 0x18003e113
cmp eax, 1
jne 0x18003e143
test r9, r9
jne 0x18003e143
mov eax, dword [rbp + 0x14]
mov dword [rbp - 0x48], eax
jmp 0x18003c703
mov r9, qword [rbp + 0x2d8]
lea rax, [rbp + 0x10]
lea rdx, [r11 + 1]
mov qword [rsp + 0x20], rax
mov r8d, 0xd
lea rcx, [rbp + 0x14]
call fcn.180076910
mov r11, rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
dec ebx
cmp ebx, 0xfe
jbe 0x18003e153
mov r9, qword [rbp - 0x68]
jmp 0x18003e0f0
mov ebx, dword [rbp + 0x14]
mov dword [rbp - 0x48], ebx
jmp 0x18003e186
mov rcx, qword [rbp + 0x2d8]
mov eax, dword [rbp + 0x14]
mov dword [rbp - 0x48], eax
cmp dword [rcx], 0
jne 0x1800421f8
mov edx, 0x91
mov ebx, eax
add edx, 0x67a7
jmp 0x18003e212
mov ebx, dword [rbp - 0x48]
mov eax, 0xf7
nop dword [rax + rax]
cmp eax, 0xf7
je 0x18003e1ba
cmp eax, 0x485d
je 0x18003e1ab
cmp eax, 0x8fc3
je 0x18003e2b5
jmp 0x18003e1bf
mov ecx, 0xffffffff
mov ebx, ecx
mov dword [rbp - 0x48], ecx
mov dword [rbp + 0x14], ecx
jmp 0x18003e1bf
xor ecx, ecx
mov dword [rbp + 0x10], ecx
add eax, 0x4766
cmp eax, 0xd632
jbe 0x18003e190
jmp 0x18003e1d0
mov ebx, dword [rbp - 0x48]
mov ecx, 0xaf
mov eax, ecx
sub eax, 0xaf
je 0x18003e1e9
cmp eax, 1
je 0x18003e2b5
jmp 0x18003e1fe
mov eax, 1
mov dword [rbp + 0x10], eax
mov eax, 0xffffffff
mov ebx, eax
mov dword [rbp - 0x48], eax
mov dword [rbp + 0x14], eax
inc ecx
cmp ecx, 0xb1
jb 0x18003e1d5
jmp 0x18003e20d
mov ebx, dword [rbp - 0x48]
mov edx, 0x91
cmp edx, 0x26dea
ja case.0x18003c968.40
cmp edx, 0x13786
ja 0x18003e347
je 0x18003e2c8
cmp edx, 0x91
je 0x18003e2a5
cmp edx, 0x6838
je 0x18003e276
cmp edx, 0xcfdf
jne 0x18003f138
cmp dword [rbp + 0x10], ebx
mov r8d, 0
mov ebx, dword [rbp - 0x48]
mov eax, 0x200
cmove eax, r8d
mov dword [rbp + 0xa0], r8d
mov dword [rbp + 0x158], eax
add edx, 0x67a7
jmp 0x18003e212
cmp qword [rbp - 0x18], 0
je 0x1800422d0
cmp dword [rbp + 0x10], 0
jne 0x18003f138
mov eax, dword [rbp + 0x28]
add edx, 0x67a7
mov ebx, dword [rbp - 0x48]
mov dword [rbp - 0x54], eax
mov eax, dword [rbp + 0x58]
mov dword [rbp - 0x10], eax
jmp 0x18003e212
xor eax, eax
mov dword [rbp + 0x10], eax
mov eax, 1
mov dword [rbp - 0x48], eax
mov dword [rbp + 0x14], eax
mov ebx, dword [rbp - 0x48]
mov edx, 0x91
add edx, 0x67a7
jmp 0x18003e212
mov rax, qword [rbp - 0x18]
lea rcx, [r11 + 1]
xor r8d, r8d
mov qword [rbp + 0x38], rax
movzx eax, byte [rcx]
mov dword [rbp + 0x50], r8d
cmp al, 0x2b
jne 0x18003e308
mov ebx, dword [rbp - 0x48]
mov r11, rcx
mov dword [rbp - 0x34], r8d
add edx, 0x67a7
mov dword [rbp + 0x50], 1
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rcx
jmp 0x18003e212
cmp al, 0x3f
jne 0x18003e330
mov eax, dword [rbp + 0x120]
mov r11, rcx
mov ebx, dword [rbp - 0x48]
add edx, 0x67a7
mov dword [rbp - 0x34], eax
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rcx
jmp 0x18003e212
mov eax, dword [rbp + 0xe0]
add edx, 0x67a7
mov ebx, dword [rbp - 0x48]
mov dword [rbp - 0x34], eax
jmp 0x18003e212
cmp edx, 0x19f2d
je 0x18003e385
cmp edx, 0x206d4
jne 0x18003f138
mov ecx, dword [rbp + 0x158]
xor eax, eax
mov qword [rbp - 0x18], rax
mov rax, qword [rbp + 0x2b0]
or dword [rax + 0x70], ecx
xor ecx, ecx
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
mov r10, qword [rbp - 0x18]
movzx ecx, byte [r10]
lea eax, [rcx - 0x1c]
cmp al, 1
jbe 0x18003eee3
cmp cl, 0x1e
jne 0x18003e477
mov ecx, 0x7f
nop word [rax + rax]
mov eax, ecx
sub eax, 0x7f
je 0x18003e450
cmp eax, 1
jne 0x18003e464
cmp dword [rbp + 0x50], 0
jne 0x18003f086
test ebx, ebx
jns 0x18003f086
mov eax, dword [rbp - 0x50]
lea rcx, [r11 + 1]
mov r8, qword [rbp + 0x2b0]
lea r9, [rbp - 0x60]
mov dword [rbp - 0x60], eax
xor ebx, ebx
mov eax, dword [rbp - 0x70]
mov edx, 0xa9
mov dword [rsp + 0x70], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x18]
mov qword [rsp + 0x20], rax
mov dword [rbp - 8], r13d
mov dword [rbp + 0x18], 0x1e
call fcn.18003ac20
test eax, eax
je 0x18003f564
mov rdx, qword [rsp + 0x78]
mov eax, 0x92
mov qword [rsp + 0x70], rdx
mov dword [rbp - 0x34], ebx
mov dword [rbp + 0x50], 1
jmp 0x18003f09f
movzx r13d, byte [r10 + 1]
mov eax, 0xd
mov dword [rbp + 0xa0], eax
mov qword [rbp - 0x40], r13
inc ecx
cmp ecx, 0x81
jb 0x18003e3b0
jmp 0x18003f57d
cmp cl, 0x17
jae 0x18003e48b
mov rdx, qword [rsp + 0x70]
mov eax, 0x93
jmp 0x18003f0a5
lea eax, [rcx - 0x4e]
cmp al, 3
jbe 0x18003edad
lea eax, [rcx - 0x5d]
cmp al, 3
jbe 0x18003e4b8
cmp cl, 0x6d
je 0x18003f12f
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0xb
jmp 0x1800421f8
mov eax, 0xcb
mov dword [rbp - 0x30], eax
sub eax, 0xc7
je 0x18003e5b3
sub eax, 1
je 0x18003e538
sub eax, 1
je 0x18003e507
sub eax, 1
je 0x18003e4f0
cmp eax, 1
jne 0x18003ed92
xor eax, eax
mov dword [rbp + 0x11c], eax
jmp 0x18003ed92
mov eax, dword [rbp - 0x80]
sub eax, r10d
mov dword [rbp + 0x44], eax
xor eax, eax
mov qword [rbp + 0xe8], rax
jmp 0x18003ed92
cmp byte [r10], 0x60
jne 0x18003ed92
cmp byte [r10 + 3], 0x66
jne 0x18003ed92
mov rax, qword [rbp + 0x2d8]
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov dword [rax], 0x37
jmp 0x1800421f8
cmp ebx, 0xffffffff
jne 0x18003ed92
mov r12, qword [rbp - 0x80]
mov edx, 0xa0
nop word [rax + rax]
mov eax, edx
sub eax, 0x9f
je 0x18003e567
cmp eax, 1
jne 0x18003e59d
mov qword [rbp + 0x1a0], r10
jmp 0x18003e59d
mov r8, qword [rbp + 0x1a0]
nop
movzx ecx, byte [r8 + 1]
movzx eax, byte [r8 + 2]
shl rcx, 8
or rcx, rax
add r8, rcx
cmp byte [r8], 0x55
jne 0x18003e570
mov edi, r12d
mov qword [rbp + 0x1a0], r8
sub edi, r8d
mov dword [rbp + 0x11c], edi
dec edx
cmp edx, 0x9e
ja 0x18003e550
mov edi, dword [rbp - 0x24]
mov r12, qword [rbp + 8]
jmp 0x18003ed92
mov r9d, dword [rbp + 0x10]
test r9d, r9d
jne 0x18003e7bf
cmp ebx, 1
jg 0x18003e695
mov r13d, dword [rbp - 0x48]
mov ebx, 0x24
mov eax, ebx
sub eax, 0x21
je 0x18003e670
sub eax, 1
je 0x18003e651
sub eax, 1
je 0x18003e64b
cmp eax, 1
jne 0x18003e680
mov rax, qword [rbp - 0x80]
lea r9, [rsp + 0x70]
mov r8, qword [rbp + 0xc8]
lea rcx, [rbp - 8]
mov qword [rsp + 0x28], r10
mov edx, 0x11b
mov byte [rax], 0
mov eax, dword [rbp - 0x70]
mov dword [rbp - 8], eax
mov eax, 1
mov dword [rsp + 0x70], eax
mov rax, qword [rbp + 0x2b0]
mov qword [rsp + 0x20], rax
call fcn.1800704f0
mov rax, qword [rbp - 0x18]
movsxd r8, dword [rbp + 0x44]
mov rdx, rax
lea rcx, [rax + 1]
call fcn.180088a90
mov r10, qword [rbp - 0x18]
jmp 0x18003e680
inc qword [rbp - 0x80]
jmp 0x18003e680
test r13d, r13d
jne 0x18003e680
mov byte [r10], 0x6f
inc r10
mov r11, qword [rsp + 0x78]
mov qword [rbp - 0x18], r10
mov qword [rsp + 0x70], r11
jmp 0x18003f12f
movzx eax, byte [rbp - 0x34]
add al, 0x67
mov byte [r10], al
inc r10
mov qword [rbp - 0x18], r10
dec ebx
cmp ebx, 0x20
ja 0x18003e5d2
mov ebx, dword [rbp - 0x48]
dec ebx
jmp 0x18003e955
mov r12, qword [rbp - 0x80]
mov ebx, 0x116
mov r14d, dword [rbp - 0x34]
mov r15, qword [rbp + 0xe8]
movsxd rdi, dword [rbp + 0x44]
mov esi, dword [rbp - 0x70]
mov eax, ebx
sub eax, 0x116
je 0x18003e74a
sub eax, 1
je 0x18003e739
sub eax, 1
je 0x18003e725
sub eax, 1
je 0x18003e6f5
cmp eax, 1
jne 0x18003e78a
mov rcx, qword [rbp + 0x170]
mov eax, ecx
mov byte [r10 + 1], cl
sar eax, 8
mov byte [r10], al
add r10, 2
mov qword [rbp - 0x18], r10
jmp 0x18003e78a
mov byte [r10], 0x5e
inc r10
mov qword [rbp - 0x18], r10
mov rcx, r10
test r15, r15
jne 0x18003e716
xor eax, eax
mov r15, r10
mov qword [rbp + 0x170], rax
jmp 0x18003e78a
sub ecx, r15d
mov r15, r10
mov qword [rbp + 0x170], rcx
jmp 0x18003e78a
lea eax, [r14 + 0x67]
add r12, 4
mov byte [r10], al
inc r10
mov qword [rbp - 0x18], r10
jmp 0x18003e78a
mov r8, rdi
lea rcx, [r10 + 4]
mov rdx, r10
call fcn.180088a90
jmp 0x18003e786
mov r8, qword [rbp + 0xc8]
lea r9, [rsp + 0x70]
mov eax, 4
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x70], eax
lea rcx, [rbp - 8]
mov rax, qword [rbp + 0x2b0]
mov edx, 0x11b
mov qword [rsp + 0x20], rax
mov byte [r12], 0
mov dword [rbp - 8], esi
call fcn.1800704f0
mov r10, qword [rbp - 0x18]
inc ebx
cmp ebx, 0x11b
jb 0x18003e6b0
mov ebx, dword [rbp - 0x48]
mov edi, dword [rbp - 0x24]
dec ebx
mov esi, dword [rbp - 0x38]
mov r14d, dword [rbp - 0x20]
mov qword [rbp + 0xe8], r15
mov r15, qword [rbp + 0x60]
mov qword [rbp - 0x80], r12
mov r12, qword [rbp + 8]
jmp 0x18003e955
cmp r9d, 1
jle 0x18003e94e
mov r8, qword [rbp + 0x2c8]
test r8, r8
je 0x18003e84f
mov edx, 0x61
nop word [rax + rax]
mov eax, edx
sub eax, 0x60
je 0x18003e7fe
cmp eax, 1
jne 0x18003e843
lea r11d, [r9 - 1]
imul r11d, dword [rbp + 0x54]
mov dword [rbp + 0x194], r11d
jmp 0x18003e843
movd xmm0, dword [rbp + 0x54]
lea eax, [r9 - 1]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
comisd xmm1, xmm8
ja 0x180042224
mov ecx, dword [r8]
mov eax, 0x7fffffeb
mov r11d, dword [rbp + 0x194]
sub eax, ecx
cmp eax, r11d
jl 0x180042224
lea eax, [r11 + rcx]
mov dword [r8], eax
dec edx
cmp edx, 0x5f
ja 0x18003e7e0
jmp 0x18003e94e
cmp dword [rbp + 0xfc], 0
je 0x18003e864
mov eax, dword [rbp - 0x10]
test eax, eax
cmovs eax, dword [rbp - 0x54]
mov dword [rbp - 0x10], eax
cmp r9d, 1
jle 0x18003e94e
mov r12, qword [rbp - 0x80]
lea r13d, [r9 - 1]
mov r15, qword [rbp + 0xc8]
mov edi, dword [rbp + 0x44]
mov ebx, 0x119
mov eax, ebx
sub eax, 0x119
je 0x18003e8f5
cmp eax, 1
jne 0x18003e919
mov r9, qword [rbp + 0x208]
mov r8d, dword [rbp + 0x44]
cmp r15, r9
jae 0x18003e8e7
mov rdx, qword [rbp + 0x2b0]
nop
movzx eax, byte [r15 + 1]
movzx ecx, byte [r15]
shl ecx, 8
or ecx, eax
mov rax, qword [rdx + 0x40]
add ecx, r8d
sar ecx, 8
mov byte [rax], cl
movzx ecx, r8b
add cl, byte [r15 + 1]
add r15, 2
mov rax, qword [rdx + 0x40]
mov byte [rax + 1], cl
add qword [rdx + 0x40], 2
cmp r15, r9
jb 0x18003e8b0
mov edi, dword [rbp + 0x44]
mov r15, r9
movsxd rax, r8d
add r12, rax
jmp 0x18003e919
mov rax, qword [rbp + 0x2b0]
mov rdx, r10
movsxd r8, edi
mov rcx, qword [rax + 0x40]
mov qword [rbp + 0x208], rcx
mov rcx, r12
call fcn.180088a90
mov r10, qword [rbp - 0x18]
inc ebx
cmp ebx, 0x11b
jb 0x18003e885
mov qword [rbp + 0xc8], r15
mov qword [rbp - 0x80], r12
sub r13, 1
jne 0x18003e880
mov edi, dword [rbp - 0x24]
mov r15, qword [rbp + 0x60]
mov r12, qword [rbp + 8]
mov ebx, dword [rbp - 0x48]
mov r9d, dword [rbp + 0x10]
test ebx, ebx
jle 0x18003e95d
sub ebx, r9d
mov dword [rbp + 0x14], ebx
test ebx, ebx
mov dword [rbp - 0x48], ebx
js 0x18003ec4b
mov r8, qword [rbp + 0x2c8]
test r8, r8
je 0x18003e9bd
test ebx, ebx
jle 0x18003e9bd
mov eax, dword [rbp + 0x54]
add eax, 7
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
mov ecx, eax
imul ecx, ebx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
sub ecx, 6
mulsd xmm1, xmm0
comisd xmm1, xmm8
ja 0x180042224
mov edx, dword [r8]
mov eax, 0x7fffffeb
sub eax, edx
cmp eax, ecx
jl 0x180042224
lea eax, [rcx + rdx]
mov dword [r8], eax
jmp 0x18003eb66
lea r13d, [rbx - 1]
test r13d, r13d
js 0x18003eb66
mov r12, qword [rbp - 0x80]
mov esi, 4
mov r14d, dword [rbp - 0x34]
mov r15, qword [rbp + 0xc8]
mov edi, dword [rbp + 0x44]
mov ebx, 7
cmp ebx, 7
je 0x18003eb12
cmp ebx, 0xa
je 0x18003ea0f
cmp ebx, 0xd
jne 0x18003eb2f
mov r15, qword [rbp + 0x180]
movsxd rax, edi
add r12, rax
jmp 0x18003eb2f
test r13d, r13d
je 0x18003ea88
mov ecx, 0x7a
nop dword [rax]
mov eax, ecx
sub eax, 0x79
je 0x18003ea64
cmp eax, 1
jne 0x18003ea7d
mov rax, qword [rbp + 0xe8]
mov byte [r12], 0x5e
inc r12
mov rdx, r12
test rax, rax
jne 0x18003ea52
mov dword [rbp + 0x178], eax
mov qword [rbp + 0xe8], r12
jmp 0x18003ea7d
sub edx, eax
mov qword [rbp + 0xe8], r12
mov qword [rbp + 0x178], rdx
jmp 0x18003ea7d
mov rdx, qword [rbp + 0x178]
mov eax, edx
mov byte [r12 + 1], dl
sar eax, 8
mov byte [r12], al
add r12, 2
dec ecx
cmp ecx, 0x78
ja 0x18003ea20
mov qword [rbp - 0x80], r12
movsxd r8, edi
mov rdx, r10
mov rcx, r12
call fcn.180088a90
mov r9, r15
cmp r15, qword [rbp + 0x180]
jae 0x18003eb2f
mov r10, qword [rbp + 0x2b0]
mov eax, 1
mov r11d, dword [rbp + 0x44]
test r13d, r13d
mov edx, eax
mov r8d, eax
cmovne edx, esi
cmovne r8d, esi
nop word [rax + rax]
movzx eax, byte [r9 + 1]
movzx ecx, byte [r9]
shl ecx, 8
or ecx, eax
mov rax, qword [r10 + 0x40]
add ecx, r11d
add ecx, edx
sar ecx, 8
mov byte [rax], cl
lea ecx, [r11 + r8]
add cl, byte [r9 + 1]
add r9, 2
mov rax, qword [r10 + 0x40]
mov byte [rax + 1], cl
add qword [r10 + 0x40], 2
cmp r9, qword [rbp + 0x180]
jb 0x18003ead0
mov edi, dword [rbp + 0x44]
jmp 0x18003eb2f
mov rax, qword [rbp + 0x2b0]
mov rax, qword [rax + 0x40]
mov qword [rbp + 0x180], rax
lea eax, [r14 + 0x67]
mov byte [r12], al
inc r12
mov r10, qword [rbp - 0x18]
add ebx, 3
cmp ebx, 0x10
jb 0x18003e9e6
sub r13d, 1
mov qword [rbp + 0xc8], r15
mov qword [rbp - 0x80], r12
jns 0x18003e9e1
mov edi, dword [rbp - 0x24]
mov esi, dword [rbp - 0x38]
mov r14d, dword [rbp - 0x20]
mov r15, qword [rbp + 0x60]
mov r12, qword [rbp + 8]
mov rdx, qword [rbp + 0xe8]
test rdx, rdx
je 0x18003ed8e
mov r12, qword [rbp - 0x80]
mov esi, dword [rbp + 0x160]
mov r14d, dword [rbp + 0x15c]
nop word [rax + rax]
mov ecx, 0x1d
cmp ecx, 0x1d
je 0x18003ebeb
cmp ecx, 0x58d
je 0x18003ebc0
cmp ecx, 0xafd
jne 0x18003ec13
mov r8, qword [rbp + 0x1e0]
mov eax, esi
sar eax, 8
mov byte [r8 + 1], al
mov byte [r8 + 2], sil
jmp 0x18003ec13
test r14d, r14d
jne 0x18003ebcb
xor eax, eax
mov edx, eax
jmp 0x18003ebd1
movsxd rax, r14d
sub rdx, rax
mov byte [r12], 0x55
mov eax, esi
sar eax, 8
mov byte [r12 + 1], al
mov byte [r12 + 2], sil
add r12, 3
jmp 0x18003ec13
mov esi, r12d
mov r8, r12
sub esi, edx
inc esi
movsxd rax, esi
sub r8, rax
mov qword [rbp + 0x1e0], r8
movzx r14d, byte [r8 + 1]
movzx eax, byte [r8 + 2]
shl r14d, 8
or r14d, eax
add ecx, 0x570
cmp ecx, 0x1050
jbe 0x18003eb95
mov dword [rbp + 0x15c], r14d
mov dword [rbp + 0x160], esi
mov qword [rbp + 0xe8], rdx
mov qword [rbp - 0x80], r12
test rdx, rdx
jne 0x18003eb90
jmp 0x18003ed83
mov r12, qword [rbp - 0x80]
mov edx, 0x10d
mov r14d, dword [rbp - 0x34]
mov edi, dword [rbp - 0x70]
movsxd rsi, dword [rbp + 0x11c]
mov r15, qword [rbp + 0x1e8]
mov dword [rbp - 0x60], edx
nop dword [rax]
cmp edx, 0x10d
je 0x18003ed5a
cmp edx, 0xaf7b
je 0x18003ed3a
cmp edx, 0x15de9
jne 0x18003ed60
cmp qword [rbp + 0x2c8], 0
lea eax, [r14 + 0x56]
mov byte [r15], al
jne 0x18003ed60
mov r8, qword [rbp + 0x188]
cmp byte [r8], 0x5d
je 0x18003ed60
mov r13d, 0xcf
mov eax, r13d
sub eax, 0xcf
je 0x18003ecd1
cmp eax, 1
je 0x18003ed1c
jmp 0x18003ed22
mov rbx, r8
mov dword [rsp + 0x70], edi
nop dword [rax + rax]
mov r9, r15
lea rdx, [rsp + 0x70]
mov r8, rbx
mov ecx, 0x12b
call fcn.1800474f0
test eax, eax
jne 0x18003ed12
movzx ecx, byte [rbx + 1]
movzx eax, byte [rbx + 2]
shl rcx, 8
or rcx, rax
add rbx, rcx
cmp byte [rbx], 0x54
je 0x18003ece0
jmp 0x18003ed22
mov rax, qword [rbp + 0x188]
add byte [rax], 3
mov r13d, 0xd0
mov r8, qword [rbp + 0x188]
inc r13d
cmp r13d, 0xd1
jb 0x18003ecc0
mov edx, dword [rbp - 0x60]
jmp 0x18003ed60
movzx ecx, byte [r15 + 1]
mov r8, r15
movzx eax, byte [r15 + 2]
shl rcx, 8
or rcx, rax
sub r8, rcx
mov qword [rbp + 0x188], r8
jmp 0x18003ed60
mov r15, r12
sub r15, rsi
add edx, 0xae6e
mov dword [rbp - 0x60], edx
cmp edx, 0x20b4a
jbe 0x18003ec70
mov edi, dword [rbp - 0x24]
mov qword [rbp + 0x1e8], r15
mov r15, qword [rbp + 0x60]
mov r12, qword [rbp + 8]
mov r14d, dword [rbp - 0x20]
mov esi, dword [rbp - 0x38]
mov r10, qword [rbp - 0x18]
mov eax, dword [rbp - 0x30]
dec eax
mov dword [rbp - 0x30], eax
cmp eax, 0xc6
jbe 0x18003eec1
mov ebx, dword [rbp - 0x48]
jmp 0x18003e4c0
mov edx, 0x36
cmp edx, 0x36
jne 0x18003eeaf
test ebx, ebx
je 0x18003eed0
cmp ebx, 1
je 0x18003edd3
mov rax, qword [rbp + 0x2b0]
or dword [rax + 0x6c], 1
mov r8d, dword [rbp + 0x10]
test r8d, r8d
jne 0x18003ee16
cmp ebx, 0xffffffff
jne 0x18003edf9
mov rcx, qword [rbp - 0x80]
movzx eax, byte [rbp - 0x34]
add al, 0x46
mov byte [rcx], al
inc rcx
mov qword [rbp - 0x80], rcx
jmp 0x18003eeaf
cmp ebx, 1
jne 0x18003ee36
mov rcx, qword [rbp - 0x80]
movzx eax, byte [rbp - 0x34]
add al, 0x4a
mov byte [rcx], al
inc rcx
mov qword [rbp - 0x80], rcx
jmp 0x18003eeaf
cmp r8d, 1
jne 0x18003ee36
cmp ebx, 0xffffffff
jne 0x18003ee36
mov rcx, qword [rbp - 0x80]
movzx eax, byte [rbp - 0x34]
add al, 0x48
mov byte [rcx], al
inc rcx
mov qword [rbp - 0x80], rcx
jmp 0x18003eeaf
mov r12, qword [rbp - 0x80]
mov ecx, 0x118
mov r10d, dword [rbp - 0x34]
mov eax, ecx
sub eax, 0x116
je 0x18003ee8d
sub eax, 1
je 0x18003ee74
cmp eax, 1
jne 0x18003ee96
lea eax, [r10 + 0x4c]
mov byte [r12], al
mov eax, r8d
sar eax, 8
mov byte [r12 + 1], al
mov byte [r12 + 2], r8b
add r12, 3
jmp 0x18003ee96
cmp ebx, 0xffffffff
mov eax, 0
cmove ebx, eax
mov eax, ebx
mov dword [rbp + 0x14], ebx
sar eax, 8
mov byte [r12], al
jmp 0x18003ee96
mov byte [r12 + 1], bl
add r12, 2
dec ecx
cmp ecx, 0x115
ja 0x18003ee43
mov r10, qword [rbp - 0x18]
mov qword [rbp - 0x80], r12
mov r12, qword [rbp + 8]
mov dword [rbp - 0x48], ebx
add edx, 0x1e2a
cmp edx, 0x1e2a
jbe 0x18003edb2
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
jmp 0x18003f57d
mov qword [rbp - 0x80], r10
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
jmp 0x18003f12f
mov eax, 0x129
cmp eax, 0x129
je 0x18003eefe
add eax, 0x68
cmp eax, 0x191
jb 0x18003eee8
jmp 0x18003f57d
mov r9d, dword [rbp - 0x70]
mov rcx, qword [rbp - 0x80]
test r9d, r9d
je 0x18003f059
cmp byte [rcx - 1], 0
lea r13, [rcx - 1]
jge 0x18003f059
mov r12, qword [rbp - 0x40]
mov ebx, 0xc0
mov eax, ebx
sub eax, 0xbc
je 0x18003ef9e
sub eax, 1
je 0x18003ef82
sub eax, 1
je 0x18003ef76
sub eax, 1
je 0x18003ef4c
cmp eax, 1
jne 0x18003efa3
mov qword [rbp + 0x138], r13
jmp 0x18003efa3
mov rdx, qword [rbp + 0x138]
movzx eax, byte [rdx]
and al, 0xc0
cmp al, 0x80
jne 0x18003efa3
nop dword [rax]
movzx eax, byte [rdx - 1]
dec rdx
and al, 0xc0
cmp al, 0x80
je 0x18003ef60
mov qword [rbp + 0x138], rdx
jmp 0x18003efa3
mov r12d, ecx
sub r12d, dword [rbp + 0x138]
jmp 0x18003efa3
mov rdx, qword [rbp + 0x138]
lea rcx, [rbp + 0x110]
movsxd r8, r12d
call fcn.180088a90
mov rcx, qword [rbp - 0x80]
jmp 0x18003efa3
bts r12d, 7
dec ebx
cmp ebx, 0xbb
ja 0x18003ef26
mov r10, qword [rbp - 0x18]
mov r9d, dword [rbp - 0x70]
mov qword [rbp - 0x40], r12
mov r13, qword [rbp - 0x40]
mov r12, qword [rbp + 8]
mov r8, qword [rbp + 0x2b0]
cmp dword [rbp + 0x50], 0
jne 0x18003f086
cmp dword [rbp - 0x48], 0
jge 0x18003f086
mov eax, dword [rbp - 0x50]
mov edx, 0xa9
mov rcx, qword [rsp + 0x70]
mov dword [rbp - 0x60], eax
inc rcx
movzx eax, byte [r10]
mov dword [rbp + 0x18], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x110]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x18]
mov dword [rsp + 0x70], r9d
lea r9, [rbp - 0x60]
mov qword [rsp + 0x20], rax
mov dword [rbp - 8], r13d
call fcn.18003ac20
test eax, eax
je 0x18003f564
mov rdx, qword [rsp + 0x78]
xor eax, eax
mov dword [rbp - 0x34], eax
mov eax, 0x92
mov dword [rbp + 0x50], 1
mov qword [rsp + 0x70], rdx
jmp 0x18003f09f
cmp dword [rbp + 0x10], 1
movzx eax, byte [rcx - 1]
mov r13d, eax
mov qword [rbp - 0x40], r13
jle 0x18003efc5
mov r8, qword [rbp + 0x2b0]
mov ecx, dword [r8 + 0x70]
or ecx, eax
or ecx, dword [rbp + 0x6c]
mov dword [rbp - 0x10], ecx
jmp 0x18003efcc
mov rdx, qword [rsp + 0x70]
mov eax, 0x92
jmp 0x18003f09f
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x70], rdx
mov eax, dword [rbp - 0x78]
mov r10, qword [rbp - 0x18]
dec eax
mov dword [rbp - 0x78], eax
cmp eax, 0x8d
jbe 0x18003f578
add eax, 0xffffff72
cmp eax, 5
ja case.default.0x18003f0cf
lea r8, [0x180000000]
mov ecx, dword [r8 + rax*4 + 0x426f0]
add rcx, r8
jmp rcx
movzx eax, byte [r10]
sub al, 0xf
cmp al, 1
jbe 0x18003f0f9
mov eax, 0xffffffff
mov dword [rbp + 0xf8], eax
mov dword [rbp + 0xd4], eax
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x1f0], rax
jmp case.default.0x18003f0cf
movzx eax, byte [r10 + 1]
mov dword [rbp + 0xf8], eax
movzx eax, byte [r10 + 2]
mov dword [rbp + 0xd4], eax
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x1f0], rax
jmp case.default.0x18003f0cf
cmp dword [rbp - 0x48], 0
mov qword [rbp - 0x80], r10
jne case.default.0x18003f0cf
mov r11, qword [rsp + 0x70]
mov r13, qword [rbp - 0x40]
mov edx, 0x19f2d
mov ebx, dword [rbp - 0x48]
add edx, 0x67a7
jmp 0x18003e212
cmp dword [rbp - 0x70], 0
je 0x18003f177
cmp r13d, 0x80
jl 0x18003f177
mov rcx, qword [rbp - 0x80]
lea rdx, [rbp + 0x110]
mov ebx, r13d
and ebx, 7
mov r8d, ebx
call fcn.180088a90
add qword [rbp - 0x80], rbx
jmp 0x18003f092
mov r8, qword [rbp - 0x80]
mov byte [r8], r13b
inc r8
mov qword [rbp - 0x80], r8
jmp 0x18003f092
movzx r13d, byte [r10]
mov ecx, 0x1a
mov dword [rbp + 0xa0], ecx
mov qword [rbp - 0x40], r13
jmp case.default.0x18003f0cf
mov ebx, dword [rbp - 0x48]
cmp ebx, 1
je 0x18003f1b5
mov rax, qword [rbp + 0x2b0]
or dword [rax + 0x6c], 1
mov r8d, dword [rbp - 0x34]
mov ecx, dword [rbp + 0xa0]
add r8d, ecx
mov r9d, dword [rbp + 0x10]
mov dword [rbp - 0x34], r8d
test r9d, r9d
jne 0x18003f259
cmp ebx, 0xffffffff
jne 0x18003f1ef
lea eax, [r8 + 0x1f]
mov r8, qword [rbp - 0x80]
mov byte [r8], al
inc r8
mov qword [rbp - 0x80], r8
jmp 0x18003f092
cmp ebx, 1
jne 0x18003f20b
lea eax, [r8 + 0x23]
mov r8, qword [rbp - 0x80]
mov byte [r8], al
inc r8
mov qword [rbp - 0x80], r8
jmp 0x18003f092
mov ecx, pe_nt_image_headers64
mov eax, ecx
sub eax, 0x107
je 0x18003f22e
cmp eax, 1
jne 0x18003f24a
lea eax, [r8 + 0x25]
mov r8, qword [rbp - 0x80]
mov byte [r8], al
inc r8
jmp 0x18003f242
mov r8, qword [rbp - 0x80]
mov eax, ebx
sar eax, 8
mov byte [r8], al
mov byte [r8 + 1], bl
add r8, 2
mov qword [rbp - 0x80], r8
mov r8d, dword [rbp - 0x34]
dec ecx
cmp ecx, 0x106
ja 0x18003f210
jmp 0x18003f092
cmp r9d, 1
jne 0x18003f2ec
cmp ebx, 0xffffffff
jne 0x18003f27f
lea eax, [r8 + 0x21]
mov r8, qword [rbp - 0x80]
mov byte [r8], al
inc r8
mov qword [rbp - 0x80], r8
jmp 0x18003f092
mov ecx, 0x118
cmp ecx, 0x118
je 0x18003f2b6
cmp ecx, 0x2df0
jne 0x18003f2d9
mov r8, qword [rbp - 0x80]
lea eax, [rbx - 1]
sar eax, 8
mov byte [r8], al
lea eax, [rbx - 1]
mov byte [r8 + 1], al
add r8, 2
mov qword [rbp - 0x80], r8
mov r8d, dword [rbp - 0x34]
jmp 0x18003f2d9
mov r9, qword [rbp + 0x1f0]
mov qword [rbp - 0x80], r9
cmp ebx, 1
je 0x18003eed4
lea eax, [r8 + 0x25]
mov byte [r9], al
lea rax, [r9 + 1]
mov qword [rbp - 0x80], rax
add ecx, 0x2cd8
cmp ecx, 0x59b0
jbe 0x18003f284
jmp 0x18003f092
mov eax, 0xa3
mov dword [rbp - 0x60], eax
jmp 0x18003f304
mov r8d, dword [rbp - 0x34]
sub eax, 0xa2
je 0x18003f339
cmp eax, 1
jne 0x18003f4d6
mov r8, qword [rbp - 0x80]
lea eax, [rcx + 0x27]
mov byte [r8], al
mov eax, r9d
sar eax, 8
mov byte [r8 + 1], al
mov byte [r8 + 2], r9b
add r8, 3
mov qword [rbp - 0x80], r8
jmp 0x18003f4d6
test ebx, ebx
jns 0x18003f3c6
cmp dword [rbp - 0x70], 0
je 0x18003f38c
cmp r13d, 0x80
jl 0x18003f38c
mov rcx, qword [rbp - 0x80]
lea rdx, [rbp + 0x110]
mov ebx, r13d
and ebx, 7
mov r8d, ebx
call fcn.180088a90
mov r8, qword [rbp - 0x80]
movzx eax, byte [rbp - 0x34]
add r8, rbx
mov ebx, dword [rbp - 0x48]
add al, 0x1f
mov r9d, dword [rbp + 0x10]
mov byte [r8], al
inc r8
mov qword [rbp - 0x80], r8
jmp 0x18003f4d6
mov r8, qword [rbp - 0x80]
mov eax, dword [rbp + 0xf8]
mov byte [r8], r13b
inc r8
test eax, eax
js 0x18003f3b1
mov ecx, dword [rbp + 0xd4]
mov byte [r8], al
mov byte [r8 + 1], cl
add r8, 2
movzx eax, byte [rbp - 0x34]
add al, 0x1f
mov byte [r8], al
inc r8
mov qword [rbp - 0x80], r8
jmp 0x18003f4d6
cmp ebx, r9d
je 0x18003f4d6
mov r13d, 0x73
mov eax, r13d
sub eax, 0x73
je 0x18003f45a
sub eax, 0x28
je 0x18003f44f
cmp eax, 0x28
jne 0x18003f4c5
cmp ebx, 1
jne 0x18003f406
mov rdx, qword [rbp - 0x80]
lea eax, [r8 + 0x23]
mov byte [rdx], al
inc rdx
mov qword [rbp - 0x80], rdx
jmp 0x18003f4c5
mov ecx, 0xce
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xce
je 0x18003f432
cmp eax, 1
jne 0x18003f443
mov rdx, qword [rbp - 0x80]
mov eax, ebx
sar eax, 8
mov byte [rdx], al
mov byte [rdx + 1], bl
add rdx, 2
jmp 0x18003f43f
mov rdx, qword [rbp - 0x80]
lea eax, [r8 + 0x25]
mov byte [rdx], al
inc rdx
mov qword [rbp - 0x80], rdx
inc ecx
cmp ecx, 0xd0
jb 0x18003f410
jmp 0x18003f4c5
sub ebx, r9d
mov dword [rbp - 0x48], ebx
mov dword [rbp + 0x14], ebx
jmp 0x18003f4c5
cmp dword [rbp - 0x70], 0
mov rax, qword [rbp - 0x40]
je 0x18003f493
cmp eax, 0x80
jl 0x18003f493
mov rcx, qword [rbp - 0x80]
lea rdx, [rbp + 0x110]
mov ebx, eax
and ebx, 7
mov r8d, ebx
call fcn.180088a90
mov r8, qword [rbp - 0x80]
mov r9d, dword [rbp + 0x10]
add r8, rbx
mov ebx, dword [rbp - 0x48]
jmp 0x18003f49d
mov r8, qword [rbp - 0x80]
mov byte [r8], al
inc r8
mov eax, dword [rbp + 0xf8]
mov qword [rbp - 0x80], r8
test eax, eax
js 0x18003f4c1
mov ecx, dword [rbp + 0xd4]
mov byte [r8], al
lea rax, [r8 + 1]
mov byte [rax], cl
inc rax
mov qword [rbp - 0x80], rax
mov r8d, dword [rbp - 0x34]
add r13d, 0x28
cmp r13d, 0xeb
jb 0x18003f3d5
mov eax, dword [rbp - 0x60]
mov r13, qword [rbp - 0x40]
dec eax
mov ecx, dword [rbp + 0xa0]
mov dword [rbp - 0x60], eax
cmp eax, 0xa1
ja 0x18003f300
jmp 0x18003f092
cmp dword [rbp + 0x50], 0
jne 0x18003f08b
cmp dword [rbp - 0x48], 0
jge 0x18003f08b
mov eax, dword [rbp - 0x50]
lea rcx, [rdx + 1]
mov r8, qword [rbp + 0x2b0]
lea r9, [rbp - 0x60]
mov dword [rbp - 0x60], eax
xor ebx, ebx
mov eax, dword [rbp - 0x70]
mov edx, 0xa9
mov dword [rsp + 0x70], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x18]
mov qword [rsp + 0x20], rax
mov dword [rbp - 8], ebx
mov dword [rbp + 0x18], r13d
call fcn.18003ac20
test eax, eax
jne 0x18003e432
mov rdx, qword [rsp + 0x78]
mov eax, 0x92
mov qword [rsp + 0x70], rdx
jmp 0x18003f09f
mov r11, qword [rsp + 0x70]
cmp dword [rbp + 0x50], 0
je 0x18003f12f
mov r15, qword [rbp + 0x38]
mov r8d, 0x56
cmp r8d, 0x56
je 0x18003f720
cmp r8d, 0x62
jne 0x18003f766
mov rcx, qword [rbp - 0x80]
mov ebx, ecx
sub ebx, r15d
test ebx, ebx
jle 0x18003f766
movzx eax, byte [r15]
add eax, 0xffffffe1
cmp eax, 0x20
ja case.default.0x18003f5e1
lea rdx, [0x180000000]
cdqe
movzx eax, byte [rdx + rax + 0x4273c]
mov ecx, dword [rdx + rax*4 + 0x42708]
add rcx, rdx
jmp rcx
mov byte [r15], 0x28
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x29
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x2a
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x2b
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x42
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x43
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x44
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x45
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x35
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x36
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x37
mov r8d, 0x62
jmp 0x18003f766
mov byte [r15], 0x38
mov r8d, 0x62
jmp 0x18003f766
mov rcx, qword [rbp - 0x80]
mov r13d, 0xf1
mov eax, r13d
sub eax, 0xf1
je 0x18003f6f9
sub eax, 1
je 0x18003f6e8
sub eax, 1
je 0x18003f6d0
sub eax, 1
je 0x18003f6c1
cmp eax, 1
je 0x18003f718
jmp 0x18003f708
mov eax, ebx
sar eax, 8
mov byte [r15 + 1], al
mov byte [r15 + 2], bl
jmp 0x18003f708
mov byte [rcx], 0x55
mov eax, ebx
sar eax, 8
mov byte [rcx + 1], al
mov byte [rcx + 2], bl
add rcx, 3
mov qword [rbp - 0x80], rcx
jmp 0x18003f708
add rcx, 3
mov byte [r15], 0x5d
mov qword [rbp - 0x80], rcx
add ebx, 3
jmp 0x18003f708
movsxd r8, ebx
lea rcx, [r15 + 3]
mov rdx, r15
call fcn.180088a90
mov rcx, qword [rbp - 0x80]
inc r13d
cmp r13d, 0xf6
jb 0x18003f6a1
mov r8d, 0x62
jmp 0x18003f766
movzx edx, byte [r15]
cmp dl, 0x27
je 0x18003f733
cmp dl, 0x41
je 0x18003f738
cmp dl, 0x34
jne 0x18003f766
cmp dl, 0x41
jne 0x18003f74a
movzx eax, byte [r15 + 3]
sub al, 0xf
cmp al, 1
ja 0x18003f74a
mov ecx, 2
jmp 0x18003f74e
xor eax, eax
mov ecx, eax
mov rax, rdx
lea rdx, [0x180000000]
movzx eax, byte [rax + rdx + 0xb2680]
add rax, rcx
add r15, rax
add r8d, 0xc
cmp r8d, 0x6e
jb 0x18003f591
mov r11, qword [rsp + 0x78]
mov qword [rbp + 0x38], r15
mov r15, qword [rbp + 0x60]
mov qword [rsp + 0x70], r11
jmp 0x18003f12f
mov r10, qword [rbp + 0x2b0]
lea rdx, [r11 + 1]
mov ebx, dword [rbp - 0x50]
xor ecx, ecx
mov qword [rsp + 0x78], rdx
mov r9d, 0x5f
movzx r8d, byte [rdx]
mov rax, qword [r10 + 0x40]
mov qword [rbp + 0xc8], rax
mov dword [rbp - 0x60], ebx
mov dword [rbp + 0x68], ecx
mov dword [rbp - 0x78], r9d
mov dword [rbp + 0xe4], ecx
cmp r8b, 0x2a
jne 0x18003f8e9
mov rcx, qword [r10 + 0x18]
movzx eax, byte [rdx + 1]
test byte [rax + rcx], 2
je 0x18003f8e9
lea r9, [rdx + 1]
xor edx, edx
mov qword [rbp - 0x18], rdx
lea r13, str.ACCEPT
mov qword [rbp + 0x128], r9
mov r11, r9
nop dword [rax]
inc r11
mov qword [rsp + 0x78], r11
movzx eax, byte [r11]
test byte [rax + rcx], 2
jne 0x18003f800
movzx eax, byte [r11]
mov qword [rsp + 0x70], r11
cmp al, 0x3a
je 0x1800422f4
cmp al, 0x29
jne 0x1800422e2
sub r11d, r9d
mov dword [rbp - 0x30], edx
mov qword [rsp + 0x70], r11
lea rbx, [0x1800b2208]
lea rcx, [0x1800b2240]
cmp r11d, dword [rbx]
jne 0x18003f86e
movsxd r8, r11d
mov rdx, r13
mov rcx, r9
call fcn.18008c6c0
test eax, eax
je 0x18003f890
mov r9, qword [rbp + 0x128]
lea rcx, [0x1800b2240]
mov r11, qword [rsp + 0x70]
mov eax, dword [rbx]
add rbx, 8
inc eax
cdqe
add r13, rax
mov eax, dword [rbp - 0x30]
inc eax
mov dword [rbp - 0x30], eax
cmp rbx, rcx
jl 0x18003f844
jmp 0x18003f8c4
movsxd rax, dword [rbp - 0x30]
lea rcx, [0x1800b2208]
movzx ecx, byte [rcx + rax*8 + 4]
mov rax, qword [rbp - 0x80]
mov byte [rax], cl
inc rax
mov qword [rbp - 0x80], rax
cmp cl, 0x6e
jne 0x18003f8c1
mov rax, qword [rbp + 0x2b0]
mov ecx, 1
mov dword [rax + 0x74], ecx
mov eax, dword [rbp - 0x30]
mov r11, qword [rsp + 0x78]
cmp eax, 7
jl 0x18003ca31
mov rax, qword [rbp + 0x2d8]
mov qword [rsp + 0x70], r11
mov dword [rax], 0x3c
jmp 0x1800421f8
cmp r8b, 0x3f
jne 0x1800407ed
lea r11, [rdx + 1]
mov qword [rsp + 0x78], r11
lea r8, [0x180000000]
movzx eax, byte [r11]
add eax, 0xffffffdf
mov qword [rsp + 0x70], r11
cmp eax, 0x5b
ja case.0x18003f92e.46
cdqe
movzx eax, byte [r8 + rax + 0x42798]
mov ecx, dword [r8 + rax*4 + 0x42760]
add rcx, r8
jmp rcx
inc r11
mov qword [rsp + 0x78], r11
movzx eax, byte [r11]
mov qword [rsp + 0x70], r11
test al, al
je 0x18003f958
cmp al, 0x29
je 0x18003f94e
inc r11
jmp 0x18003f933
cmp byte [r11], 0
jne 0x18003ca31
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x12
jmp 0x1800421f8
mov dword [rbp + 0xe4], 1
mov eax, 0x89
nop dword [rax]
cmp eax, 0x89
je 0x18003fa19
add eax, 0x100e
cmp eax, 0x100e
jbe 0x18003f980
mov r13d, 0xf7
nop dword [rax]
cmp r13d, 0x28957
ja 0x18003fd8e
je 0x18003fca5
cmp r13d, 0xf7
je 0x18003fc72
cmp r13d, 0xa30f
je 0x18003fc4a
cmp r13d, 0x14527
je 0x18003fb7d
cmp r13d, 0x1e73f
jne 0x18003fec5
movzx ecx, byte [r11 + 1]
lea rdx, [r11 + 1]
mov rax, qword [r10 + 0x18]
test byte [rcx + rax], 0x10
je 0x180042310
xor eax, eax
mov qword [rsp + 0x70], rdx
mov dword [rbp - 0x74], eax
mov r11, rdx
mov qword [rsp + 0x78], rdx
mov qword [rbp + 0x20], rdx
jmp 0x18003fec5
mov r9d, 0x5e
inc r11
mov qword [rsp + 0x78], r11
mov dword [rbp - 0x78], r9d
mov r13, qword [rbp - 0x80]
mov r8, qword [rbp + 0x2c8]
xor edx, edx
mov byte [r13], r9b
mov ebx, dword [r10 + 0x70]
cmp r9d, 0x5d
mov ecx, edx
mov dword [rbp + 0x54], edx
mov eax, edx
mov qword [rbp + 0x38], r13
cmovge rax, r13
mov qword [rbp - 0x18], rax
lea eax, [r9 - 0x5a]
cmp eax, 1
lea r9, [rbp + 0x18]
mov eax, dword [rbp + 0x68]
mov dword [rbp + 0x30], eax
setbe cl
mov eax, dword [rbp + 0xe4]
mov dword [rbp - 8], ecx
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x68], rcx
lea rcx, [rbp + 0x100]
mov qword [rsp + 0x60], rcx
lea rcx, [rbp + 0x38]
mov qword [rsp + 0x58], rcx
lea rcx, [rbp + 0xb0]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rbp + 0x2d8]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rbp + 0x2d0]
mov qword [rsp + 0x40], rcx
lea rcx, [rbp - 8]
mov dword [rbp + 0x18], eax
mov eax, dword [rbp - 0x50]
and eax, 7
mov qword [rsp + 0x38], rcx
mov dword [rbp - 0x30], eax
lea rcx, [rbp + 0x30]
mov eax, dword [rbp - 0x60]
test r8, r8
mov dword [rsp + 0x70], eax
lea r8, [rsp + 0x78]
lea rax, [rbp + 0x54]
cmove rax, rdx
lea rdx, [rbp - 0x30]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0xd5
mov qword [rsp + 0x20], r10
call fcn.180059520
test eax, eax
je 0x1800423f6
mov r11d, dword [rbp - 0x78]
cmp r11d, 0x60
jne 0x180041c7b
cmp qword [rbp + 0x2c8], 0
jne 0x180041c7b
mov r10d, dword [rbp + 0xb0]
mov r8d, 0xe3
mov r9d, dword [rbp + 0x100]
nop word [rax + rax]
cmp r8d, 0xe3
je 0x180041c32
cmp r8d, 0x178
jne 0x180041c65
cmp byte [r13 + 3], 0x66
jne 0x180041c05
cmp dword [rbp + 0x118], 1
jg 0x1800423e9
mov r11d, 0x66
jmp 0x180041c65
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
cmp al, 0x52
jne 0x18003fbe4
cmp byte [r11 + 2], 0x26
jne 0x18003fbe4
mov r12, qword [rbp - 0x80]
mov ecx, 0xf
lea esi, [rcx - 0x10]
nop dword [rax]
mov eax, ecx
sub eax, 0xf
je 0x18003fbc9
sub eax, 1
je 0x18003fbbe
cmp eax, 1
jne 0x18003fbcc
mov byte [r12 + 3], 0x65
mov r11, qword [rsp + 0x78]
jmp 0x18003fbcc
add r11, 2
mov qword [rsp + 0x78], r11
jmp 0x18003fbcc
mov dword [rbp], esi
inc ecx
cmp ecx, 0x12
jb 0x18003fba0
mov esi, dword [rbp - 0x38]
mov r12, qword [rbp + 8]
mov qword [rsp + 0x70], r11
jmp 0x18003fec5
cmp al, 0x3c
jne 0x18003fc01
mov dword [rbp], 0x3e
mov r11, rcx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rcx
jmp 0x18003fec5
cmp al, 0x27
jne 0x18003fc1e
mov dword [rbp], 0x27
mov r11, rcx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rcx
jmp 0x18003fec5
sub al, 0x2b
mov dword [rbp], 0
test al, 0xfd
jne 0x18003fec5
mov qword [rsp + 0x78], rcx
mov r11, rcx
movzx eax, byte [rcx]
mov dword [rbp + 0xac], eax
mov qword [rsp + 0x70], rcx
jmp 0x18003fec5
mov rax, qword [rbp - 0x80]
mov dword [rbp + 0x68], 3
mov dword [rbp + 0xac], 0xffffffff
mov byte [rax + 3], 0x64
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
jmp 0x18003fec5
cmp byte [r11 + 1], 0x3f
mov r9d, 0x60
mov dword [rbp - 0x78], r9d
jne 0x18003fec5
movzx ecx, byte [r11 + 2]
lea eax, [rcx - 0x3c]
cmp al, 1
jbe 0x18003fc9c
cmp cl, 0x21
jne 0x18003fec5
mov r9d, dword [rbp - 0x78]
jmp 0x18003fa2b
movzx edx, byte [r11]
mov r8, qword [r10 + 0x18]
mov eax, edx
test byte [rdx + r8], 0x10
je 0x18003fd02
mov ecx, dword [rbp - 0x74]
mov edi, 0xffffffff
nop
test ecx, ecx
js 0x18003fce6
lea r9, [0x180000000]
test byte [rax + r9 + 0xb9230], 4
je 0x18003fce4
lea ecx, [rcx + rcx*4]
movzx eax, dl
lea ecx, [rcx - 0x18]
lea ecx, [rax + rcx*2]
jmp 0x18003fce6
mov ecx, edi
inc r11
mov qword [rsp + 0x78], r11
movzx eax, byte [r11]
movzx edx, al
test byte [rax + r8], 0x10
jne 0x18003fcc0
mov edi, dword [rbp - 0x24]
mov dword [rbp - 0x74], ecx
mov r8d, dword [rbp]
mov eax, r11d
sub eax, dword [rbp + 0x20]
mov dword [rbp - 0x28], eax
test r8d, r8d
jle 0x18003fd2a
movzx eax, byte [r11]
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
cmp eax, r8d
jne 0x18003fd43
movzx eax, byte [r11]
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
cmp al, 0x29
je 0x18003fec5
mov ecx, 0x127
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x127
je 0x18003fd64
cmp eax, 0x5b
je 0x1800421f8
jmp 0x18003fd7e
mov rax, qword [rbp + 0x2d8]
dec r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov dword [rax], 0x1a
add ecx, 0x5b
cmp ecx, 0x1dd
jb 0x18003fd50
jmp 0x18003fec5
cmp r13d, 0x32b6f
je 0x18003fe1b
cmp r13d, 0x3cd87
je 0x18003fdb6
cmp r13d, 0x46f9f
je 0x18003ff3c
jmp 0x18003fec5
xor eax, eax
mov dword [rbp - 0x4c], eax
cmp dword [r10 + 0x50], eax
jle 0x18003fec5
movsxd rbx, dword [rbp - 0x28]
mov rcx, qword [rbp + 0x70]
nop dword [rax]
lea rdx, [rcx + 2]
mov r8, rbx
mov rcx, qword [rbp + 0x20]
call fcn.18008c6c0
mov r10, qword [rbp + 0x2b0]
test eax, eax
je 0x18003ff32
movsxd rax, dword [r10 + 0x54]
mov rcx, qword [rbp + 0x70]
add rcx, rax
mov eax, dword [rbp - 0x4c]
inc eax
mov qword [rbp + 0x70], rcx
mov dword [rbp - 0x4c], eax
cmp eax, dword [r10 + 0x50]
jl 0x18003fdd0
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
jmp 0x18003fec5
mov r8, qword [rbp + 0x2c8]
test r8, r8
jne 0x180041bf8
mov ebx, dword [rbp + 0xac]
test ebx, ebx
jle 0x18003febd
mov ecx, 0xec
nop
mov eax, ecx
sub eax, 0xea
je 0x180041bf8
sub eax, 1
je 0x18003fe81
cmp eax, 1
jne 0x18003fea9
mov r9d, dword [rbp - 0x74]
test r9d, r9d
jle 0x180042357
cmp ebx, 0x2d
jne 0x18003fe77
mov eax, dword [r10 + 0x58]
sub eax, r9d
inc eax
mov dword [rbp - 0x74], eax
jmp 0x18003fea9
add r9d, dword [r10 + 0x58]
mov dword [rbp - 0x74], r9d
jmp 0x18003fea9
mov r9d, dword [rbp - 0x74]
test r9d, r9d
jle 0x180042373
cmp r9d, dword [r10 + 0x5c]
jg 0x180042373
mov rdx, qword [rbp - 0x80]
mov eax, r9d
sar eax, 8
mov byte [rdx + 4], al
mov byte [rdx + 5], r9b
dec ecx
cmp ecx, 0xe9
ja 0x18003fe40
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov rax, qword [r10 + 0x48]
mov qword [rbp + 0x70], rax
add r13d, 0xa218
cmp r13d, 0x510c0
jbe 0x18003f9a0
mov eax, 0xae
nop
cmp eax, 0xae
je 0x1800404b5
add eax, 0x1c
cmp eax, 0xca
jb 0x18003fee0
inc r11
mov qword [rsp + 0x78], r11
cmp byte [r11], 0x29
jne 0x1800404c0
mov rax, qword [rbp - 0x80]
xor ecx, ecx
mov qword [rbp - 0x18], rcx
mov byte [rax], 0x6d
inc rax
mov r11, qword [rsp + 0x78]
inc r11
mov qword [rbp - 0x80], rax
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov eax, dword [rbp - 0x4c]
cmp eax, dword [r10 + 0x50]
jge 0x18003ff72
mov rax, qword [rbp + 0x70]
mov r13, qword [rbp - 0x80]
mov r9d, dword [rbp - 0x78]
movzx ecx, byte [rax]
movzx eax, byte [rax + 1]
shl ecx, 8
or ecx, eax
mov eax, ecx
mov dword [rbp - 0x74], ecx
shr eax, 8
mov byte [r13 + 4], al
mov byte [r13 + 5], cl
jmp 0x18003fa2f
mov ebx, 0x4a
nop word [rax + rax]
mov eax, ebx
sub eax, 0x48
je 0x18004032f
sub eax, 1
je 0x18003ffd5
sub eax, 1
je 0x1800402f7
sub eax, 4
je 0x18004032f
cmp eax, 1
jne 0x1800402f7
lea edx, [rax + 7]
lea rcx, [rbp + 0x1f8]
call qword [sym.imp.WINMM.dll_timeGetDevCaps]
test eax, eax
jne 0x18003ffcb
mov ecx, dword [rbp + 0x1f8]
call qword [sym.imp.WINMM.dll_timeEndPeriod]
mov eax, 1
jmp 0x1800402f1
mov eax, dword [r10 + 0x58]
mov dword [rbp - 0x4c], eax
movzx eax, byte [r11]
test al, al
je 0x1800402ec
mov r13, qword [rbp + 0x2b0]
nop
cmp al, 0x5c
jne 0x180040088
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x18004030f
cmp al, 0x51
jne 0x1800402d7
mov ecx, 0xc6
mov eax, ecx
sub eax, 0xc5
je 0x180040074
cmp eax, 1
jne 0x180040079
mov ecx, 0xac
cmp ecx, 0xac
je 0x180040050
cmp ecx, 0x12e
jne 0x180040064
inc r11
cmp byte [r11], 0x45
jne 0x180040064
mov ecx, 0xc6
jmp 0x180040079
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x18004030f
cmp al, 0x5c
jne 0x180040050
add ecx, 0x82
cmp ecx, 0x1b0
jb 0x180040028
jmp 0x180040023
mov ebx, 0x49
dec ecx
cmp ecx, 0xc4
ja 0x180040015
jmp 0x1800402d7
cmp al, 0x5b
jne 0x1800401c1
xor eax, eax
mov r14d, eax
nop word [rax + rax]
movzx eax, byte [r11 + 1]
mov rbx, r11
inc r11
mov qword [rsp + 0x70], r11
cmp al, 0x5c
jne 0x1800400df
cmp byte [rbx + 2], 0x45
lea rcx, [rbx + 2]
jne 0x1800400c3
mov r11, rcx
jmp 0x1800400a0
mov r8d, 3
lea rdx, [0x1800bad7c]
call fcn.18008c6c0
test eax, eax
jne 0x1800400f0
lea r11, [rbx + 4]
jmp 0x1800400a0
test r14d, r14d
jne 0x1800400f5
cmp al, 0x5e
jne 0x1800400f5
mov r14d, 1
jmp 0x1800400a0
mov r11, qword [rsp + 0x70]
cmp byte [rbx + 2], 0x5d
lea rax, [rbx + 2]
jne 0x18004010b
test dword [r13 + 0x68], 0x2000000
cmove r11, rax
movzx eax, byte [r11 + 1]
inc r11
cmp al, 0x5d
je 0x180040189
test al, al
je 0x18004030f
cmp al, 0x5c
jne 0x18004017d
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x18004030f
cmp al, 0x51
jne 0x18004017d
mov eax, 0x33
nop dword [rax]
cmp eax, 0x33
jne 0x180040171
nop word [rax + rax]
mov ecx, 0xdc
mov eax, ecx
sub eax, 0xdc
je 0x1800401a0
cmp eax, 0x61
jne 0x1800401b4
inc r11
cmp byte [r11], 0x45
jne 0x1800401b4
mov eax, 0x33
add eax, 0x8f7
cmp eax, 0x11ee
jbe 0x180040140
movzx eax, byte [r11 + 1]
inc r11
cmp al, 0x5d
jne 0x180040117
mov ebx, 0x49
jmp 0x1800402d7
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x18004030f
cmp al, 0x5c
jne 0x1800401a0
add ecx, 0x61
cmp ecx, 0x19e
jb 0x180040155
jmp 0x180040150
test byte [rbp - 0x50], 8
je 0x1800401e9
cmp al, 0x23
jne 0x1800401e9
nop dword [rax + rax]
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x18004030f
cmp al, 0xa
jne 0x1800401d0
jmp 0x1800402d7
cmp al, 0x28
jne 0x1800402d7
movzx eax, byte [r11 + 1]
cmp al, 0x3f
je 0x180040229
cmp al, 0x2a
je 0x180040229
mov eax, dword [rbp - 0x4c]
mov r8, qword [rbp + 0x20]
inc eax
mov dword [rbp - 0x4c], eax
test r8, r8
jne 0x1800402d7
mov edx, dword [rbp - 0x28]
cmp eax, edx
jne 0x1800402d7
mov r14d, eax
mov dword [rbp - 0x20], eax
jmp 0x18004033c
movzx ecx, byte [r11 + 2]
add r11, 2
cmp cl, 0x50
jne 0x18004023f
movzx ecx, byte [r11 + 1]
inc r11
cmp cl, 0x3c
jne 0x18004025a
movzx eax, byte [r11 + 1]
cmp al, 0x21
je 0x1800402d7
cmp al, 0x3d
jne 0x18004025f
jmp 0x1800402d7
cmp cl, 0x27
jne 0x1800402d7
mov eax, dword [rbp - 0x4c]
mov r8, qword [rbp + 0x20]
inc eax
mov dword [rbp - 0x4c], eax
test r8, r8
jne 0x18004027b
mov edx, dword [rbp - 0x28]
cmp eax, edx
je 0x18004031c
inc r11
movzx ecx, cl
cmp ecx, 0x3c
mov qword [rsp + 0x70], r11
mov eax, 0x3e
mov rdx, r11
cmove ecx, eax
movzx eax, byte [r11]
cmp eax, ecx
je 0x1800402b1
nop dword [rax]
movzx eax, byte [r11 + 1]
inc r11
cmp eax, ecx
jne 0x1800402a0
mov qword [rsp + 0x70], r11
test r8, r8
je 0x1800402d7
movsxd r8, dword [rbp - 0x28]
mov rax, r11
sub rax, rdx
cmp r8, rax
jne 0x1800402d7
mov rcx, qword [rbp + 0x20]
call fcn.18008c6c0
test eax, eax
je 0x180040324
mov r11, qword [rsp + 0x70]
movzx eax, byte [r11 + 1]
inc r11
mov qword [rsp + 0x70], r11
test al, al
jne 0x18003fff0
mov eax, 0xffffffff
mov dword [rbp - 0x20], eax
mov r14d, eax
dec ebx
cmp ebx, 0x45
jbe 0x18004032f
mov r11, qword [rsp + 0x70]
mov r10, qword [rbp + 0x2b0]
jmp 0x18003ff80
mov eax, 0xffffffff
mov r14d, eax
mov dword [rbp - 0x20], eax
jmp 0x180040332
mov r14d, eax
mov dword [rbp - 0x20], eax
jmp 0x180040339
mov eax, dword [rbp - 0x4c]
mov r14d, eax
mov dword [rbp - 0x20], eax
jmp 0x180040332
mov eax, r14d
mov edx, dword [rbp - 0x28]
mov r8, qword [rbp + 0x20]
mov dword [rbp - 0x4c], eax
test eax, eax
jle 0x180040362
mov r13, qword [rbp - 0x80]
mov r9d, dword [rbp - 0x78]
mov r10, qword [rbp + 0x2b0]
sar eax, 8
mov byte [r13 + 4], al
mov eax, dword [rbp - 0x4c]
mov byte [r13 + 5], al
jmp 0x18003fa2f
cmp dword [rbp], 0
jne 0x180042373
cmp byte [r8], 0x52
jne 0x180040440
mov ecx, dword [rbp - 0x74]
mov r8d, 0x1e
mov r10, qword [rbp + 0x20]
cmp r8d, 0x1e
je 0x1800403cb
mov r13, qword [rbp - 0x80]
cmp r8d, 0x36
je 0x1800403b4
cmp r8d, 0x4e
je 0x1800403a9
cmp r8d, 0x66
jne 0x180040422
mov byte [r13 + 5], cl
jmp 0x180040422
mov eax, ecx
sar eax, 8
mov byte [r13 + 4], al
jmp 0x180040422
mov eax, dword [rbp - 0x74]
mov ecx, 0xffff
test eax, eax
mov byte [r13 + 3], 0x65
cmove eax, ecx
mov dword [rbp - 0x74], eax
jmp 0x18004041f
xor eax, eax
mov r9d, eax
mov dword [rbp - 0x74], eax
mov eax, 1
mov dword [rbp - 0x4c], eax
cmp edx, eax
jle 0x18004041b
nop
mov eax, eax
movzx edx, byte [rax + r10]
lea rax, [0x180000000]
test byte [rdx + rax + 0xb9230], 4
je 0x180042373
mov eax, dword [rbp - 0x4c]
lea r9d, [r9 + r9*4]
inc eax
lea r9d, [r9 - 0x18]
lea r9d, [rdx + r9*2]
mov dword [rbp - 0x4c], eax
mov edx, dword [rbp - 0x28]
mov dword [rbp - 0x74], r9d
cmp eax, edx
jl 0x1800403e0
mov r13, qword [rbp - 0x80]
mov ecx, dword [rbp - 0x74]
add r8d, 0x18
cmp r8d, 0x7e
jb 0x180040383
mov r9d, dword [rbp - 0x78]
mov r10, qword [rbp + 0x2b0]
jmp 0x18003fa2f
cmp edx, 6
jne 0x18004047c
mov rcx, qword [rbp + 0x20]
mov r8d, edx
lea rdx, str.DEFINE
call fcn.18008c6c0
test eax, eax
jne 0x18004047c
mov r13, qword [rbp - 0x80]
mov r9d, dword [rbp - 0x78]
mov r10, qword [rbp + 0x2b0]
mov dword [rbp + 0x68], 1
mov byte [r13 + 3], 0x66
jmp 0x18003fa2f
mov r9d, dword [rbp - 0x74]
test r9d, r9d
jle 0x18004232f
mov r10, qword [rbp + 0x2b0]
cmp r9d, dword [r10 + 0x5c]
jg 0x18004232f
mov r13, qword [rbp - 0x80]
mov eax, r9d
sar eax, 8
mov byte [r13 + 5], r9b
mov r9d, dword [rbp - 0x78]
mov byte [r13 + 4], al
jmp 0x18003fa2f
mov r9d, 0x58
jmp 0x18003fa1f
mov r9d, 0x59
jmp 0x18003fa27
mov eax, 0x88
cmp eax, 0x88
je 0x180040514
add eax, 0x2860
cmp eax, 0x2860
jbe 0x1800404d0
mov eax, 0x55
nop dword [rax + rax]
cmp eax, 0x55
je 0x1800405f8
cmp eax, 0x2486
je 0x1800405ee
cmp eax, 0x48b7
je 0x18003fa2b
jmp 0x180040602
movzx eax, byte [r11 + 1]
cmp al, 0x21
je 0x180040556
cmp al, 0x3d
jne 0x180040592
mov ecx, 0xa2
mov eax, ecx
sub eax, 0xa2
je 0x180040542
cmp eax, 1
jne 0x18004054c
add r11, 2
mov qword [rsp + 0x78], r11
jmp 0x18003fa2b
mov r9d, 0x5a
mov dword [rbp - 0x78], r9d
inc ecx
cmp ecx, 0xa4
jb 0x180040526
mov eax, 0x20
nop dword [rax + rax]
cmp eax, 0x20
je 0x180040570
cmp eax, 0x61
je 0x18003fa2b
jmp 0x180040588
add r11, 2
mov r9d, 0x5b
mov dword [rbp - 0x78], r9d
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
add eax, 0x41
cmp eax, 0xa2
jb 0x180040560
mov edx, 0xaf
mov eax, edx
sub eax, 0xaf
je 0x1800405cc
sub eax, 1
je 0x1800405b0
cmp eax, 1
je 0x1800421f8
jmp 0x1800405df
mov rax, qword [rbp + 0x2d8]
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov dword [rax], 0x18
jmp 0x1800405df
movzx ecx, byte [r11 + 1]
mov rax, qword [r10 + 0x18]
test byte [rcx + rax], 0x10
jne case.0x18003f92e.35
inc edx
cmp edx, 0xb2
jb 0x180040597
jmp 0x18003fa2b
inc r11
mov qword [rsp + 0x78], r11
jmp 0x180040602
mov r9d, 0x5d
mov dword [rbp - 0x78], r9d
add eax, 0x2431
cmp eax, 0x6c93
jbe 0x1800404f0
mov rax, qword [rbp - 0x80]
mov r8d, 0xd3
mov rbx, rax
mov qword [rbp + 0xf0], rax
inc rbx
mov dword [rbp + 0xd8], 1
mov qword [rbp - 0x80], rbx
mov byte [rax], 0x53
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
nop dword [rax]
nop dword [rax + rax]
mov eax, r8d
sub eax, 0xd3
je 0x1800406e6
sub eax, 0xf
je 0x1800406c8
sub eax, 0xf
je 0x1800406aa
cmp eax, 0xf
jne 0x18004074e
sub r11d, dword [r10 + 0x30]
inc r11d
sar r11d, 8
mov byte [rbx], r11b
movzx eax, byte [rsp + 0x78]
sub al, byte [r10 + 0x30]
inc al
mov word [rbx + 2], 0
mov byte [rbx + 1], al
add rbx, 4
mov r11, qword [rsp + 0x78]
mov qword [rbp - 0x80], rbx
mov qword [rsp + 0x70], r11
jmp 0x18004074e
mov eax, dword [rbp + 0xdc]
mov byte [rbx], al
inc rbx
mov r11, qword [rsp + 0x78]
mov qword [rbp - 0x80], rbx
mov qword [rsp + 0x70], r11
jmp 0x18004074e
cmp dword [rbp + 0xdc], 0xff
jle 0x18004074e
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x26
jmp 0x1800421f8
inc r11
lea r9, [0x180000000]
xor eax, eax
mov qword [rsp + 0x78], r11
mov ecx, eax
mov dword [rbp + 0xdc], eax
mov qword [rsp + 0x70], r11
movzx edx, byte [r11]
test byte [rdx + r9 + 0xb9230], 4
je 0x180040744
movzx eax, dl
lea ecx, [rcx + rcx*4]
inc r11
lea ecx, [rcx - 0x18]
mov qword [rsp + 0x78], r11
lea ecx, [rax + rcx*2]
movzx eax, byte [r11]
movzx edx, al
test byte [rax + r9 + 0xb9230], 4
jne 0x180040713
mov dword [rbp + 0xdc], ecx
mov qword [rsp + 0x70], r11
cmp byte [r11], 0x29
jne 0x18004238f
add r8d, 0xf
cmp r8d, 0x10f
jb 0x180040650
xor ecx, ecx
inc r11
mov qword [rbp - 0x18], rcx
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
movzx ecx, byte [r11]
lea eax, [rcx - 0x3d]
cmp al, 1
jbe 0x1800407a6
cmp cl, 0x3c
je case.0x18003f92e.35
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x29
jmp 0x1800421f8
mov eax, 0x7c
nop dword [rax + rax]
cmp eax, 0x7c
je 0x1800407c2
cmp eax, 0x104
je 0x1800409ca
jmp 0x1800407d7
xor edx, edx
mov dword [rbp], 0x29
cmp cl, 0x3e
sete dl
mov dword [rbp + 0xa8], edx
add eax, 0x88
cmp eax, 0x18c
jb 0x1800407b0
mov edx, 0x107
jmp 0x1800409d1
bt ebx, 0xc
jae 0x1800407fe
mov r9d, 0x5e
jmp 0x18003fa27
mov ecx, 0x11d
mov r13, qword [rbp - 0x80]
mov eax, ecx
sub eax, 0x11c
je 0x180040820
cmp eax, 1
jne 0x18004083b
inc dword [r10 + 0x58]
mov ecx, 0x11d
jmp 0x18004083b
mov eax, dword [r10 + 0x58]
sar eax, 8
mov byte [r13 + 3], al
movzx eax, byte [r10 + 0x58]
mov byte [r13 + 4], al
mov dword [rbp + 0x68], 2
dec ecx
cmp ecx, 0x11b
ja 0x180040803
jmp 0x18003fa2f
mov rax, qword [rbp + 0x2b0]
lea r9, [rbp - 8]
mov dword [rbp - 8], r8d
lea rdx, [rbp + 0x18]
mov r8, qword [rbp + 0x2d8]
mov ecx, 0xf7
mov qword [rbp + 0x140], r11
mov eax, dword [rax + 0x58]
mov dword [rbp + 0x18], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x70], r10d
call fcn.18006b160
mov rcx, qword [rbp + 0x2d8]
mov r13d, eax
mov qword [rbp - 0x40], r13
cmp dword [rcx], 0
jne 0x180042231
test eax, eax
jns 0x180041f4a
mov r10d, eax
neg r10d
cmp r10d, 0x1a
jne 0x180040905
mov r11, qword [rsp + 0x78]
cmp byte [r11 + 1], 0x5c
jne 0x1800408ea
cmp byte [r11 + 2], 0x45
jne 0x1800408ea
add r11, 2
xor ecx, ecx
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
xor ecx, ecx
mov dword [rbp - 0x58], 1
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
cmp r10d, 0x19
je 0x18003ca2c
mov r8d, dword [rbp - 0x54]
cmp r8d, 0xfffffffe
jne 0x18004092d
lea eax, [r10 - 6]
cmp eax, 0x10
mov eax, 0xffffffff
cmovbe r8d, eax
mov dword [rbp - 0x54], r8d
mov r11, qword [rsp + 0x78]
mov edx, dword [rbp - 0x10]
mov qword [rsp + 0x70], r11
mov dword [rbp + 0x28], r8d
mov dword [rbp + 0x58], edx
cmp r10d, 0x1b
jne 0x180040bbb
mov r9d, 0x90
cmp r9d, 0x177
ja 0x180040b81
je 0x180040b1b
mov eax, r9d
sub eax, 0x90
je 0x180040ada
sub eax, 0x4d
je 0x180040ad0
cmp eax, 0x4d
jne 0x180040b9f
xor eax, eax
lea r8, [r11 + 1]
mov dword [rbp + 0xe4], eax
movzx eax, byte [r8]
sub al, 0x2b
test al, 0xfd
je 0x180040b9f
mov ecx, 0x8e
cmp ecx, 0x8e
je 0x180040a36
cmp ecx, 0x2264
je 0x180040a07
cmp ecx, 0x443a
jne 0x180040ab9
mov r10, qword [rbp + 0x2b0]
mov edx, 0x107
dec edx
cmp edx, 0x104
jbe 0x180041220
mov eax, edx
sub eax, 0x105
je 0x180040cac
sub eax, 1
je 0x180040c6d
cmp eax, 1
jne 0x1800409cf
mov dword [rbp], 0x29
mov dword [rbp + 0xa8], eax
jmp 0x1800409ca
mov rax, qword [rbp + 0x108]
movzx eax, byte [rax]
cmp eax, dword [rbp]
jne 0x180040b60
cmp dword [rbp + 0xa4], 0
jne 0x180040bf4
mov dword [rbp + 0xa8], 1
jmp 0x180040ab9
movzx ecx, byte [r8]
mov dword [rbp + 0xa4], 1
mov qword [rbp + 0x108], r8
test cl, cl
je 0x180040ab4
mov r12, qword [rbp + 0x2b0]
mov r15d, dword [rbp + 0xa4]
mov esi, dword [rbp]
movzx eax, cl
cmp eax, esi
je 0x180040aa2
mov rax, qword [r12 + 0x18]
movzx ecx, cl
movzx edx, byte [rcx + rax]
mov eax, 0
test dl, 4
cmovne eax, r15d
mov r15d, eax
test dl, 0x10
je 0x180040aa2
mov rdx, qword [rbp + 0x108]
inc rdx
mov qword [rbp + 0x108], rdx
movzx eax, byte [rdx]
movzx ecx, al
test al, al
jne 0x180040a60
mov esi, dword [rbp - 0x38]
mov r12, qword [rbp + 8]
mov dword [rbp + 0xa4], r15d
mov r15, qword [rbp + 0x60]
mov ecx, 0x8e
add ecx, 0x21d6
cmp ecx, 0x6582
jbe 0x1800409a3
jmp 0x180040b9f
xor eax, eax
mov dword [rbp + 0x68], eax
jmp 0x180040b9f
mov rax, qword [rbp + 0x148]
inc r11
mov qword [rbp + 0x108], rax
mov edx, 0x27
mov rax, qword [rbp + 0x2b0]
mov qword [rsp + 0x78], r11
cmp byte [r11], 0x3c
mov rax, qword [rax + 0x40]
mov qword [rbp + 0xc8], rax
mov eax, 0x3e
cmove edx, eax
mov dword [rbp], edx
jmp 0x180040b9a
movzx eax, byte [r11 + 2]
lea rdx, [r11 + 2]
lea rcx, [0x180000000]
mov qword [rbp + 0x108], rdx
test byte [rax + rcx + 0xb9230], 4
je 0x180040b58
nop dword [rax]
movzx eax, byte [rdx + 1]
inc rdx
test byte [rax + rcx + 0xb9230], 4
jne 0x180040b40
mov qword [rbp + 0x108], rdx
movzx eax, al
cmp eax, dword [rbp]
je 0x180040b9f
mov rax, qword [rbp + 0x2d8]
xor ecx, ecx
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov dword [rax], 0x39
jmp 0x18003c360
mov eax, r9d
sub eax, 0x1c4
je 0x180040b92
cmp eax, 0x4d
je 0x180040c01
jmp 0x180040b9f
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
add r9d, 0x4d
cmp r9d, 0x25e
jb 0x180040951
mov r8d, dword [rbp - 0x54]
mov rcx, qword [rbp + 0x2d8]
cmp r10d, 0x1c
jne 0x180041e26
movzx eax, byte [r11 + 1]
cmp al, 0x3c
je 0x180040bda
cmp al, 0x27
je 0x180040bda
cmp al, 0x7b
jne 0x180041f2e
mov ecx, 0x122
nop
mov eax, ecx
sub eax, 0x122
je 0x180040c21
cmp eax, 0x1c
je 0x1800409c3
jmp 0x180040c59
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov r9d, dword [rbp - 0x74]
lea r8, [0x180000000]
mov r10, qword [rbp + 0x2b0]
mov r13d, 0x60
dec r13d
jmp 0x18004123e
inc r11
xor eax, eax
mov dword [rbp + 0xa8], eax
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
movzx eax, byte [r11]
cmp al, 0x3c
jne 0x180040c47
mov dword [rbp], 0x3e
jmp 0x180040c59
cmp al, 0x27
mov edx, 0x7d
mov eax, 0x27
cmove edx, eax
mov dword [rbp], edx
add ecx, 0x1c
cmp ecx, 0x15a
jb 0x180040be0
jmp 0x180041f2e
mov rcx, qword [r10 + 0x18]
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
mov qword [rbp + 0x20], r11
movzx eax, byte [r11]
test byte [rax + rcx], 0x10
je 0x1800409cf
inc r11
mov qword [rsp + 0x78], r11
movzx eax, byte [r11]
test byte [rax + rcx], 0x10
jne 0x180040c90
mov qword [rsp + 0x70], r11
jmp 0x1800409cf
mov r8, qword [rbp + 0x20]
mov edx, r11d
sub edx, r8d
cmp qword [rbp + 0x2c8], 0
mov dword [rbp - 0x28], edx
je 0x180040d18
mov r8d, dword [rbp]
mov ecx, 0x129
nop dword [rax]
cmp ecx, 0x129
je 0x180040cf0
cmp ecx, 0x1e7
jne 0x180040d05
cmp edx, 0x20
jg 0x1800423a1
xor eax, eax
mov dword [rbp - 0x74], eax
jmp 0x180040d05
test edx, edx
je 0x1800423c5
movzx eax, byte [r11]
cmp eax, r8d
jne 0x1800423b3
add ecx, 0xbe
cmp ecx, 0x2a5
jb 0x180040cd0
jmp 0x1800411e6
mov eax, 0x4d
movsxd r13, edx
mov dword [rbp - 0x60], eax
jmp 0x180040d3b
mov r10, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x20]
sub eax, 0x4c
je 0x180040d56
cmp eax, 1
jne 0x1800411ce
mov rax, qword [r10 + 0x48]
mov qword [rbp + 0x70], rax
jmp 0x1800411ce
mov r9, qword [rbp + 0x70]
xor ecx, ecx
mov ebx, ecx
mov dword [rbp - 0x4c], ecx
cmp dword [r10 + 0x50], ecx
jle 0x180040dc8
nop word [rax + rax]
mov rcx, qword [rbp + 0x20]
lea rdx, [r9 + 2]
mov r8, r13
call fcn.18008c6c0
mov r9, qword [rbp + 0x70]
test eax, eax
jne 0x180040d8f
cmp byte [r9 + r13 + 2], al
je 0x180040dae
mov r10, qword [rbp + 0x2b0]
inc ebx
mov dword [rbp - 0x4c], ebx
movsxd rax, dword [r10 + 0x54]
add r9, rax
mov qword [rbp + 0x70], r9
cmp ebx, dword [r10 + 0x50]
jl 0x180040d70
jmp 0x180040db5
mov r10, qword [rbp + 0x2b0]
mov r11, qword [rsp + 0x78]
xor ecx, ecx
mov r8, qword [rbp + 0x20]
mov edx, dword [rbp - 0x28]
mov qword [rsp + 0x70], r11
mov dword [rbp - 0x60], 0x4c
cmp ebx, dword [r10 + 0x50]
jge 0x180040deb
movzx ecx, byte [r9]
movzx eax, byte [r9 + 1]
shl ecx, 8
or ecx, eax
mov dword [rbp - 0x74], ecx
jmp 0x1800411ce
mov ebx, 0x4a
mov eax, ebx
sub eax, 0x48
je 0x1800411b5
sub eax, 1
je 0x180040e45
sub eax, 1
je 0x180041171
sub eax, 4
je 0x1800411b5
cmp eax, 1
jne 0x180041171
lea edx, [rax + 7]
lea rcx, [rbp + 0x200]
call qword [sym.imp.WINMM.dll_timeGetDevCaps]
test eax, eax
jne 0x180040e3b
mov ecx, dword [rbp + 0x200]
call qword [sym.imp.WINMM.dll_timeEndPeriod]
mov eax, 1
jmp 0x18004116c
movzx eax, byte [r11]
mov r9d, dword [r10 + 0x58]
mov dword [rbp - 0x74], r9d
test al, al
je 0x180041167
jmp 0x180040e64
mov r8, qword [rbp + 0x20]
cmp al, 0x5c
jne 0x180040f08
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x180041192
cmp al, 0x51
jne 0x180041146
mov ecx, 0xc6
nop dword [rax]
mov eax, ecx
sub eax, 0xc5
je 0x180040ef4
cmp eax, 1
jne 0x180040ef9
nop
mov ecx, 0xac
cmp ecx, 0xac
je 0x180040ed0
cmp ecx, 0x12e
jne 0x180040ee4
inc r11
cmp byte [r11], 0x45
jne 0x180040ee4
mov ecx, 0xc6
jmp 0x180040ef9
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x180041192
cmp al, 0x5c
jne 0x180040ed0
add ecx, 0x82
cmp ecx, 0x1b0
jb 0x180040ea5
jmp 0x180040ea0
mov ebx, 0x49
dec ecx
cmp ecx, 0xc4
ja 0x180040e90
jmp 0x180041146
cmp al, 0x5b
jne 0x180041041
mov edi, ecx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r11 + 1]
mov rbx, r11
inc r11
mov qword [rsp + 0x70], r11
cmp al, 0x5c
jne 0x180040f5f
cmp byte [rbx + 2], 0x45
lea rcx, [rbx + 2]
jne 0x180040f43
mov r11, rcx
jmp 0x180040f20
mov r8d, 3
lea rdx, [0x1800bad7c]
call fcn.18008c6c0
test eax, eax
jne 0x180040f6e
lea r11, [rbx + 4]
jmp 0x180040f20
test edi, edi
jne 0x180040f73
cmp al, 0x5e
jne 0x180040f73
mov edi, 1
jmp 0x180040f20
mov r11, qword [rsp + 0x70]
cmp byte [rbx + 2], 0x5d
lea rax, [rbx + 2]
jne 0x180040f8f
mov rcx, qword [rbp + 0x2b0]
test dword [rcx + 0x68], 0x2000000
cmove r11, rax
movzx eax, byte [r11 + 1]
inc r11
cmp al, 0x5d
je 0x180041009
nop dword [rax + rax]
test al, al
je 0x180041192
cmp al, 0x5c
jne 0x180040ffd
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x180041192
cmp al, 0x51
jne 0x180040ffd
mov eax, 0x33
cmp eax, 0x33
jne 0x180040ff1
nop word [rax + rax]
mov ecx, 0xdc
mov eax, ecx
sub eax, 0xdc
je 0x180041020
cmp eax, 0x61
jne 0x180041034
inc r11
cmp byte [r11], 0x45
jne 0x180041034
mov eax, 0x33
add eax, 0x8f7
cmp eax, 0x11ee
jbe 0x180040fc5
movzx eax, byte [r11 + 1]
inc r11
cmp al, 0x5d
jne 0x180040fa0
mov ebx, 0x49
jmp 0x180041146
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x180041192
cmp al, 0x5c
jne 0x180041020
add ecx, 0x61
cmp ecx, 0x19e
jb 0x180040fd5
jmp 0x180040fd0
test byte [rbp - 0x50], 8
je 0x180041069
cmp al, 0x23
jne 0x180041069
nop dword [rax + rax]
movzx eax, byte [r11 + 1]
inc r11
test al, al
je 0x180041192
cmp al, 0xa
jne 0x180041050
jmp 0x180041146
cmp al, 0x28
jne 0x180041146
movzx eax, byte [r11 + 1]
cmp al, 0x3f
je 0x1800410a3
cmp al, 0x2a
je 0x1800410a3
inc r9d
mov dword [rbp - 0x74], r9d
test r8, r8
jne 0x180041146
cmp r9d, edx
jne 0x180041146
mov edi, r9d
mov dword [rbp - 0x24], r9d
jmp 0x1800411bb
movzx ecx, byte [r11 + 2]
add r11, 2
cmp cl, 0x50
jne 0x1800410b9
movzx ecx, byte [r11 + 1]
inc r11
cmp cl, 0x3c
jne 0x1800410cd
movzx eax, byte [r11 + 1]
cmp al, 0x21
je 0x180041146
cmp al, 0x3d
jne 0x1800410d2
jmp 0x180041146
cmp cl, 0x27
jne 0x180041146
inc r9d
mov dword [rbp - 0x74], r9d
test r8, r8
jne 0x1800410e7
cmp r9d, edx
je 0x1800411a8
inc r11
movzx ecx, cl
cmp ecx, 0x3c
mov qword [rsp + 0x70], r11
mov eax, 0x3e
mov rdx, r11
cmove ecx, eax
movzx eax, byte [r11]
cmp eax, ecx
je 0x180041121
nop dword [rax + rax]
movzx eax, byte [r11 + 1]
inc r11
cmp eax, ecx
jne 0x180041110
mov qword [rsp + 0x70], r11
test r8, r8
je 0x180041146
mov rax, r11
sub rax, rdx
cmp r13, rax
jne 0x180041146
mov rcx, qword [rbp + 0x20]
mov r8, r13
call fcn.18008c6c0
test eax, eax
je 0x1800411a4
mov r11, qword [rsp + 0x70]
movzx eax, byte [r11 + 1]
inc r11
mov r9d, dword [rbp - 0x74]
mov ecx, 0
mov edx, dword [rbp - 0x28]
mov qword [rsp + 0x70], r11
test al, al
jne 0x180040e60
mov eax, 0xffffffff
mov dword [rbp - 0x24], eax
mov edi, eax
dec ebx
cmp ebx, 0x45
jbe 0x1800411b5
mov r11, qword [rsp + 0x70]
xor ecx, ecx
mov r10, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x20]
mov edx, dword [rbp - 0x28]
jmp 0x180040df0
mov eax, 0xffffffff
mov edi, eax
mov dword [rbp - 0x24], eax
mov r9d, eax
mov dword [rbp - 0x74], eax
jmp 0x1800411bb
mov r9d, dword [rbp - 0x74]
mov edi, r9d
mov dword [rbp - 0x24], r9d
mov dword [rbp - 0x74], r9d
jmp 0x1800411bb
mov r9d, edi
mov dword [rbp - 0x74], edi
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
test r9d, r9d
jle 0x1800423d7
mov eax, dword [rbp - 0x60]
mov edx, dword [rbp - 0x28]
dec eax
mov dword [rbp - 0x60], eax
cmp eax, 0x4b
ja 0x180040d30
mov r13, qword [rbp - 0x40]
cmp dword [rbp + 0xa8], 0
jne 0x18004199b
mov r8d, dword [rbp - 0x54]
mov edx, 0x1228
cmp r8d, 0xfffffffe
jne 0x180041e87
mov rbx, qword [rbp - 0x80]
mov eax, 0xffffffff
mov r8d, eax
mov dword [rbp - 0x54], eax
add edx, 0x120c
jmp 0x180041e35
lea r8, [0x180000000]
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov r9d, dword [rbp - 0x74]
mov r13d, 0x60
mov dword [rbp - 0x60], r13d
mov edx, r9d
mov ebx, esi
cmp r13d, 0x53
jbe 0x180041e01
lea eax, [r13 - 0x54]
cmp eax, 0xc
ja case.default.0x180041269
mov ecx, dword [r8 + rax*4 + 0x427f4]
add rcx, r8
jmp rcx
movzx ebx, byte [r11]
mov dword [rbp + 0xac], ebx
cmp ebx, 0x2b
jne 0x1800412ac
inc r11
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
movzx eax, byte [r11]
test byte [rax + r8 + 0xb9230], 4
jne case.default.0x180041269
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x3f
jmp 0x1800421f8
cmp ebx, 0x2d
jne case.default.0x180041269
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
test byte [rax + r8 + 0xb9230], 4
je case.0x18003f92e.46
mov r11, rcx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rcx
lea r8, [0x180000000]
dec r13d
jmp 0x18004123e
mov r8, qword [rbp - 0x80]
mov word [r8], 0x55
mov byte [r8 + 2], 6
add r8, 3
mov r11, qword [rsp + 0x78]
dec r13d
mov qword [rbp - 0x80], r8
lea r8, [0x180000000]
mov qword [rsp + 0x70], r11
jmp 0x18004123e
movzx edx, byte [r11]
xor eax, eax
mov r9d, eax
mov dword [rbp - 0x74], eax
test byte [rdx + r8 + 0xb9230], 4
je 0x180041362
movzx eax, dl
lea r9d, [r9 + r9*4]
inc r11
lea r9d, [r9 - 0x18]
mov qword [rsp + 0x78], r11
lea r9d, [rax + r9*2]
movzx eax, byte [r11]
movzx edx, al
test byte [rax + r8 + 0xb9230], 4
jne 0x180041330
mov dword [rbp - 0x74], r9d
mov qword [rsp + 0x70], r11
movzx eax, byte [r11]
cmp eax, dword [rbp]
je case.default.0x180041269
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x1d
jmp 0x1800421f8
mov rax, qword [r10 + 0x28]
lea r8, [0x180000000]
mov qword [rbp + 0xc0], rax
dec r13d
jmp 0x18004123e
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0xc0], rax
mov dword [rbp], 0x29
mov r10, qword [rbp + 0x2b0]
lea r8, [0x180000000]
mov r13d, 0x60
dec r13d
jmp 0x18004123e
mov r8, qword [rbp - 0x80]
dec r13d
mov word [r8], 0x5d
mov byte [r8 + 2], 6
lea r8, [0x180000000]
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
jmp 0x18004123e
cmp qword [rbp + 0x2c8], 0
jne case.default.0x180041269
mov r8, qword [rbp - 0x80]
mov rdx, qword [rbp + 0xc0]
mov dword [rbp - 0x38], ebx
mov qword [rbp + 0xc0], rdx
mov byte [r8], 0
test r9d, r9d
je 0x18004145b
mov eax, dword [rbp - 0x70]
lea r8, [rsp + 0x70]
mov rdx, qword [r10 + 0x28]
lea rcx, [rbp + 0x150]
mov dword [rsp + 0x70], r9d
mov r9d, 0x4f
mov dword [rbp + 0x150], eax
call fcn.18004f9b0
mov r8, qword [rbp - 0x80]
mov rdx, rax
mov r9d, dword [rbp - 0x74]
mov qword [rbp + 0xc0], rax
test rdx, rdx
jne 0x18004182e
mov r8, qword [rsp + 0x78]
mov r13d, 0x4a
mov qword [rbp - 0x40], r8
mov eax, r13d
sub eax, 0x48
je 0x1800417be
sub eax, 1
je 0x1800414cd
sub eax, 1
je 0x18004179e
sub eax, 4
je 0x1800417be
cmp eax, 1
jne 0x18004179e
lea edx, [rax + 7]
lea rcx, [rbp + 0x148]
call qword [sym.imp.WINMM.dll_timeGetDevCaps]
test eax, eax
jne 0x1800414bf
mov ecx, dword [rbp + 0x148]
call qword [sym.imp.WINMM.dll_timeEndPeriod]
mov r8, qword [rbp - 0x40]
mov eax, 1
jmp 0x180041799
mov rax, qword [rbp + 0x2b0]
mov ebx, dword [rax + 0x58]
movzx eax, byte [r8]
test al, al
je 0x180041794
cmp al, 0x5c
jne 0x180041589
movzx eax, byte [r8 + 1]
inc r8
test al, al
je 0x1800417b0
cmp al, 0x51
jne 0x18004177c
mov ecx, 0xc6
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xc5
je 0x180041574
cmp eax, 1
jne 0x18004157a
nop
mov ecx, 0xac
cmp ecx, 0xac
je 0x180041550
cmp ecx, 0x12e
jne 0x180041564
inc r8
cmp byte [r8], 0x45
jne 0x180041564
mov ecx, 0xc6
jmp 0x18004157a
movzx eax, byte [r8 + 1]
inc r8
test al, al
je 0x1800417b0
cmp al, 0x5c
jne 0x180041550
add ecx, 0x82
cmp ecx, 0x1b0
jb 0x180041525
jmp 0x180041520
mov r13d, 0x49
dec ecx
cmp ecx, 0xc4
ja 0x180041510
jmp 0x18004177c
cmp al, 0x5b
jne 0x1800416c1
xor eax, eax
mov r13d, eax
nop word [rax + rax]
movzx eax, byte [r8 + 1]
mov rsi, r8
inc r8
mov qword [rbp - 0x40], r8
cmp al, 0x5c
jne 0x1800415de
cmp byte [rsi + 2], 0x45
lea rcx, [rsi + 2]
jne 0x1800415c2
mov r8, rcx
jmp 0x1800415a0
mov r8d, 3
lea rdx, [0x1800bad7c]
call fcn.18008c6c0
test eax, eax
jne 0x1800415ef
lea r8, [rsi + 4]
jmp 0x1800415a0
test r13d, r13d
jne 0x1800415f3
cmp al, 0x5e
jne 0x1800415f3
mov r13d, 1
jmp 0x1800415a0
mov r8, qword [rbp - 0x40]
cmp byte [rsi + 2], 0x5d
lea rax, [rsi + 2]
jne 0x18004160f
mov rcx, qword [rbp + 0x2b0]
test dword [rcx + 0x68], 0x2000000
cmove r8, rax
movzx eax, byte [r8 + 1]
inc r8
cmp al, 0x5d
je 0x180041689
nop dword [rax + rax]
test al, al
je 0x1800417b0
cmp al, 0x5c
jne 0x18004167d
movzx eax, byte [r8 + 1]
inc r8
test al, al
je 0x1800417b0
cmp al, 0x51
jne 0x18004167d
mov eax, 0x33
cmp eax, 0x33
jne 0x180041671
nop word [rax + rax]
mov ecx, 0xdc
mov eax, ecx
sub eax, 0xdc
je 0x1800416a0
cmp eax, 0x61
jne 0x1800416b4
inc r8
cmp byte [r8], 0x45
jne 0x1800416b4
mov eax, 0x33
add eax, 0x8f7
cmp eax, 0x11ee
jbe 0x180041645
movzx eax, byte [r8 + 1]
inc r8
cmp al, 0x5d
jne 0x180041620
mov r13d, 0x49
jmp 0x18004177c
movzx eax, byte [r8 + 1]
inc r8
test al, al
je 0x1800417b0
cmp al, 0x5c
jne 0x1800416a0
add ecx, 0x61
cmp ecx, 0x19e
jb 0x180041655
jmp 0x180041650
test byte [rbp - 0x50], 8
je 0x1800416e9
cmp al, 0x23
jne 0x1800416e9
nop dword [rax + rax]
movzx eax, byte [r8 + 1]
inc r8
test al, al
je 0x1800417b0
cmp al, 0xa
jne 0x1800416d0
jmp 0x18004177c
cmp al, 0x28
jne 0x18004177c
movzx eax, byte [r8 + 1]
cmp al, 0x3f
je 0x18004170f
cmp al, 0x2a
je 0x18004170f
inc ebx
cmp ebx, r9d
jne 0x18004177c
mov esi, ebx
mov dword [rbp - 0x38], ebx
jmp 0x1800417c0
movzx ecx, byte [r8 + 2]
add r8, 2
cmp cl, 0x50
jne 0x180041725
movzx ecx, byte [r8 + 1]
inc r8
cmp cl, 0x3c
jne 0x18004173d
movzx eax, byte [r8 + 1]
lea rdx, [r8 + 1]
cmp al, 0x21
je 0x18004177c
cmp al, 0x3d
jne 0x180041746
jmp 0x18004177c
cmp cl, 0x27
jne 0x18004177c
lea rdx, [r8 + 1]
inc ebx
cmp ebx, r9d
je 0x180041705
movzx ecx, cl
mov eax, 0x3e
cmp ecx, 0x3c
mov r8, rdx
cmove ecx, eax
movzx eax, byte [rdx]
cmp eax, ecx
je 0x18004177c
nop word [rax + rax]
movzx eax, byte [r8 + 1]
inc r8
cmp eax, ecx
jne 0x180041770
movzx eax, byte [r8 + 1]
inc r8
mov r9d, dword [rbp - 0x74]
mov qword [rbp - 0x40], r8
test al, al
jne 0x1800414e3
mov eax, 0xffffffff
mov dword [rbp - 0x38], eax
mov esi, eax
dec r13d
cmp r13d, 0x45
jbe 0x1800417be
mov r9d, dword [rbp - 0x74]
jmp 0x180041473
mov eax, 0xffffffff
mov esi, eax
mov dword [rbp - 0x38], eax
mov ebx, eax
jmp 0x1800417c0
mov ebx, esi
test ebx, ebx
js 0x18004244a
mov r10, qword [rbp + 0x2b0]
mov r8, qword [rbp - 0x80]
movsxd r9, dword [rbp - 0x74]
mov ecx, r8d
mov r13d, dword [rbp - 0x60]
mov rdx, qword [r10 + 0x28]
mov rax, qword [r10 + 0x40]
sub ecx, edx
add ecx, 4
mov dword [rbp - 0x38], esi
sar ecx, 8
mov byte [rax], cl
movzx ecx, r8b
sub cl, byte [r10 + 0x28]
lea r8, [0x180000000]
mov rax, qword [r10 + 0x40]
add cl, 4
mov byte [rax + 1], cl
lea rcx, [rdx + r9]
add qword [r10 + 0x40], 2
mov r11, qword [rsp + 0x78]
dec r13d
mov qword [rbp + 0xc0], rcx
mov qword [rsp + 0x70], r11
jmp 0x18004123e
movzx ecx, byte [rdx + 1]
movzx eax, byte [rdx + 2]
shl ecx, 8
or ecx, eax
mov dword [rbp - 0x38], ebx
jne 0x180041895
mov eax, dword [rbp - 0x70]
lea rcx, [rsp + 0x70]
mov r9, r8
mov dword [rsp + 0x70], eax
mov r8, rdx
mov dword [rbp - 0x38], ebx
mov rdx, qword [rbp + 0x2d0]
mov dword [rsp + 0x20], 0xc2
call fcn.180047f20
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
test eax, eax
jne 0x180042474
mov r10, qword [rbp + 0x2b0]
lea r8, [0x180000000]
mov r9d, dword [rbp - 0x74]
dec r13d
jmp 0x18004123e
mov r11, qword [rsp + 0x78]
lea r8, [0x180000000]
mov r10, qword [rbp + 0x2b0]
dec r13d
mov qword [rsp + 0x70], r11
jmp 0x18004123e
add qword [rbp - 0x80], 3
lea r8, [0x180000000]
dec r13d
jmp 0x18004123e
mov dword [rbp + 0x54], 9
lea r8, [0x180000000]
dec r13d
jmp 0x18004123e
mov r8, qword [rbp - 0x80]
mov rcx, qword [rbp + 0xc0]
mov eax, ecx
mov byte [r8], 0x52
sub eax, dword [r10 + 0x28]
sar eax, 8
mov byte [r8 + 1], al
movzx eax, cl
sub al, byte [r10 + 0x28]
mov byte [r8 + 2], al
dec r13d
mov r11, qword [rsp + 0x78]
lea r8, [0x180000000]
mov qword [rsp + 0x70], r11
jmp 0x18004123e
mov ebx, dword [rbp + 0xac]
cmp ebx, 0x2d
jne 0x180041969
test edx, edx
je 0x180042489
mov r9d, dword [r10 + 0x58]
sub r9d, edx
inc r9d
mov dword [rbp - 0x74], r9d
test r9d, r9d
jle 0x1800423d7
mov r10, qword [rbp + 0x2b0]
lea r8, [0x180000000]
mov r13d, 0x5d
mov dword [rbp - 0x74], r9d
dec r13d
jmp 0x18004123e
cmp ebx, 0x2b
jne 0x18004199f
test r9d, r9d
je 0x18004249e
add r9d, dword [r10 + 0x58]
lea r8, [0x180000000]
mov r10, qword [rbp + 0x2b0]
mov r13d, 0x5d
mov dword [rbp - 0x74], r9d
dec r13d
jmp 0x18004123e
mov r9d, dword [rbp - 0x74]
mov r10, qword [rbp + 0x2b0]
lea r8, [0x180000000]
mov r13d, 0x5d
dec r13d
jmp 0x18004123e
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x18], rax
dec r13d
lea r8, [0x180000000]
jmp 0x18004123e
xor eax, eax
lea rdx, [rbp - 0x60]
mov ecx, eax
mov dword [rbp - 0x30], eax
mov ebx, eax
mov dword [rbp - 0x60], eax
movzx eax, byte [r11]
cmp al, 0x29
je 0x180041ad8
nop
cmp al, 0x3a
je 0x180041ad2
inc r11
movzx eax, al
sub eax, 0x2d
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
cmp eax, 0x4b
ja case.0x180041a26.53
cdqe
movzx eax, byte [r8 + rax + 0x4284c]
mov ecx, dword [r8 + rax*4 + 0x42828]
add rcx, r8
jmp rcx
lea rdx, [rbp - 0x30]
jmp 0x180041ac6
mov eax, 0xa0
cmp eax, 0xa0
je 0x180041a54
cmp eax, 0x140
je 0x180041a4d
cmp eax, 0x1e0
je 0x180041ac6
jmp 0x180041a5a
or dword [r10 + 0x6c], 0x10
jmp 0x180041a5a
or dword [rdx], 0x80000
add eax, 0xa0
cmp eax, 0x280
jb 0x180041a36
or dword [rdx], 1
jmp 0x180041ac6
or dword [rdx], 2
jmp 0x180041ac6
or dword [rdx], 4
jmp 0x180041ac6
or dword [rdx], 8
jmp 0x180041ac6
or dword [rdx], 0x200
jmp 0x180041ac6
or dword [rdx], 0x40
jmp 0x180041ac6
mov ecx, 0xe1
nop dword [rax]
mov eax, ecx
sub eax, 0xe0
je 0x1800421f8
cmp eax, 1
jne 0x180041abc
mov rax, qword [rbp + 0x2d8]
dec r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov dword [rax], 0xc
dec ecx
cmp ecx, 0xdf
ja 0x180041a90
movzx eax, byte [r11]
cmp al, 0x29
jne 0x1800419f0
mov ebx, dword [rbp - 0x60]
mov ecx, dword [rbp - 0x30]
mov r8d, dword [rbp - 0x50]
not ecx
or ebx, r8d
and ebx, ecx
cmp byte [r11], 0x29
mov dword [rbp - 0x60], ebx
jne 0x18003fa19
mov rax, qword [r10 + 0x28]
mov rcx, qword [rbp - 0x80]
add rax, 3
cmp rcx, rax
jne 0x180041b31
mov rax, qword [rbp + 0x2c8]
test rax, rax
je 0x180041b12
cmp dword [rax], 6
jne 0x180041b31
xor ecx, ecx
mov dword [r10 + 0x68], ebx
inc r11
mov dword [rbp - 0x50], ebx
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov qword [rbp - 0x18], rcx
jmp 0x18003c360
mov r14d, dword [rbp + 0xe0]
mov edx, 0xf9
nop dword [rax]
cmp edx, 0xf9
je 0x180041b9a
cmp edx, 0x4416
je 0x180041b8c
cmp edx, 0x8733
je 0x180041b7f
cmp edx, 0xca50
jne 0x180041bb2
mov r15d, r14d
mov r12d, r8d
xor r15d, 1
and r12d, 1
shl r12d, 8
mov dword [rbp + 0x6c], r12d
mov dword [rbp + 0x120], r15d
jmp 0x180041bb2
mov r14d, ebx
shr r14d, 9
and r14d, 1
jmp 0x180041bb2
mov rax, qword [rbp + 0x2b8]
mov r8d, ebx
mov dword [rax], ebx
jmp 0x180041bb2
mov eax, ebx
xor eax, r8d
test al, 7
je 0x180041bb2
mov byte [rcx], 0x19
movzx eax, bl
and al, 7
mov byte [rcx + 1], al
add rcx, 2
add edx, 0x431d
cmp edx, 0x10c74
jbe 0x180041b40
mov r11, qword [rsp + 0x78]
mov r15, qword [rbp + 0x60]
mov r12, qword [rbp + 8]
mov qword [rbp - 0x80], rcx
xor ecx, ecx
inc r11
mov dword [rbp + 0xe0], r14d
mov r14d, dword [rbp - 0x20]
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov dword [rbp - 0x50], r8d
mov qword [rbp - 0x18], rcx
jmp 0x18003c360
mov r9d, dword [rbp - 0x78]
mov r13, qword [rbp - 0x80]
jmp 0x18003fa36
mov eax, dword [rbp + 0x118]
cmp eax, 2
jg 0x18004240d
cmp eax, 1
jne 0x180041c65
mov eax, 0xffffffff
mov r10d, eax
mov dword [rbp + 0xb0], eax
mov r9d, eax
mov dword [rbp + 0x100], eax
jmp 0x180041c65
xor eax, eax
mov rdx, r13
mov r14d, eax
nop word [rax + rax]
movzx ecx, byte [rdx + 1]
inc r14d
movzx eax, byte [rdx + 2]
shl rcx, 8
or rcx, rax
add rdx, rcx
cmp byte [rdx], 0x55
jne 0x180041c40
mov dword [rbp + 0x118], r14d
mov r14d, dword [rbp - 0x20]
add r8d, 0x95
cmp r8d, 0x20d
jb 0x18003fb40
jmp 0x180041c89
mov r10d, dword [rbp + 0xb0]
mov r9d, dword [rbp + 0x100]
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x70], rdx
cmp byte [rdx], 0x29
jne 0x18004242b
mov r8, qword [rbp + 0x2c8]
test r8, r8
je 0x180041d49
mov edx, 0xe
cmp edx, 0xe
je 0x180041d17
cmp edx, 0x4fa
je 0x180041cf8
cmp edx, 0x9e6
je 0x180041cea
cmp edx, 0xed2
jne 0x180041d2d
mov rax, qword [rbp + 0x38]
mov word [r13], 0x300
add r13, 2
mov qword [rbp - 0x80], r13
mov qword [rbp + 0x38], rax
jmp 0x18003ca2c
mov byte [r13], 0x55
inc r13
mov qword [rbp - 0x80], r13
jmp 0x180041d2d
mov eax, dword [rbp + 0x54]
add eax, 0xfffffffa
add dword [r8], eax
mov word [r13], 0x5e
mov byte [r13 + 2], 3
add r13, 3
mov qword [rbp - 0x80], r13
jmp 0x180041d2d
mov eax, dword [rbp + 0x54]
mov ecx, 0x7fffffeb
sub ecx, dword [r8]
add eax, 0xfffffffa
cmp ecx, eax
jl 0x18004241c
add edx, 0x4ec
cmp edx, 0x13b0
jbe 0x180041cb1
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x70], rdx
mov rax, qword [rbp + 0x38]
xor ecx, ecx
mov qword [rbp + 0x38], rax
mov qword [rbp - 0x80], rax
cmp r11d, 0x66
je 0x180041dc0
mov eax, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x54]
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x28], r8d
mov dword [rbp + 0xfc], ecx
cmp r11d, 0x5d
jl 0x180041dd7
cmp r8d, 0xfffffffe
jne 0x180041da0
lea eax, [rcx - 1]
test r9d, r9d
js 0x180041d98
mov dword [rbp - 0x54], r9d
mov dword [rbp + 0xfc], 1
mov dword [rbp + 0x28], eax
jmp 0x180041db7
mov dword [rbp - 0x54], eax
mov dword [rbp + 0x28], eax
jmp 0x180041db7
test r9d, r9d
js 0x180041db7
test r10d, r10d
jns 0x180041dbc
mov r10d, r9d
or r10d, ebx
mov dword [rbp + 0xb0], r10d
test r10d, r10d
js 0x180041dc0
mov dword [rbp - 0x10], r10d
mov r11, qword [rsp + 0x70]
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
cmp r11d, 0x58
jne 0x180041dc0
mov r11, qword [rsp + 0x70]
test r10d, r10d
js 0x18003ca33
inc r11
mov dword [rbp - 0x10], r10d
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
xor ecx, ecx
cmp dword [rbp - 0x54], 0xfffffffe
jne 0x18003ca33
inc r11
mov dword [rbp - 0x54], 0xffffffff
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
cmp r10d, 0x1d
jl 0x180041f17
mov edx, 0x1c
cmp edx, 0x5a3c
ja 0x18003ca31
cmp edx, 0x1c
je 0x180041efd
cmp edx, 0x1228
je 0x1800411f7
cmp edx, 0x2434
je 0x180041ed7
cmp edx, 0x3640
je 0x180041e93
cmp edx, 0x484c
jne 0x180041e87
mov rcx, qword [rbp + 0x2b0]
mov r8d, dword [rbp - 0x74]
cmp r8d, dword [rcx + 0x60]
jle 0x180041e83
mov dword [rcx + 0x60], r8d
mov r8d, dword [rbp - 0x54]
mov rbx, qword [rbp - 0x80]
add edx, 0x120c
jmp 0x180041e35
mov r8d, dword [rbp - 0x74]
mov r9d, 1
mov byte [rbx + 1], r8b
mov ecx, r8d
mov r11, qword [rsp + 0x78]
add rbx, 2
mov eax, r9d
mov qword [rbp - 0x80], rbx
shl eax, cl
mov rcx, qword [rbp + 0x2b0]
cmp r8d, 0x20
mov r8d, dword [rbp - 0x54]
cmovge eax, r9d
or dword [rcx + 0x64], eax
add edx, 0x120c
jmp 0x180041e35
mov eax, dword [rbp - 0x74]
mov byte [rbx], 0x51
sar eax, 8
mov qword [rbp - 0x18], rbx
inc rbx
mov qword [rbp - 0x80], rbx
add edx, 0x120c
mov byte [rbx], al
mov r11, qword [rsp + 0x78]
jmp 0x180041e35
mov rbx, qword [rbp - 0x80]
mov eax, 0xffffffe3
sub eax, r13d
mov dword [rbp - 0x74], eax
add edx, 0x120c
jmp 0x180041e35
cmp r10d, 0x16
je 0x1800424b0
lea eax, [r10 - 0xf]
cmp eax, 1
jbe 0x1800424b0
xor ecx, ecx
lea eax, [r10 - 6]
cmp eax, 0x10
cmovbe rcx, rbx
neg r13b
mov byte [rbx], r13b
mov qword [rbp - 0x18], rcx
jmp 0x18003ca25
cmp dword [rbp - 0x70], 0
je 0x180041f94
cmp r13d, 0x7f
jle 0x180041f94
mov r8d, 6
mov dword [rsp + 0x70], r13d
lea rdx, [rbp + 0xb8]
lea rcx, [rsp + 0x70]
call fcn.18002fe80
mov r11, qword [rsp + 0x78]
mov r13d, 0xfe
mov rbx, qword [rbp - 0x80]
inc r13d
mov r8d, dword [rbp - 0x50]
mov r15d, eax
xor r10d, r10d
mov qword [rbp + 0x60], r15
jmp 0x180041fc6
mov r11, qword [rsp + 0x78]
mov r15d, 1
mov rbx, qword [rbp - 0x80]
mov r8d, dword [rbp - 0x50]
mov byte [rbp + 0xb8], r13b
mov r13d, 0xfe
inc r13d
mov qword [rbp + 0x60], r15
xor r10d, r10d
jmp 0x180041fc6
mov r13d, 0xfd
cmp r13d, 0x102
jae 0x18003ca31
mov eax, r13d
movsxd rdx, r15d
sub eax, 0xfd
je 0x18003c703
sub eax, 1
je 0x18004208f
sub eax, 1
je 0x180042078
sub eax, 1
je 0x180042028
cmp eax, 1
jne 0x18003c713
movzx eax, byte [rbp + 0xb8]
cmp al, 0xd
je 0x180042017
cmp al, 0xa
jne 0x180042107
mov r10, qword [rbp + 0x2b0]
or dword [r10 + 0x6c], 0x20
jmp 0x18004210e
movzx eax, r8b
mov dword [rbp - 0x40], r10d
and al, 1
or al, 0x1c
mov byte [rbx], al
inc rbx
mov qword [rbp - 0x80], rbx
test r15d, r15d
jle 0x180042060
mov rcx, qword [rbp - 0x80]
lea rdx, [rbp + 0xb8]
mov r8d, r15d
mov ebx, r15d
call fcn.180088a90
add qword [rbp - 0x80], rbx
mov dword [rbp - 0x40], r15d
mov r11, qword [rsp + 0x78]
inc r13d
mov rbx, qword [rbp - 0x80]
xor r10d, r10d
mov r8d, dword [rbp - 0x50]
jmp 0x180041fc6
mov r8d, dword [rbp - 0x50]
inc r13d
mov qword [rbp - 0x18], rbx
xor r10d, r10d
mov rbx, qword [rbp - 0x80]
jmp 0x180041fc6
cmp dword [rbp - 0x70], 0
mov r9, qword [rbp - 0x40]
mov byte [rbp + 0xb8], r9b
je 0x1800420ee
cmp r9d, 0xc0
jl 0x1800420ee
movzx eax, byte [r11 + 1]
lea r8, [r11 + 1]
and al, 0xc0
cmp al, 0x80
jne 0x1800420ee
lea rdx, [rbp + rdx + 0xb8]
mov qword [rsp + 0x78], r8
lea rdx, [rdx + 1]
movzx eax, byte [r8]
inc r15d
movzx ecx, byte [r8 + 1]
mov r11, r8
mov byte [rdx - 1], al
and cl, 0xc0
lea rax, [r8 + 1]
mov r8, rax
cmp cl, 0x80
je 0x1800420c0
mov qword [rbp + 0x60], r15
mov rbx, qword [rbp - 0x80]
mov r13d, 0xfe
mov r8d, dword [rbp - 0x50]
inc r13d
xor r10d, r10d
jmp 0x180041fc6
mov r10, qword [rbp + 0x2b0]
mov r8d, dword [rbp - 0x54]
cmp r8d, 0xfffffffe
jne 0x1800421a5
mov r14d, dword [rbp - 0x10]
mov ecx, 0x37
mov edi, dword [rbp + 0x6c]
lea esi, [rcx - 0x38]
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x37
je 0x180042179
sub eax, 1
je 0x180042173
cmp eax, 1
jne 0x18004217c
cmp rdx, 1
je 0x180042153
test edi, edi
je 0x180042153
mov r14d, esi
mov dword [rbp - 0x54], esi
jmp 0x18004217c
movzx r8d, byte [rbp + 0xb8]
or r8d, edi
mov dword [rbp - 0x54], r8d
cmp rdx, 1
je 0x18004217c
movzx r14d, byte [rbx - 1]
or r14d, dword [r10 + 0x70]
jmp 0x18004217c
mov dword [rbp + 0x58], r14d
jmp 0x18004217c
mov dword [rbp + 0x28], esi
inc ecx
cmp ecx, 0x3a
jb 0x180042130
mov edi, dword [rbp - 0x24]
xor ecx, ecx
mov esi, dword [rbp - 0x38]
inc r11
mov dword [rbp - 0x10], r14d
mov r14d, dword [rbp - 0x20]
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
mov eax, dword [rbp - 0x10]
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x28], r8d
cmp rdx, 1
je 0x1800421bf
cmp dword [rbp + 0x6c], 0
jne 0x18003ca31
movzx eax, byte [rbx - 1]
xor ecx, ecx
or eax, dword [r10 + 0x70]
or eax, dword [rbp + 0x6c]
inc r11
mov dword [rbp - 0x10], eax
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
jmp 0x18003c360
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x34
mov r8, qword [rbp + 0x2a0]
mov r13d, 0x28100
mov r9d, dword [rbp + 0x2a8]
mov eax, r9d
mov rdx, qword [rbp + 0x298]
shl eax, 6
mov qword [r8], r11
add r13d, eax
jmp 0x18003c001
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x14
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x14
jmp 0x1800421f8
cmp byte [r11 + 1], 0x3a
mov ecx, 0xd
mov eax, 0x1f
mov qword [rsp + 0x70], r11
cmove eax, ecx
mov rcx, qword [rbp + 0x2d8]
mov dword [rcx], eax
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov dword [rax], 0x1e
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x1f
jmp 0x1800421f8
mov dword [rcx], 7
mov qword [rsp + 0x70], r11
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 8
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 6
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 9
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x3c
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x3b
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
inc r11
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x78], r11
mov dword [rax], 0x1c
jmp 0x1800421f8
mov r11, qword [rsp + 0x78]
mov ecx, 0x23
test r9d, r9d
mov qword [rsp + 0x70], r11
mov eax, 0xf
cmove eax, ecx
mov rcx, qword [rbp + 0x2d8]
mov dword [rcx], eax
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov dword [rax], 0x3a
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov dword [rax], 0xf
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x27
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x30
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x2a
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x3e
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0xf
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x36
mov r11, qword [rsp + 0x78]
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x70], r11
mov qword [rbp + 0x38], rax
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x1b
jmp 0x1800423f6
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x14
jmp 0x1800423f6
mov rax, qword [rbp + 0x2d8]
mov r11, qword [rsp + 0x70]
mov dword [rax], 0xe
mov rax, qword [rbp + 0x38]
mov qword [rbp + 0x38], rax
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov r11, qword [rsp + 0x78]
mov qword [rsp + 0x70], r11
mov dword [rax], 0xf
mov rax, qword [rbp + 0xc0]
mov qword [rbp + 0xc0], rax
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rbp - 0x38], ebx
mov dword [rax], 0x28
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rbp - 0x74], edx
mov dword [rax], 0x3a
jmp 0x1800421f8
mov rax, qword [rbp + 0x2d8]
mov dword [rax], 0x3a
jmp 0x1800421f8
mov dword [rcx], 0x2d
jmp 0x1800421f8
mov eax, dword [rbp - 0x50]
and eax, 1
mov dword [rbp + 0x58], 0xfffffffe
shl eax, 8
mov dword [rbp + 0x6c], eax
mov dword [rbp + 0x28], 0xfffffffe
mov dword [rbp - 0x10], 0xfffffffe
mov dword [rbp - 0x54], 0xfffffffe
mov rdx, qword [rbp + 0x298]
mov eax, r9d
shl eax, 6
add r13d, eax
jmp 0x18003c001
mov ecx, 0x5f
nop dword [rax]
mov eax, ecx
sub eax, 0x5e
je 0x18003c130
cmp eax, 1
jne 0x180042526
mov rax, qword [rbp + 0x2b8]
mov r12, qword [rax]
mov r12, qword [r12 + 0x80]
mov qword [rbp + 8], r12
dec ecx
cmp ecx, 0x5d
ja 0x180042500
xor ecx, ecx
mov dword [rbp + 8], ecx
mov rax, qword [rbp + 8]
jmp 0x18003c133