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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov r11, qword [rdx]
mov edx, dword [rcx]
mov r10, qword [r8]
mov rdi, qword [rbp + 0xd0]
xor ebx, ebx
mov r12d, 0xfffffffe
mov eax, edx
mov r15, r9
mov dword [rsp + 0x78], edx
shr eax, 0xb
mov dword [rbp - 0x44], ebx
mov dword [rbp - 0x48], ebx
and eax, 1
mov dword [rbp - 0x2c], ebx
mov dword [rbp - 0x40], ebx
mov dword [rsp + 0x7c], eax
mov eax, edx
mov qword [rsp + 0x70], r11
shr eax, 9
mov r9, r11
mov qword [rbp + 0x28], r11
and eax, 1
mov qword [rbp + 0x20], r11
mov ecx, ebx
mov dword [rbp + 0x18], eax
xor eax, 1
mov dword [rsp + 0x68], ebx
mov dword [rbp + 0x1c], eax
mov eax, edx
mov dword [rbp - 0x28], ebx
and eax, 1
mov r13d, ebx
mov qword [rbp - 0x68], rbx
shl eax, 8
mov r8d, ebx
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x5c], r12d
mov esi, r12d
mov dword [rbp - 0x3c], eax
mov dword [rbp - 0x60], r12d
mov dword [rbp - 0x7c], r12d
mov dword [rbp - 0x80], r12d
mov r14, qword [rbp + 0xc8]
mov qword [rsp + 0x60], r10
movzx ebx, byte [r10]
mov rax, qword [r14 + 0x20]
add rax, 0x1000
test rdi, rdi
je 0x180074158
cmp r11, rax
ja 0x180076b94
cmp r11, r9
cmovb r11, r9
mov eax, r11d
mov qword [rsp + 0x70], r11
sub eax, r9d
add dword [rdi], eax
test r13, r13
je 0x180074149
mov rax, qword [rbp + 0x20]
cmp r13, rax
jbe 0x180074152
mov r8, r11
mov rdx, r13
mov rcx, rax
sub r8, r13
call fcn.180046390
mov rax, qword [rbp + 0x20]
mov r10, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x68]
mov edx, dword [rsp + 0x78]
mov r8, qword [rbp - 0x70]
mov r11, rax
mov qword [rbp - 0x68], rax
sub r11, r13
mov r13, rax
add qword [rsp + 0x70], r11
mov r11, qword [rsp + 0x70]
mov qword [rbp + 0x28], r11
jmp 0x180074162
mov r11, qword [rbp + 0x20]
mov qword [rsp + 0x70], r11
mov qword [rbp + 0x28], r11
jmp 0x180074162
cmp qword [r14 + 0x40], rax
ja 0x180076b94
test ecx, ecx
je 0x1800742e7
test ebx, ebx
je 0x1800742e7
cmp ebx, 0x5c
jne 0x18007419e
cmp byte [r10 + 1], 0x45
jne 0x18007419e
mov r15, qword [rbp + 0xa8]
mov edx, dword [rsp + 0x78]
mov r9, qword [rbp + 0x28]
xor ecx, ecx
inc r10
mov dword [rsp + 0x68], ecx
inc r10
jmp 0x1800740bc
test r8, r8
je 0x1800741d7
test rdi, rdi
jne 0x1800741d1
movzx eax, byte [r8 + 3]
movzx ecx, byte [r8 + 2]
shl ecx, 8
or ecx, eax
sub r10d, ecx
sub r10d, dword [r14 + 0x30]
mov eax, r10d
mov byte [r8 + 5], r10b
sar eax, 8
mov byte [r8 + 4], al
mov r10, qword [rsp + 0x60]
xor eax, eax
mov qword [rbp - 0x70], rax
bt edx, 0xe
jae case.0x180074464.11
mov word [r11], 0xff4d
mov eax, r10d
mov qword [rbp - 0x70], r11
sub eax, dword [r14 + 0x30]
sar rax, 8
mov byte [r11 + 2], al
sub r10b, byte [r14 + 0x30]
mov word [r11 + 4], 0
mov byte [r11 + 3], r10b
mov r10, qword [rsp + 0x60]
add r11, 6
cmp dword [rsp + 0x7c], 0
mov edi, 1
mov byte [rbp - 0x18], bl
je 0x18007425f
cmp ebx, 0xc0
jl 0x18007425f
movzx eax, byte [r10 + 1]
inc r10
and al, 0xc0
cmp al, 0x80
jne 0x18007425f
lea rcx, [rbp - 0x17]
nop word [rax + rax]
mov qword [rsp + 0x60], r10
movzx eax, byte [r10]
inc rcx
mov byte [rcx - 1], al
movzx eax, byte [r10 + 1]
inc edi
inc r10
and al, 0xc0
cmp al, 0x80
je 0x180074240
mov r14d, dword [rbp - 0x7c]
movzx eax, byte [rsp + 0x78]
mov r13, r11
mov qword [rbp - 0x68], r11
and al, 1
inc r11
or al, 0x16
mov qword [rsp + 0x70], r11
mov byte [r11 - 1], al
test edi, edi
je 0x1800742a2
movsxd rbx, edi
lea rdx, [rbp - 0x18]
mov rcx, r11
mov r8, rbx
call fcn.180046390
mov r11, qword [rsp + 0x70]
add r11, rbx
mov qword [rsp + 0x70], r11
mov r8d, dword [rbp - 0x80]
mov r12d, r14d
mov dword [rbp - 0x5c], r14d
cmp r8d, 0xfffffffe
jne 0x180076944
or r15d, 0xffffffff
mov esi, r15d
mov dword [rbp - 0x60], r15d
cmp edi, 1
je 0x180076913
cmp dword [rbp - 0x3c], 0
je 0x180076913
mov r10, qword [rsp + 0x60]
mov dword [rbp - 0x7c], r15d
mov dword [rbp - 0x80], r15d
jmp 0x18007651d
cmp ebx, 0x2a
je 0x180074360
cmp ebx, 0x2b
je 0x180074360
cmp ebx, 0x3f
je 0x180074360
cmp ebx, 0x7b
jne 0x180074308
lea rcx, [r10 + 1]
call fcn.180072b50
test eax, eax
jne 0x180074360
mov r8, qword [rbp - 0x70]
xor r9d, r9d
mov edi, r9d
test r8, r8
je 0x180074368
mov ecx, dword [rbp - 0x2c]
mov eax, ecx
dec ecx
mov dword [rbp - 0x2c], ecx
test eax, eax
jg 0x180074368
cmp qword [rbp + 0xd0], rdi
jne 0x180074357
movzx eax, byte [r8 + 3]
movzx ecx, byte [r8 + 2]
shl ecx, 8
or ecx, eax
sub r10d, ecx
sub r10d, dword [r14 + 0x30]
mov eax, r10d
mov byte [r8 + 5], r10b
sar eax, 8
mov byte [r8 + 4], al
mov r10, qword [rsp + 0x60]
mov r8, r9
mov qword [rbp - 0x70], r9
jmp 0x180074368
mov edi, 1
xor r9d, r9d
mov edx, dword [rsp + 0x78]
test dl, 8
je 0x1800743ff
mov rax, qword [r14 + 0x18]
test byte [rbx + rax], 1
jne 0x18007651d
cmp ebx, 0x23
jne 0x1800743ff
inc r10
mov qword [rsp + 0x60], r10
movzx r8d, byte [r10]
test r8b, r8b
je 0x1800743f7
nop dword [rax]
cmp dword [r14 + 0x70], 0
je 0x180074466
mov rdx, qword [r14 + 0x38]
cmp r10, rdx
jae 0x180074494
mov r9d, dword [rsp + 0x7c]
lea r8, [r14 + 0x74]
mov rcx, r10
call fcn.1800781c0
mov r10, qword [rsp + 0x60]
test eax, eax
je 0x180074494
mov eax, dword [r14 + 0x74]
dec eax
cdqe
add r10, rax
mov qword [rsp + 0x60], r10
cmp byte [r10], 0
jne 0x180076518
mov edx, dword [rsp + 0x78]
xor r9d, r9d
mov r11, qword [rsp + 0x70]
mov ebx, r9d
bt edx, 0xe
jae 0x18007443d
test edi, edi
jne 0x18007443d
mov word [r11], 0xff4d
mov eax, r10d
mov qword [rbp - 0x70], r11
sub eax, dword [r14 + 0x30]
sar rax, 8
mov byte [r11 + 2], al
sub r10b, byte [r14 + 0x30]
mov word [r11 + 4], di
mov byte [r11 + 3], r10b
mov r10, qword [rsp + 0x60]
add r11, 6
mov qword [rsp + 0x70], r11
cmp ebx, 0x7c
ja case.0x180074464.11
lea r8, [0x180000000]
movsxd rax, ebx
movzx eax, byte [r8 + rax + 0x76bec]
mov ecx, dword [r8 + rax*4 + 0x76bbc]
add rcx, r8
jmp rcx
movsxd rdx, dword [r14 + 0x74]
mov rcx, qword [r14 + 0x38]
sub rcx, rdx
cmp r10, rcx
ja 0x180074494
cmp r8b, byte [r14 + 0x78]
jne 0x180074494
cmp edx, 1
je 0x1800743d6
movzx eax, byte [r14 + 0x79]
cmp byte [r10 + 1], al
je 0x1800743d6
inc r10
mov qword [rsp + 0x60], r10
movzx r8d, byte [r10]
test r8b, r8b
jne 0x1800743a0
jmp 0x1800743f0
test dl, 2
je 0x1800744c4
mov eax, dword [rbp - 0x80]
mov ecx, 0xffffffff
cmp eax, 0xfffffffe
cmove eax, ecx
mov dword [rbp - 0x80], eax
mov byte [r11], 0x14
inc r11
mov r13, r9
mov qword [rsp + 0x70], r11
mov qword [rbp - 0x68], r9
mov r10, qword [rsp + 0x60]
jmp 0x18007651d
mov byte [r11], 0x15
mov r10, qword [rsp + 0x60]
inc r11
mov qword [rsp + 0x70], r11
mov r13, r9
mov qword [rbp - 0x68], r9
jmp 0x18007651d
mov r8d, dword [rbp - 0x80]
mov r12d, dword [rbp - 0x7c]
mov byte [r11], 0xb
mov r10, qword [rsp + 0x60]
cmp r8d, 0xfffffffe
mov eax, 0xffffffff
cmove r8d, eax
mov r13, r11
mov qword [rbp - 0x68], r11
inc r11
mov dword [rbp - 0x80], r8d
mov esi, r8d
mov dword [rbp - 0x60], r8d
mov dword [rbp - 0x5c], r12d
mov qword [rsp + 0x70], r11
jmp 0x18007651d
movzx eax, byte [r10 + 1]
lea r8, [r10 + 1]
mov qword [rbp - 0x68], r11
cmp al, 0x3a
je 0x180074558
cmp al, 0x2e
je 0x180074558
cmp al, 0x3d
jne 0x1800745a2
cmp byte [r8 + 1], 0x5e
movzx r9d, byte [r8]
lea rdx, [r8 + 1]
jne 0x18007456a
inc rdx
movzx ecx, byte [rdx]
mov rax, qword [r14 + 0x18]
test byte [rcx + rax], 2
je 0x18007458d
mov rcx, rax
nop word [rax + rax]
movzx eax, byte [rdx + 1]
inc rdx
test byte [rax + rcx], 2
jne 0x180074580
movzx eax, byte [rdx]
cmp eax, r9d
jne 0x18007459f
cmp byte [rdx + 1], 0x5d
je 0x180076982
xor r9d, r9d
mov qword [rsp + 0x60], r8
movzx edi, byte [r8]
cmp edi, 0x5e
jne 0x1800745c2
inc r8
lea r12d, [rdi - 0x5d]
mov qword [rsp + 0x60], r8
movzx edi, byte [r8]
jmp 0x1800745c5
mov r12d, r9d
or r15d, 0xffffffff
lea rcx, [rbp - 0x10]
xor edx, edx
lea r8d, [r15 + 0x21]
mov dword [rbp - 0x78], r12d
mov r13d, r9d
call fcn.1800462b0
mov rax, qword [rsp + 0x70]
mov r10, qword [rsp + 0x60]
xor r9d, r9d
lea r14, [rax + 4]
mov dword [rsp + 0x6c], r9d
test edi, edi
je 0x1800769b2
mov ebx, dword [rsp + 0x7c]
test ebx, ebx
je 0x180074676
cmp edi, 0x7f
jle 0x180074676
movzx edi, byte [r10]
cmp edi, 0xc0
jl 0x180074676
mov eax, edi
lea rdx, [0x180000000]
and eax, 0x3f
movzx ecx, byte [rax + rdx + 0x88080]
mov r9d, ecx
mov eax, dword [rdx + rcx*4 + 0x88060]
lea r8d, [rcx + rcx*2]
mov edx, 1
and eax, edi
add r8d, r8d
mov edi, eax
mov ecx, r8d
shl edi, cl
cmp rdx, r9
jg 0x18007466b
nop
movzx eax, byte [rdx + r10]
sub r8d, 6
inc rdx
and eax, 0x3f
mov ecx, r8d
shl eax, cl
or edi, eax
cmp rdx, r9
jle 0x180074650
add r10, r9
xor r9d, r9d
mov qword [rsp + 0x60], r10
mov ecx, dword [rsp + 0x68]
test ecx, ecx
je 0x18007469d
cmp edi, 0x5c
jne 0x1800746f8
cmp byte [r10 + 1], 0x45
lea rax, [r10 + 1]
jne 0x1800746f8
mov ecx, r9d
mov r10, rax
mov dword [rsp + 0x68], ecx
jmp 0x180074840
cmp edi, 0x5c
jne 0x1800746f8
mov rax, qword [rbp + 0xc8]
mov esi, dword [rsp + 0x78]
mov rbx, qword [rbp + 0xa8]
mov r8d, dword [rax + 0x58]
lea rcx, [rsp + 0x60]
mov r9d, esi
mov rdx, rbx
mov dword [rsp + 0x20], 1
call fcn.180072750
cmp dword [rbx], 0
mov edi, eax
jne 0x180076a3c
mov ecx, eax
neg ecx
cmp ecx, 4
jne 0x18007477f
lea edi, [rcx + 4]
mov ebx, dword [rsp + 0x7c]
mov ecx, dword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov r11, qword [rbp + 0xc8]
cmp byte [r10 + 1], 0x5c
jne 0x180074734
xor r12d, r12d
nop dword [rax]
cmp byte [r10 + 2], 0x45
lea rax, [r10 + 2]
jne 0x18007472c
mov qword [rsp + 0x60], rax
cmp byte [rax + 1], 0x5c
mov ecx, r12d
mov r10, rax
je 0x180074710
mov r12d, dword [rbp - 0x78]
mov dword [rsp + 0x68], ecx
mov rsi, r10
test ecx, ecx
jne 0x180074ba2
cmp byte [r10 + 1], 0x2d
jne 0x180074ba2
add r10, 2
mov qword [rsp + 0x60], r10
cmp byte [r10], 0x5c
jne 0x180074a87
nop dword [rax]
cmp byte [r10 + 1], 0x45
jne 0x180074a46
add r10, 2
mov qword [rsp + 0x60], r10
cmp byte [r10], 0x5c
je 0x180074760
jmp 0x180074a87
cmp ecx, 0x10
jne 0x18007478c
lea edi, [rcx + 0x48]
jmp 0x1800746eb
cmp ecx, 0xf
jne 0x180074799
lea edi, [rcx + 0x43]
jmp 0x1800746eb
cmp ecx, 0x14
jne 0x1800747c5
mov r10, qword [rsp + 0x60]
cmp byte [r10 + 1], 0x5c
jne 0x1800747ba
cmp byte [r10 + 2], 0x45
lea rax, [r10 + 2]
jne 0x1800747ba
mov r10, rax
jmp 0x180074835
mov ecx, 1
mov dword [rsp + 0x68], ecx
jmp 0x180074839
mov r11, qword [rbp + 0xc8]
test eax, eax
jns 0x180074a34
mov rdx, qword [r11 + 0x10]
add r13d, 2
cmp qword [rbp + 0xd0], 0
jne 0x1800749da
add ecx, 0xfffffffb
cmp ecx, 0xe
ja case.0x18007480b.11
lea r8, [0x180000000]
movsxd rax, ecx
mov ecx, dword [r8 + rax*4 + 0x76c6c]
add rcx, r8
jmp rcx
lea rax, [rbp - 0x10]
lea rcx, [rbp - 0x10]
mov r8d, 0x20
sub rdx, rax
nop
movzx eax, byte [rdx + rcx + 0x40]
inc rcx
or byte [rcx - 1], al
dec r8
jne 0x180074820
mov r10, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x7c]
xor r9d, r9d
mov esi, dword [rsp + 0x6c]
inc r10
mov qword [rsp + 0x60], r10
movzx edi, byte [r10]
test edi, edi
je 0x1800769b2
cmp edi, 0x5d
jne 0x180074601
test ecx, ecx
jne 0x180074601
cmp r13d, 1
jne 0x180074dbd
test ebx, ebx
je 0x180074891
test esi, esi
jne 0x180074dbd
test r12d, r12d
je 0x180074891
cmp r15d, 0x80
jge 0x180074dbd
cmp dword [rbp - 0x78], 0
mov r14d, dword [rbp - 0x7c]
mov r12d, r14d
mov dword [rbp - 0x5c], r14d
je 0x180074d88
mov r11, qword [rsp + 0x70]
mov eax, dword [rbp - 0x80]
mov r13, qword [rbp - 0x68]
mov byte [r11], 0x18
cmp eax, 0xfffffffe
mov byte [r11 + 1], r15b
mov r10, qword [rsp + 0x60]
mov edx, 0xffffffff
cmove eax, edx
add r11, 2
mov qword [rsp + 0x70], r11
mov dword [rbp - 0x80], eax
mov esi, eax
mov dword [rbp - 0x60], eax
jmp 0x180076521
lea rax, [rbp - 0x10]
lea rcx, [rbp - 0x10]
mov r8d, 0x20
sub rdx, rax
nop word [rax + rax]
movzx eax, byte [rdx + rcx + 0x40]
inc rcx
not al
or byte [rcx - 1], al
dec r8
jne 0x180074900
jmp case.0x18007480b.19
lea rax, [rbp - 0x10]
lea rcx, [rbp - 0x10]
mov r8d, 0x20
sub rdx, rax
nop dword [rax + rax]
movzx eax, byte [rdx + rcx + 0xa0]
inc rcx
or byte [rcx - 1], al
dec r8
jne 0x180074930
jmp case.0x18007480b.19
lea rax, [rbp - 0x10]
lea rcx, [rbp - 0x10]
mov r8d, 0x20
sub rdx, rax
nop dword [rax]
movzx eax, byte [rcx + rdx + 0xa0]
inc rcx
not al
or byte [rcx - 1], al
dec r8
jne 0x180074960
jmp case.0x18007480b.19
lea rax, [rbp - 0x10]
lea rcx, [rbp - 0x10]
mov r8d, 0x20
sub rdx, rax
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
or byte [rcx - 1], al
dec r8
jne 0x180074990
and byte [rbp - 0xf], 0xf7
jmp case.0x18007480b.19
lea rax, [rbp - 0x10]
lea rcx, [rbp - 0x10]
mov r8d, 0x20
sub rdx, rax
nop dword [rax]
movzx eax, byte [rdx + rcx]
inc rcx
not al
or byte [rcx - 1], al
dec r8
jne 0x1800749c0
or byte [rbp - 0xf], 8
jmp case.0x18007480b.19
cmp eax, 0xfffffffa
je case.0x18007480b.19
cmp eax, 0xfffffffb
je case.0x18007480b.19
cmp eax, 0xfffffff6
je case.0x18007480b.19
cmp eax, 0xfffffff7
je case.0x18007480b.19
cmp eax, 0xfffffff8
je case.0x18007480b.19
cmp eax, 0xfffffff9
je case.0x18007480b.19
mov r10, qword [rsp + 0x60]
test sil, 0x40
jne 0x18007699c
movzx edi, byte [r10]
mov ecx, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x7c]
sub r13d, 2
jmp 0x1800746ff
mov r10, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x7c]
jmp 0x1800746ff
cmp byte [r10], 0x5c
jne 0x180074a87
nop dword [rax]
cmp byte [r10 + 1], 0x51
jne 0x180074a87
add r10, 2
mov qword [rsp + 0x60], r10
cmp byte [r10], 0x5c
jne 0x180074a7e
cmp byte [r10 + 1], 0x45
jne 0x180074a7e
add r10, 2
mov qword [rsp + 0x60], r10
cmp byte [r10], 0x5c
je 0x180074a50
jmp 0x180074a87
mov ecx, 1
mov dword [rsp + 0x68], ecx
movzx eax, byte [r10]
test al, al
je 0x180074d0f
test ecx, ecx
jne 0x180074a9f
cmp al, 0x5d
je 0x180074d0f
test ebx, ebx
movzx ebx, al
je 0x180074b17
cmp ebx, 0xc0
jl 0x180074b17
mov eax, ebx
lea rdx, [0x180000000]
and eax, 0x3f
movzx ecx, byte [rax + rdx + 0x88080]
mov r9d, ecx
and ebx, dword [rdx + rcx*4 + 0x88060]
lea r8d, [rcx + rcx*2]
mov edx, 1
add r8d, r8d
mov ecx, r8d
shl ebx, cl
cmp rdx, r9
jg 0x180074b0b
nop word [rax + rax]
movzx eax, byte [rdx + r10]
sub r8d, 6
inc rdx
and eax, 0x3f
mov ecx, r8d
shl eax, cl
or ebx, eax
cmp rdx, r9
jle 0x180074af0
mov ecx, dword [rsp + 0x68]
add r10, r9
mov qword [rsp + 0x60], r10
test ecx, ecx
jne 0x180074bf7
cmp ebx, 0x5c
jne 0x180074bf7
mov r9d, dword [rsp + 0x78]
mov r8d, dword [r11 + 0x58]
mov rdx, qword [rbp + 0xa8]
lea rcx, [rsp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.180072750
mov ebx, eax
mov rax, qword [rbp + 0xa8]
cmp dword [rax], 0
jne 0x180076a3c
test ebx, ebx
jns 0x180074b8f
cmp ebx, 0xfffffffc
jne 0x180074b74
mov r10, qword [rsp + 0x60]
mov ebx, 8
jmp 0x180074bfe
cmp ebx, 0xfffffff0
jne 0x180074b85
mov r10, qword [rsp + 0x60]
mov ebx, 0x58
jmp 0x180074bfe
cmp ebx, 0xfffffff1
jne 0x180074b96
mov ebx, 0x52
mov r10, qword [rsp + 0x60]
jmp 0x180074bfe
mov r10, rsi
mov qword [rsp + 0x60], rsi
mov ebx, dword [rsp + 0x7c]
test ebx, ebx
je 0x180074d1c
cmp edi, 0xff
jg 0x180074bc6
test byte [rsp + 0x78], 1
je 0x180074d1c
cmp edi, 0x7f
jle 0x180074d1c
mov esi, 1
inc r14
mov ecx, edi
mov byte [r14 - 1], sil
mov rdx, r14
mov dword [rsp + 0x6c], esi
call fcn.180078770
mov r10, qword [rsp + 0x60]
movsxd rcx, eax
add r14, rcx
mov ecx, dword [rsp + 0x68]
xor r9d, r9d
jmp 0x180074844
mov rax, qword [rbp + 0xa8]
cmp ebx, edi
jl 0x1800769a7
je 0x180074b9e
cmp dword [rsp + 0x7c], 0
je 0x180074c78
cmp ebx, 0xff
jg 0x180074c26
mov esi, dword [rsp + 0x78]
test sil, 1
je 0x180074c7c
cmp ebx, 0x7f
jle 0x180074c7c
mov byte [r14], 2
inc r14
mov ecx, edi
mov rdx, r14
mov dword [rsp + 0x6c], 1
call fcn.180078770
movsxd rcx, eax
add r14, rcx
mov ecx, ebx
mov rdx, r14
call fcn.180078770
mov esi, dword [rsp + 0x78]
movsxd rcx, eax
add r14, rcx
test sil, 1
je case.0x18007480b.19
cmp edi, 0x7f
jg case.0x18007480b.19
mov r10, qword [rsp + 0x60]
mov ebx, 0x7f
jmp 0x180074c7c
mov esi, dword [rsp + 0x78]
mov eax, ebx
mov r15d, ebx
sub eax, edi
cmp qword [rbp + 0xd0], 0
lea r13d, [r13 + rax + 1]
jne 0x180074835
cmp edi, ebx
jg 0x180074835
mov r12, qword [rbp + 0xc8]
mov r11d, esi
movsxd r9, edi
and r11d, 1
nop
mov eax, edi
cdq
and edx, 7
add eax, edx
mov edx, 1
sar eax, 3
movsxd r8, eax
mov eax, edi
and eax, 7
movzx ecx, al
shl dl, cl
or byte [rbp + r8 - 0x10], dl
test r11d, r11d
je 0x180074cfd
mov rax, qword [r12 + 8]
movzx ecx, byte [rax + r9]
mov eax, ecx
and ecx, 7
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rdx, eax
mov eax, 1
shl al, cl
or byte [rbp + rdx - 0x10], al
inc edi
inc r9
cmp edi, ebx
jle 0x180074cb0
mov r12d, dword [rbp - 0x78]
jmp 0x180074835
mov r10, rsi
mov qword [rsp + 0x60], rsi
jmp 0x180074ba2
mov eax, edi
cdq
and edx, 7
add eax, edx
mov edx, 1
sar eax, 3
movsxd r8, eax
mov eax, edi
and eax, 7
movzx ecx, al
shl dl, cl
or byte [rbp + r8 - 0x10], dl
test byte [rsp + 0x78], 1
je 0x180074d79
mov rax, qword [rbp + 0xc8]
movsxd rcx, edi
mov rax, qword [rax + 8]
movzx edi, byte [rax + rcx]
mov eax, edi
cdq
and edx, 7
add eax, edx
mov edx, 1
sar eax, 3
movsxd r8, eax
mov eax, edi
and eax, 7
movzx ecx, al
shl dl, cl
or byte [rbp + r8 - 0x10], dl
mov ecx, dword [rsp + 0x68]
inc r13d
mov r15d, edi
jmp 0x18007483d
test ebx, ebx
je 0x180074daa
cmp r15d, 0x7f
jle 0x180074daa
lea rdx, [rbp - 0x18]
mov ecx, r15d
call fcn.180078770
mov r11, qword [rsp + 0x70]
mov edi, eax
jmp 0x180074263
mov r11, qword [rsp + 0x70]
mov byte [rbp - 0x18], r15b
mov edi, 1
jmp 0x180074263
mov ebx, dword [rbp - 0x80]
mov r11d, dword [rsp + 0x6c]
mov r12d, dword [rbp - 0x7c]
cmp ebx, 0xfffffffe
mov eax, 0xffffffff
mov dword [rbp - 0x5c], r12d
cmove ebx, eax
mov dword [rbp - 0x80], ebx
mov esi, ebx
mov dword [rbp - 0x60], ebx
test r11d, r11d
je 0x180074e72
mov rbx, qword [rsp + 0x70]
mov byte [r14], 0
inc r14
cmp dword [rbp - 0x78], 0
mov byte [rbx], 0x4a
setne al
mov byte [rbx + 3], al
test r13d, r13d
jle 0x180074e43
add rbx, 4
or al, 2
mov r8, r14
mov byte [rbx - 1], al
lea rcx, [rbx + 0x20]
sub r8, rbx
mov rdx, rbx
call fcn.180046390
lea rdx, [rbp - 0x10]
mov r8d, 0x20
mov rcx, rbx
call fcn.180046390
mov ecx, dword [rsp + 0x68]
lea r11, [r14 + 0x20]
mov qword [rsp + 0x70], r11
jmp 0x180074e4b
mov r11, r14
mov qword [rsp + 0x70], r14
mov r13, qword [rbp - 0x68]
mov rax, r11
sub rax, r13
sar rax, 8
mov byte [r13 + 1], al
movzx eax, r11b
sub al, r13b
mov byte [r13 + 2], al
mov r10, qword [rsp + 0x60]
jmp 0x180076521
cmp dword [rbp - 0x78], 0
je 0x180074eb4
mov r11, qword [rsp + 0x70]
mov rdi, qword [rbp + 0xd0]
mov byte [r11], 0x49
inc r11
test rdi, rdi
jne 0x180074ee7
lea r8, [rbp - 0x10]
mov rcx, r11
lea edx, [rdi + 0x20]
sub r8, r11
nop dword [rax]
movzx eax, byte [r8 + rcx]
inc rcx
dec rdx
not al
mov byte [rcx - 1], al
jne 0x180074ea0
jmp 0x180074ee3
mov rax, qword [rsp + 0x70]
lea rdx, [rbp - 0x10]
mov r8d, 0x20
inc rax
mov byte [rax - 1], 0x48
mov rcx, rax
mov qword [rsp + 0x70], rax
call fcn.180046390
mov r11, qword [rsp + 0x70]
mov rdi, qword [rbp + 0xd0]
mov ecx, dword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov r13, qword [rbp - 0x68]
add r11, 0x20
mov qword [rsp + 0x70], r11
jmp 0x180076528
test edi, edi
je case.0x180074464.11
lea rcx, [r10 + 1]
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x44]
mov r9, r15
call fcn.180072bf0
cmp dword [r15], 0
mov r10, rax
mov qword [rsp + 0x60], rax
jne 0x180076b9b
mov r15d, dword [rbp - 0x44]
mov r13d, dword [rbp - 0x48]
mov r11, qword [rsp + 0x70]
mov edx, dword [rsp + 0x78]
xor r9d, r9d
jmp 0x180074f73
or eax, 0xffffffff
mov r13d, eax
mov dword [rbp - 0x48], eax
jmp 0x180074f6c
or eax, 0xffffffff
mov r15d, 1
mov dword [rbp - 0x44], r15d
mov r13d, eax
mov dword [rbp - 0x48], eax
jmp 0x180074f73
mov r13d, 1
mov dword [rbp - 0x48], r13d
mov dword [rbp - 0x44], r9d
mov r15d, r9d
mov r8, qword [rbp - 0x68]
test r8, r8
je 0x1800769fa
test r15d, r15d
jne 0x180074f8c
mov dword [rbp - 0x80], esi
mov dword [rbp - 0x7c], r12d
mov eax, 0x200
cmp r15d, r13d
mov qword [rbp - 0x50], r8
movzx ecx, byte [r10 + 1]
cmove eax, r9d
mov ebx, r9d
mov dword [rbp + 0x30], eax
lea rax, [r10 + 1]
mov edi, r9d
mov dword [rbp - 0x78], r9d
mov r9, r8
cmp cl, 0x2b
jne 0x180074fd4
xor ecx, ecx
mov edi, 1
mov r10, rax
mov esi, ecx
mov dword [rsp + 0x6c], ecx
mov dword [rbp - 0x78], edi
mov qword [rsp + 0x60], rax
jmp 0x180074fef
cmp cl, 0x3f
jne 0x180074fe6
mov esi, dword [rbp + 0x1c]
mov r10, rax
mov qword [rsp + 0x60], rax
jmp 0x180074fe9
mov esi, dword [rbp + 0x18]
xor ecx, ecx
mov dword [rsp + 0x6c], esi
movzx eax, byte [r8]
cmp al, 0x16
je 0x180075606
cmp al, 0x17
je 0x180075606
cmp al, 0x18
jne 0x180075066
movzx esi, byte [r8 + 1]
mov eax, 0xd
mov ebx, eax
test edi, edi
jne 0x18007569c
test r13d, r13d
jns 0x18007569c
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], edx
xor r9d, r9d
mov edx, esi
lea ecx, [rax + 0xb]
mov r8d, dword [rsp + 0x7c]
lea rax, [r10 + 1]
mov qword [rsp + 0x20], rax
call fcn.180073820
mov r10, qword [rsp + 0x60]
test eax, eax
je 0x18007569c
xor eax, eax
mov dword [rbp - 0x78], 1
mov r14d, eax
jmp 0x1800756a1
cmp al, 0x11
jae 0x180075095
mov ebx, 0x1a
movzx esi, al
test edi, edi
jne 0x18007569c
test r13d, r13d
jns 0x18007569c
mov qword [rsp + 0x30], r14
xor r9d, r9d
mov dword [rsp + 0x28], edx
xor edx, edx
mov ecx, esi
jmp 0x180075035
cmp al, 0x48
je 0x180075531
cmp al, 0x49
je 0x180075531
cmp al, 0x4a
je 0x180075531
cmp al, 0x4b
je 0x180075531
cmp al, 0x58
je 0x1800750c9
cmp al, 0x59
je 0x1800750c9
cmp al, 0x57
je 0x1800750c9
cmp al, 0x5a
jne 0x1800769c4
mov rbx, qword [rbp - 0x68]
mov edi, r11d
mov r12d, ecx
sub edi, ebx
mov dword [rbp - 0x58], ecx
mov r14, rcx
mov dword [rbp - 0x38], edi
cmp al, 0x5a
jne 0x1800750ec
cmp byte [rbx + 3], 0x60
je 0x1800769d6
cmp edi, 0x7530
jg 0x1800769e8
cmp r13d, 0xffffffff
jne 0x180075124
mov rdx, rbx
movzx eax, byte [rdx + 1]
shl eax, 8
movsxd rcx, eax
movzx eax, byte [rdx + 2]
or rcx, rax
add rdx, rcx
cmp byte [rdx], 0x4f
jne 0x180075101
mov r12d, r11d
sub r12d, edx
mov dword [rbp - 0x58], r12d
test r15d, r15d
jne 0x1800751fb
test r13d, r13d
jne 0x18007513f
mov r11, rbx
mov qword [rsp + 0x70], rbx
jmp 0x18007599c
mov rax, qword [rbp - 0x20]
mov r9, qword [rbp + 0xc8]
mov r8d, dword [rsp + 0x7c]
mov qword [rsp + 0x20], rax
mov byte [r11], 0
mov rcx, rbx
cmp r13d, 1
jg 0x1800751a7
mov edx, 1
call fcn.1800736c0
movsxd r8, edi
mov rdi, qword [rbp - 0x68]
inc rbx
mov rdx, rdi
mov rcx, rbx
call fcn.180046390
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x68], rbx
inc rax
dec r13d
mov qword [rsp + 0x70], rax
lea eax, [rsi + 0x61]
mov byte [rdi], al
mov r10, qword [rsp + 0x60]
mov r9, qword [rbp - 0x50]
jmp 0x1800752f3
mov edx, 4
call fcn.1800736c0
lea rcx, [rbx + 4]
movsxd r8, edi
mov rdx, rbx
call fcn.180046390
mov rax, qword [rsp + 0x70]
lea r14, [rbx + 2]
add rax, 4
add rbx, 4
dec r13d
mov qword [rsp + 0x70], rax
lea eax, [rsi + 0x61]
mov qword [rbp - 0x68], rbx
mov byte [rbx - 4], al
mov word [rbx - 3], 0x58
mov byte [rbx - 1], 0
mov r10, qword [rsp + 0x60]
mov r9, qword [rbp - 0x50]
jmp 0x1800752f3
cmp r15d, 1
jle 0x1800752e7
mov rcx, qword [rbp + 0xd0]
test rcx, rcx
je 0x180075220
lea eax, [r15 - 1]
imul eax, dword [rbp - 0x40]
add dword [rcx], eax
jmp 0x1800752e7
cmp dword [rbp - 0x28], 0
je 0x180075232
mov eax, dword [rbp - 0x7c]
test eax, eax
cmovs eax, dword [rbp - 0x80]
mov dword [rbp - 0x7c], eax
cmp r15d, 1
jle 0x1800752e7
mov r12, qword [rsp + 0x70]
mov r8, qword [rbp + 0xc8]
lea eax, [r15 - 1]
mov r15, qword [rbp - 0x68]
mov esi, eax
movsxd rdi, edi
nop word [rax + rax]
mov rbx, qword [r8 + 0x40]
mov rdx, r15
mov rcx, r12
mov r8, rdi
call fcn.180046390
mov r9, qword [rbp - 0x20]
mov r8, qword [rbp + 0xc8]
cmp r9, rbx
jae 0x1800752c5
mov edx, dword [rbp - 0x38]
nop word [rax + rax]
movzx eax, byte [r9 + 1]
movzx ecx, byte [r9]
add r9, 2
shl ecx, 8
or ecx, eax
mov rax, qword [r8 + 0x40]
add ecx, edx
sar ecx, 8
mov byte [rax], cl
movzx ecx, byte [r9 - 1]
mov rax, qword [r8 + 0x40]
add cl, dl
mov byte [rax + 1], cl
add qword [r8 + 0x40], 2
cmp r9, rbx
jb 0x180075290
add r12, rdi
dec rsi
mov qword [rbp - 0x20], rbx
jne 0x180075260
mov r10, qword [rsp + 0x60]
mov r9, qword [rbp - 0x50]
mov r15d, dword [rbp - 0x44]
mov qword [rsp + 0x70], r12
mov r12d, dword [rbp - 0x58]
mov esi, dword [rsp + 0x6c]
test r13d, r13d
jle 0x1800752fa
sub r13d, r15d
mov dword [rbp - 0x48], r13d
test r13d, r13d
js 0x1800754a4
mov rcx, qword [rbp + 0xd0]
test rcx, rcx
je 0x180075360
test r13d, r13d
jle 0x180075360
mov eax, dword [rbp - 0x40]
add eax, 7
imul eax, r13d
sub eax, 6
add dword [rcx], eax
mov r11, qword [rsp + 0x70]
test r14, r14
je 0x180075574
nop
mov ecx, r11d
mov r8, r11
sub ecx, r14d
inc ecx
movsxd rax, ecx
sub r8, rax
movzx edx, byte [r8 + 1]
movzx eax, byte [r8 + 2]
shl edx, 8
or edx, eax
jne 0x180075473
xor eax, eax
mov r14d, eax
jmp 0x180075479
lea edi, [r13 - 1]
test edi, edi
js 0x180075320
movsxd r12, dword [rbp - 0x38]
mov r11, qword [rsp + 0x70]
mov r15, qword [rbp + 0xc8]
add sil, 0x61
mov dword [rsp + 0x6c], esi
mov r13d, esi
nop word [rax + rax]
mov rbx, qword [r15 + 0x40]
mov byte [r11], r13b
inc r11
mov qword [rsp + 0x70], r11
test edi, edi
je 0x1800753d3
mov byte [r11], 0x58
test r14, r14
jne 0x1800753b2
xor eax, eax
mov ecx, eax
jmp 0x1800753b9
lea ecx, [r11 + 1]
sub ecx, r14d
mov eax, ecx
lea r14, [r11 + 1]
mov byte [r11 + 2], cl
sar eax, 8
add r11, 3
mov byte [r11 - 2], al
mov qword [rsp + 0x70], r11
mov rdx, qword [rbp - 0x68]
mov r8, r12
mov rcx, r11
call fcn.180046390
mov r9, qword [rbp - 0x20]
cmp r9, rbx
jae 0x18007544c
test edi, edi
mov eax, 4
mov edx, 1
mov r8d, 1
cmovne edx, eax
cmovne r8d, eax
nop word [rax + rax]
movzx eax, byte [r9 + 1]
movzx ecx, byte [r9]
add r9, 2
shl ecx, 8
or ecx, eax
mov rax, qword [r15 + 0x40]
add ecx, r12d
add ecx, edx
sar ecx, 8
mov byte [rax], cl
movzx ecx, byte [r9 - 1]
mov rax, qword [r15 + 0x40]
add cl, r8b
add cl, r12b
mov byte [rax + 1], cl
add qword [r15 + 0x40], 2
cmp r9, rbx
jb 0x180075410
mov r11, qword [rsp + 0x70]
mov qword [rbp - 0x20], rbx
add r11, r12
dec edi
mov qword [rsp + 0x70], r11
jns 0x180075390
mov r10, qword [rsp + 0x60]
mov r9, qword [rbp - 0x50]
jmp 0x180075325
movsxd rax, edx
sub r14, rax
mov byte [r11], 0x4f
mov byte [r11 + 2], cl
mov eax, ecx
sar eax, 8
add r11, 3
mov byte [r11 - 2], al
mov byte [r8 + 1], al
mov byte [r8 + 2], cl
test r14, r14
jne 0x180075330
jmp 0x180075566
mov r11, qword [rsp + 0x70]
movsxd rax, r12d
add sil, 0x50
mov rbx, r11
sub rbx, rax
mov rdi, rbx
movzx eax, byte [rbx + 1]
mov byte [rbx], sil
shl eax, 8
movsxd rcx, eax
movzx eax, byte [rbx + 2]
or rcx, rax
sub rdi, rcx
cmp qword [rbp + 0xd0], 0
jne 0x18007556b
cmp byte [rdi], 0x57
je 0x18007556b
mov r11, rdi
nop word [rax + rax]
mov r8d, dword [rsp + 0x7c]
mov rdx, rbx
mov rcx, r11
call fcn.180073260
test eax, eax
jne 0x180075527
movzx eax, byte [r11 + 1]
shl eax, 8
movsxd rcx, eax
movzx eax, byte [r11 + 2]
or rcx, rax
add r11, rcx
cmp byte [r11], 0x4e
je 0x1800754f0
mov r11, qword [rsp + 0x70]
jmp 0x18007556b
add byte [rdi], 3
mov r11, qword [rsp + 0x70]
jmp 0x18007556b
test r13d, r13d
jne 0x180075543
mov r11, r8
mov qword [rsp + 0x70], r8
jmp 0x18007599c
cmp r13d, 1
je 0x180075551
mov dword [r14 + 0x6c], 1
test r15d, r15d
jne 0x1800755bc
cmp r13d, 0xffffffff
jne 0x1800755b0
add sil, 0x40
mov byte [r11], sil
inc r11
mov qword [rsp + 0x70], r11
mov r10, qword [rsp + 0x60]
mov r9, qword [rbp - 0x50]
cmp dword [rbp - 0x78], 0
je 0x18007599c
movzx eax, byte [r9]
cmp al, 0x21
je 0x180075592
cmp al, 0x3b
je 0x180075592
cmp al, 0x2e
jne 0x1800758cb
lea rdx, [0x180000000]
movzx eax, al
movzx eax, byte [rax + rdx + 0x87fc0]
add r9, rax
mov qword [rbp - 0x50], r9
jmp 0x1800758d2
cmp r13d, 1
jne 0x1800755ce
add sil, 0x44
jmp 0x180075560
cmp r15d, 1
jne 0x1800755ce
cmp r13d, 0xffffffff
jne 0x1800755ce
add sil, 0x42
jmp 0x180075560
add sil, 0x46
mov eax, r15d
sar eax, 8
mov byte [r11], sil
mov byte [r11 + 2], r15b
mov byte [r11 + 1], al
cmp r13d, 0xffffffff
cmove r13d, ecx
mov eax, r13d
mov byte [r11 + 4], r13b
mov dword [rbp - 0x48], r13d
sar eax, 8
add r11, 5
mov byte [r11 - 2], al
jmp 0x180075566
mov r12d, dword [rsp + 0x7c]
test r12d, r12d
je 0x18007565d
test byte [r11 - 1], 0x80
lea rdx, [r11 - 1]
je 0x18007565d
movzx eax, byte [rdx]
and al, 0xc0
cmp al, 0x80
jne 0x18007563d
nop word [rax + rax]
movzx eax, byte [rdx - 1]
dec rdx
and al, 0xc0
cmp al, 0x80
je 0x180075630
mov esi, r11d
lea rcx, [rbp + 0x10]
sub esi, edx
movsxd r8, esi
call fcn.180046390
mov r10, qword [rsp + 0x60]
mov r8, qword [rbp - 0x68]
bts esi, 7
jmp 0x180075674
movzx esi, byte [r11 - 1]
cmp r15d, 1
jle 0x180075674
mov eax, dword [r14 + 0x68]
or eax, esi
or eax, dword [rbp - 0x3c]
mov dword [rbp - 0x7c], eax
test edi, edi
jne 0x18007569c
test r13d, r13d
jns 0x18007569c
mov edx, dword [rsp + 0x78]
movzx ecx, byte [r8]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], edx
lea r9, [rbp + 0x10]
mov r8d, r12d
mov edx, esi
jmp 0x18007503a
mov r14d, dword [rsp + 0x6c]
mov rcx, qword [rbp - 0x68]
movzx eax, byte [rcx]
cmp al, 0xe
je 0x1800756ba
cmp al, 0xd
je 0x1800756ba
or eax, 0xffffffff
mov r12d, eax
mov edi, eax
jmp 0x1800756c3
movzx edi, byte [rcx + 1]
movzx r12d, byte [rcx + 2]
mov rax, qword [rsp + 0x70]
mov r11, rcx
mov qword [rsp + 0x70], rcx
test r13d, r13d
je 0x18007599c
cmp r13d, 1
je 0x1800756f1
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x6c], 1
mov rcx, qword [rbp - 0x68]
add r14d, ebx
test r15d, r15d
jne 0x18007573e
lea r11, [rcx + 1]
cmp r13d, 0xffffffff
jne 0x18007570f
add r14b, 0x19
mov byte [rcx], r14b
jmp 0x18007588e
cmp r13d, 1
jne 0x180075721
add r14b, 0x1d
mov byte [rcx], r14b
jmp 0x18007588e
add r14b, 0x1f
mov eax, r13d
sar eax, 8
mov byte [rcx], r14b
mov byte [r11 + 1], r13b
mov byte [r11], al
add r11, 2
jmp 0x18007588e
cmp r15d, 1
jne 0x180075792
cmp r13d, 0xffffffff
jne 0x18007575a
add r14b, 0x1b
lea r11, [rcx + 1]
mov byte [rcx], r14b
jmp 0x18007588e
mov r11, rax
mov qword [rsp + 0x70], rax
cmp r13d, 1
je 0x18007599c
lea r11, [rax + 1]
add r14b, 0x1f
mov byte [rax], r14b
lea eax, [r13 - 1]
dec r13b
sar eax, 8
mov byte [r11 + 1], r13b
add r11, 2
mov byte [r11 - 2], al
jmp 0x18007588e
lea r11, [rcx + 1]
add bl, 0x21
mov eax, r15d
sar eax, 8
mov byte [rcx], bl
add r11, 2
mov byte [r11 - 2], al
mov byte [r11 - 1], r15b
mov qword [rsp + 0x70], r11
test r13d, r13d
jns 0x180075814
cmp dword [rsp + 0x7c], 0
je 0x1800757f2
cmp esi, 0x80
jl 0x1800757f2
mov ebx, esi
lea rdx, [rbp + 0x10]
mov rcx, r11
and ebx, 7
mov r8d, ebx
call fcn.180046390
mov r11, qword [rsp + 0x70]
add r14b, 0x19
add r11, rbx
inc r11
mov byte [r11 - 1], r14b
jmp 0x18007588e
mov byte [r11], sil
inc r11
test edi, edi
js 0x180075807
mov byte [r11], dil
mov byte [r11 + 1], r12b
add r11, 2
add r14b, 0x19
inc r11
mov byte [r11 - 1], r14b
jmp 0x18007588e
cmp r13d, r15d
je 0x180075893
cmp dword [rsp + 0x7c], 0
je 0x180075846
cmp esi, 0x80
jl 0x180075846
mov ebx, esi
lea rdx, [rbp + 0x10]
mov rcx, r11
and ebx, 7
mov r8d, ebx
call fcn.180046390
mov r11, qword [rsp + 0x70]
add r11, rbx
jmp 0x18007584c
mov byte [r11], sil
inc r11
test edi, edi
js 0x18007585b
mov byte [r11], dil
mov byte [r11 + 1], r12b
add r11, 2
sub r13d, r15d
mov dword [rbp - 0x48], r13d
cmp r13d, 1
jne 0x180075875
add r14b, 0x1d
inc r11
mov byte [r11 - 1], r14b
jmp 0x18007588e
add r14b, 0x1f
mov eax, r13d
mov byte [r11], r14b
sar eax, 8
mov byte [r11 + 2], r13b
mov byte [r11 + 1], al
add r11, 3
mov qword [rsp + 0x70], r11
cmp dword [rsp + 0x7c], 0
je 0x180075560
cmp esi, 0x80
jl 0x180075560
mov ebx, esi
lea rdx, [rbp + 0x10]
mov rcx, r11
and ebx, 7
mov r8d, ebx
call fcn.180046390
mov r11, qword [rsp + 0x70]
add r11, rbx
jmp 0x180075566
lea rdx, [0x180000000]
mov ebx, r11d
sub ebx, r9d
test ebx, ebx
jle 0x18007599c
movzx eax, byte [r9]
add eax, 0xffffffe7
cmp eax, 0x20
ja case.0x180075900.37
cdqe
movzx eax, byte [rdx + rax + 0x76cdc]
mov ecx, dword [rdx + rax*4 + 0x76ca8]
add rcx, rdx
jmp rcx
mov byte [r9], 0x22
jmp 0x180075997
mov byte [r9], 0x23
jmp 0x180075997
mov byte [r9], 0x24
jmp 0x180075997
mov byte [r9], 0x25
jmp 0x180075997
mov byte [r9], 0x3c
jmp 0x180075997
mov byte [r9], 0x3d
jmp 0x180075997
mov byte [r9], 0x3e
jmp 0x180075997
mov byte [r9], 0x3f
jmp 0x180075997
mov byte [r9], 0x2f
jmp 0x180075997
mov byte [r9], 0x30
jmp 0x180075997
mov byte [r9], 0x31
jmp 0x180075997
mov byte [r9], 0x32
jmp 0x180075997
lea rcx, [r9 + 3]
movsxd r8, ebx
mov rdx, r9
call fcn.180046390
mov rax, qword [rbp - 0x50]
mov r11, qword [rsp + 0x70]
mov byte [rax], 0x57
mov byte [r11 + 3], 0x4f
add ebx, 3
mov byte [r11 + 5], bl
mov ecx, ebx
sar ecx, 8
add r11, 6
mov byte [r11 - 2], cl
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x70], r11
mov byte [rax + 1], cl
mov rax, qword [rbp - 0x50]
mov byte [rax + 2], bl
mov r10, qword [rsp + 0x60]
mov rcx, qword [rbp + 0xc8]
mov esi, dword [rbp - 0x60]
mov r12d, dword [rbp - 0x5c]
xor eax, eax
mov r13d, eax
mov qword [rbp - 0x68], rax
mov eax, dword [rbp + 0x30]
or dword [rcx + 0x68], eax
jmp 0x18007651d
mov rax, qword [r14 + 0x40]
inc r10
mov r13d, 0x59
mov qword [rsp + 0x60], r10
cmp byte [r10], 0x3f
mov qword [rbp - 0x20], rax
mov r15d, edx
mov dword [rsp + 0x6c], r13d
jne 0x180076399
inc r10
lea rbx, [0x180000000]
mov qword [rsp + 0x60], r10
movzx r8d, byte [r10]
lea eax, [r8 - 0x21]
cmp eax, 0x31
ja case.0x180075a1a.46
cdqe
movzx eax, byte [rbx + rax + 0x76d38]
mov ecx, dword [rbx + rax*4 + 0x76d00]
add rcx, rbx
jmp rcx
inc r10
mov qword [rsp + 0x60], r10
movzx eax, byte [r10]
test al, al
je 0x180075a44
nop dword [rax]
cmp al, 0x29
je 0x180075a56
inc r10
mov qword [rsp + 0x60], r10
movzx eax, byte [r10]
test al, al
jne 0x180075a30
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x12
jmp 0x180076b9b
cmp byte [r10], 0
je 0x180075a44
mov r13, qword [rbp - 0x68]
jmp 0x18007651d
mov rdi, qword [rbp + 0xd0]
mov r13d, 0x58
inc r10
mov dword [rsp + 0x6c], r13d
mov qword [rsp + 0x60], r10
jmp 0x180075cbb
cmp byte [r10 + 1], 0x3f
mov dword [rsp + 0x6c], 0x5a
jne 0x180075ab0
movzx eax, byte [r10 + 2]
cmp al, 0x3d
je 0x1800763ba
cmp al, 0x21
je 0x1800763ba
cmp al, 0x3c
je 0x1800763ba
mov byte [r11 + 3], 0x5e
mov r10, qword [rsp + 0x60]
mov r9d, 3
movzx eax, byte [r10 + 1]
lea rdx, [r10 + 1]
mov dword [rbp - 0x58], r9d
cmp al, 0x52
jne 0x180075af8
cmp byte [r10 + 2], 0x26
lea rcx, [r10 + 2]
jne 0x180075af8
or edi, 0xffffffff
mov qword [rsp + 0x60], rcx
mov byte [r11 + 3], 0x5f
mov r10, qword [rsp + 0x60]
xor edx, edx
mov r14d, edi
mov dword [rbp - 0x78], edi
jmp 0x180075b38
cmp al, 0x3c
jne 0x180075b13
mov eax, 0x3e
mov r10, rdx
mov qword [rsp + 0x60], rdx
mov r14d, eax
mov dword [rbp - 0x78], eax
xor edx, edx
jmp 0x180075b35
cmp al, 0x27
jne 0x180075b2d
mov r14d, 0x27
mov r10, rdx
mov qword [rsp + 0x60], rdx
mov dword [rbp - 0x78], r14d
xor edx, edx
jmp 0x180075b35
xor edx, edx
mov r14d, edx
mov dword [rbp - 0x78], edx
or edi, 0xffffffff
mov rbx, qword [rbp + 0xc8]
movzx eax, byte [r10 + 1]
lea rcx, [r10 + 1]
mov r8, qword [rbx + 0x18]
test byte [rax + r8], 0x10
je 0x180076a5b
mov qword [rsp + 0x60], rcx
mov esi, edx
movzx edx, byte [rcx]
test byte [r8 + rdx], 0x10
mov r10, rcx
mov r13, rcx
mov eax, edx
je 0x180075ba8
lea rbx, [0x180000000]
test esi, esi
js 0x180075b93
test byte [rax + rbx + 0x87eb0], 4
je 0x180075b91
lea ecx, [rsi + rsi*4]
movzx eax, dl
lea esi, [rax + rcx*2 - 0x30]
jmp 0x180075b93
mov esi, edi
inc r10
mov qword [rsp + 0x60], r10
movzx edx, byte [r10]
mov eax, edx
test byte [rdx + r8], 0x10
jne 0x180075b77
mov r12d, r10d
sub r12d, r13d
test r14d, r14d
jle 0x180075bc8
movzx eax, byte [r10]
inc r10
mov qword [rsp + 0x60], r10
cmp eax, r14d
jne 0x180076a46
movzx eax, byte [r10]
inc r10
mov qword [rsp + 0x60], r10
cmp al, 0x29
jne 0x180076a46
mov rdi, qword [rbp + 0xd0]
test rdi, rdi
jne 0x180075caf
mov rcx, qword [rbp + 0xc8]
xor eax, eax
mov rbx, qword [rcx + 0x48]
mov edi, eax
cmp dword [rcx + 0x50], eax
jle 0x180075c4b
mov r14, rcx
nop word [rax + rax]
lea rdx, [rbx + 2]
mov r8d, r12d
mov rcx, r13
call fcn.180046820
test eax, eax
je 0x180075c32
movsxd rax, dword [r14 + 0x54]
inc edi
add rbx, rax
cmp edi, dword [r14 + 0x50]
jl 0x180075c10
mov r10, qword [rsp + 0x60]
mov r14d, dword [rbp - 0x78]
mov r9d, dword [rbp - 0x58]
mov r11, qword [rsp + 0x70]
mov rcx, qword [rbp + 0xc8]
cmp edi, dword [rcx + 0x50]
jge 0x180075c6b
movzx eax, byte [rbx + 1]
movzx ecx, byte [rbx]
shl ecx, 8
or ecx, eax
mov eax, ecx
mov byte [r11 + 5], cl
sar eax, 8
mov byte [r11 + 4], al
jmp 0x180075ca8
mov eax, dword [rsp + 0x78]
mov edx, dword [rcx + 0x58]
mov r9d, r12d
shr eax, 3
mov r8, r13
mov rcx, r10
and eax, 1
mov dword [rsp + 0x20], eax
call fcn.180072cf0
test eax, eax
jle 0x180075dab
mov r11, qword [rsp + 0x70]
mov ecx, eax
sar ecx, 8
mov byte [r11 + 5], al
mov byte [r11 + 4], cl
mov r9d, dword [rbp - 0x58]
mov rdi, qword [rbp + 0xd0]
mov r14, qword [rbp + 0xc8]
mov r13d, dword [rsp + 0x6c]
mov edx, dword [rsp + 0x78]
xor r8d, r8d
mov byte [r11], r13b
mov ebx, dword [r14 + 0x68]
cmp r13d, 0x57
mov eax, r8d
mov qword [rbp - 0x50], r11
cmovge rax, r11
mov dword [rbp - 0x40], r8d
mov qword [rbp - 0x68], rax
cmp r13d, 0x54
je 0x180075cef
mov ecx, r8d
cmp r13d, 0x55
jne 0x180075cf4
mov ecx, 1
test rdi, rdi
mov rdi, qword [rbp + 0xa8]
lea rax, [rbp - 0x40]
cmove rax, r8
lea r8, [rbp - 0x50]
and edx, 7
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0xc0]
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x34]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r9d
mov dword [rsp + 0x28], ecx
lea r9, [rsp + 0x60]
mov ecx, r15d
mov qword [rsp + 0x20], rdi
call fcn.180076de0
test eax, eax
je 0x180076a3c
mov r11, qword [rsp + 0x70]
xor r9d, r9d
cmp r13d, 0x5a
jne 0x1800763ec
mov rdx, r11
mov r8d, r9d
movzx eax, byte [rdx + 1]
inc r8d
shl eax, 8
movsxd rcx, eax
movzx eax, byte [rdx + 2]
or rcx, rax
add rdx, rcx
cmp byte [rdx], 0x4f
jne 0x180075d70
cmp byte [r11 + 3], 0x60
jne 0x1800763c6
cmp r8d, 1
jg 0x180076ae2
mov edx, 0x60
jmp 0x1800763f0
test r14d, r14d
jne 0x180076a2e
cmp byte [r13], 0x52
jne 0x180075e22
xor eax, eax
mov edx, 1
mov ecx, eax
cmp r12d, edx
jle 0x180075e01
nop dword [rax]
movsxd rax, edx
movzx r8d, byte [rax + r13]
lea rax, [0x180000000]
test byte [r8 + rax + 0x87eb0], 4
je 0x180076a2e
lea ecx, [rcx + rcx*4]
inc edx
lea ecx, [r8 + rcx*2 - 0x30]
cmp edx, r12d
jl 0x180075dd0
test ecx, ecx
jne 0x180075e06
mov ecx, 0xffff
mov r11, qword [rsp + 0x70]
mov eax, ecx
sar eax, 8
mov byte [r11 + 3], 0x5f
mov byte [r11 + 5], cl
mov byte [r11 + 4], al
jmp 0x180075ca4
cmp r12d, 6
jne 0x180075e52
lea rdx, str.DEFINE
mov r8d, r12d
mov rcx, r13
call fcn.180046820
test eax, eax
jne 0x180075e52
mov r11, qword [rsp + 0x70]
lea r9d, [r12 - 5]
mov byte [r11 + 3], 0x60
jmp 0x180075ca8
test esi, esi
jle 0x180076a0c
mov r11, qword [rsp + 0x70]
mov eax, esi
sar eax, 8
mov byte [r11 + 5], sil
mov byte [r11 + 4], al
jmp 0x180075ca4
mov rdi, qword [rbp + 0xd0]
mov r13d, 0x52
inc r10
mov dword [rsp + 0x6c], r13d
mov qword [rsp + 0x60], r10
jmp 0x180075cbb
mov rdi, qword [rbp + 0xd0]
mov r13d, 0x53
inc r10
mov dword [rsp + 0x6c], r13d
mov qword [rsp + 0x60], r10
jmp 0x180075cbb
movzx ecx, byte [r10 + 1]
movzx eax, cl
cmp cl, 0x21
je 0x180075f9c
cmp al, 0x3d
je 0x180075f7c
mov rax, qword [r14 + 0x18]
movzx ecx, cl
test byte [rcx + rax], 0x10
je 0x180076a70
cmp r8b, 0x3c
mov eax, 0x3e
mov edx, 0x27
cmove edx, eax
mov rax, qword [r14 + 0x18]
inc r10
mov qword [rsp + 0x60], r10
movzx ecx, byte [r10]
mov r12, r10
test byte [rcx + rax], 0x10
je 0x180075f22
mov rcx, rax
nop word [rax + rax]
inc r10
mov qword [rsp + 0x60], r10
movzx eax, byte [r10]
test byte [rax + rcx], 0x10
jne 0x180075f10
mov ecx, r10d
sub ecx, r12d
cmp qword [rbp + 0xd0], 0
je 0x1800760e9
movzx eax, byte [r10]
cmp eax, edx
jne 0x180076abb
cmp dword [r14 + 0x50], 0x2710
jge 0x180076aa9
lea eax, [rcx + 3]
cmp eax, dword [r14 + 0x54]
jle 0x18007619b
mov dword [r14 + 0x54], eax
cmp ecx, 0x20
jle 0x18007619b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x30
jmp 0x180076b9b
mov r13d, 0x54
mov rdi, qword [rbp + 0xd0]
add r10, 2
mov dword [rsp + 0x6c], r13d
mov qword [rsp + 0x60], r10
jmp 0x180075cbb
mov r13d, 0x55
jmp 0x180075f82
mov rdi, qword [rbp + 0xd0]
mov r13d, 0x57
inc r10
mov qword [rsp + 0x60], r10
mov dword [rsp + 0x6c], r13d
jmp 0x180075cbb
mov byte [r11], 0x4d
mov r10, qword [rsp + 0x60]
xor r9d, r9d
inc r10
mov r8, r11
mov qword [rbp - 0x70], r11
mov qword [rsp + 0x60], r10
movzx edx, byte [r10]
mov dword [rbp - 0x2c], 1
test byte [rdx + rbx + 0x87eb0], 4
mov eax, r9d
je 0x180076020
nop word [rax + rax]
inc r10
lea ecx, [rax + rax*4]
movzx eax, dl
mov qword [rsp + 0x60], r10
movzx edx, byte [r10]
lea eax, [rax + rcx*2 - 0x30]
test byte [rdx + rbx + 0x87eb0], 4
jne 0x180076000
cmp byte [r10], 0x29
jne 0x180076a97
cmp eax, 0xff
jg 0x180076a85
mov ecx, dword [rsp + 0x68]
mov rdi, qword [rbp + 0xd0]
mov r15, qword [rbp + 0xa8]
mov edx, dword [rsp + 0x78]
mov byte [r11 + 1], al
mov eax, dword [rsp + 0x60]
sub eax, dword [r14 + 0x30]
add r11, 6
mov r13, r9
inc rax
mov qword [rbp - 0x68], r9
mov qword [rsp + 0x70], r11
sar rax, 8
mov byte [r11 - 4], al
movzx eax, byte [rsp + 0x60]
sub al, byte [r14 + 0x30]
mov word [r11 - 2], r9w
mov r9, qword [rbp + 0x28]
inc al
mov byte [r11 - 3], al
mov r10, qword [rsp + 0x60]
inc r10
jmp 0x1800740bc
inc r10
mov qword [rsp + 0x60], r10
movzx r8d, byte [r10]
cmp r8b, 0x3d
je 0x1800760cb
cmp r8b, 0x3e
je 0x1800760cb
cmp r8b, 0x3c
je case.0x180075a1a.36
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x29
jmp 0x180076b9b
mov r15, qword [rbp + 0xa8]
xor r9d, r9d
cmp r8b, 0x3e
mov r13d, r9d
sete r13b
lea edx, [r9 + 0x29]
jmp 0x1800765ce
mov rbx, qword [r14 + 0x48]
xor eax, eax
movsxd rsi, ecx
mov edi, eax
cmp dword [r14 + 0x50], eax
jle 0x180076168
nop word [rax + rax]
lea rdx, [rbx + 2]
mov r8, rsi
mov rcx, r12
call fcn.180046400
test eax, eax
jne 0x18007613a
cmp byte [rsi + rbx + 2], al
jne 0x18007614d
test dword [rsp + 0x78], 0x80000
jne 0x18007613c
mov rcx, qword [rbp + 0xa8]
mov r10, qword [rsp + 0x60]
mov dword [rcx], 0x2b
jmp 0x180076b9b
js 0x18007614d
movsxd rax, dword [r14 + 0x54]
inc edi
add rbx, rax
cmp edi, dword [r14 + 0x50]
jl 0x180076100
jmp 0x180076168
movsxd rcx, dword [r14 + 0x54]
mov eax, dword [r14 + 0x50]
mov rdx, rbx
sub eax, edi
imul eax, ecx
add rcx, rbx
movsxd r8, eax
call fcn.180046390
mov eax, dword [r14 + 0x58]
lea rcx, [rbx + 2]
mov r8, rsi
inc eax
mov rdx, r12
sar eax, 8
mov byte [rbx], al
movzx eax, byte [r14 + 0x58]
inc al
mov byte [rbx + 1], al
call fcn.180046390
mov r11, qword [rsp + 0x70]
mov byte [rsi + rbx + 2], 0
mov r10, qword [rsp + 0x60]
inc r10
inc dword [r14 + 0x50]
mov qword [rsp + 0x60], r10
inc dword [r14 + 0x58]
mov eax, dword [r14 + 0x58]
mov rdi, qword [rbp + 0xd0]
sar eax, 8
mov r9d, 2
mov byte [r11 + 3], al
movzx eax, byte [r14 + 0x58]
mov byte [r11 + 4], al
jmp 0x180075cbb
mov r15, qword [rbp + 0xa8]
mov edx, 0x29
xor r9d, r9d
lea r13d, [rdx - 0x28]
jmp 0x1800765ce
inc r10
mov qword [rsp + 0x60], r10
xor eax, eax
mov edi, eax
movzx eax, byte [r10]
test byte [rax + rbx + 0x87eb0], 4
je 0x180076223
inc r10
movzx eax, al
lea ecx, [rdi + rdi*4]
lea edi, [rax + rcx*2 - 0x30]
mov qword [rsp + 0x60], r10
movzx eax, byte [r10]
test byte [rax + rbx + 0x87eb0], 4
jne 0x180076203
cmp byte [r10], 0x29
je 0x1800766ba
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x1d
jmp 0x180076b9b
xor ecx, ecx
lea rdx, [rbp - 0x38]
mov eax, ecx
mov dword [rbp - 0x58], ecx
mov r15d, ecx
mov dword [rbp - 0x38], ecx
cmp r8b, 0x29
je 0x1800762d2
cmp r8b, 0x3a
je 0x1800762c9
inc r10
movzx eax, r8b
sub eax, 0x2d
mov qword [rsp + 0x60], r10
cmp eax, 0x4b
ja case.0x180076288.53
cdqe
movzx eax, byte [rbx + rax + 0x76d90]
mov ecx, dword [rbx + rax*4 + 0x76d6c]
add rcx, rbx
jmp rcx
lea rdx, [rbp - 0x58]
jmp 0x1800762bf
or dword [rdx], 0x80000
or dword [r14 + 0x64], 0x8000000
jmp 0x1800762bf
or dword [rdx], 1
jmp 0x1800762bf
or dword [rdx], 2
jmp 0x1800762bf
or dword [rdx], 4
jmp 0x1800762bf
or dword [rdx], 8
jmp 0x1800762bf
or dword [rdx], 0x200
jmp 0x1800762bf
or dword [rdx], 0x40
movzx r8d, byte [r10]
cmp r8b, 0x29
jne 0x180076256
mov r15d, dword [rbp - 0x38]
mov eax, dword [rbp - 0x58]
xor ecx, ecx
mov edx, dword [rsp + 0x78]
mov rdi, qword [rbp + 0xd0]
not eax
or r15d, edx
and r15d, eax
cmp byte [r10], 0x29
jne 0x180076381
mov rax, qword [r14 + 0x28]
add rax, 3
cmp r11, rax
jne 0x18007631f
test rdi, rdi
je 0x180076306
cmp dword [rdi], 6
jne 0x18007631f
mov r13, rcx
mov qword [rbp - 0x68], rcx
mov ecx, dword [rsp + 0x68]
mov dword [r14 + 0x64], r15d
mov dword [rsp + 0x78], r15d
jmp 0x180076528
mov eax, r15d
xor eax, edx
test al, 7
je 0x180076344
mov byte [r11], 0x13
movzx eax, r15b
and al, 7
add r11, 2
mov byte [r11 - 1], al
mov r10, qword [rsp + 0x60]
mov qword [rsp + 0x70], r11
mov rax, qword [rbp + 0x90]
mov r13, rcx
mov qword [rbp - 0x68], rcx
mov ecx, dword [rsp + 0x68]
mov dword [rax], r15d
mov eax, r15d
shr eax, 9
mov dword [rsp + 0x78], r15d
and eax, 1
mov dword [rbp + 0x18], eax
xor eax, 1
mov dword [rbp + 0x1c], eax
mov eax, r15d
and eax, 1
shl eax, 8
mov dword [rbp - 0x3c], eax
jmp 0x180076528
mov r13d, 0x58
inc r10
mov dword [rsp + 0x6c], r13d
mov qword [rsp + 0x60], r10
jmp 0x180075cbf
bt edx, 0xc
jae 0x1800761a7
mov rdi, qword [rbp + 0xd0]
mov r13d, 0x58
mov dword [rsp + 0x6c], r13d
jmp 0x180075cbb
mov rdi, qword [rbp + 0xd0]
jmp 0x180075cb6
cmp r8d, 2
jg 0x180076af2
cmp r8d, 1
jne 0x1800763ec
mov edx, dword [rsp + 0x6c]
or r15d, 0xffffffff
mov eax, r15d
mov ecx, r15d
mov dword [rbp - 0x34], eax
mov dword [rbp - 0x30], ecx
jmp 0x1800763fa
mov edx, dword [rsp + 0x6c]
mov ecx, dword [rbp - 0x30]
mov eax, dword [rbp - 0x34]
or r15d, 0xffffffff
mov r10, qword [rsp + 0x60]
cmp byte [r10], 0x29
jne 0x180076b02
mov rdi, qword [rbp + 0xd0]
test rdi, rdi
je 0x180076441
mov eax, dword [rbp - 0x40]
add eax, 0xfffffffa
add dword [rdi], eax
mov word [r11 + 1], 0x300
mov word [r11 + 3], 0x4f
mov byte [r11 + 5], 3
mov r10, qword [rsp + 0x60]
mov eax, dword [rbp - 0x34]
mov ecx, dword [rbp - 0x30]
add r11, 6
jmp 0x180076445
mov r11, qword [rbp - 0x50]
mov qword [rsp + 0x70], r11
cmp edx, 0x60
je 0x1800764bc
mov r8d, dword [rbp - 0x80]
mov r12d, dword [rbp - 0x7c]
mov dword [rbp - 0x28], r9d
mov dword [rbp - 0x5c], r12d
mov esi, r8d
mov dword [rbp - 0x60], r8d
cmp edx, 0x57
jl 0x1800764b5
cmp r8d, 0xfffffffe
jne 0x180076495
test ecx, ecx
js 0x180076488
mov dword [rbp - 0x80], ecx
mov dword [rbp - 0x28], 1
mov esi, r15d
mov dword [rbp - 0x60], r15d
jmp 0x1800764a4
mov dword [rbp - 0x80], r15d
mov esi, r15d
mov dword [rbp - 0x60], r15d
jmp 0x1800764a4
test ecx, ecx
js 0x1800764a4
test eax, eax
jns 0x1800764a8
mov eax, ecx
or eax, ebx
mov dword [rbp - 0x34], eax
test eax, eax
js 0x1800764c0
mov r13, qword [rbp - 0x68]
mov ecx, dword [rsp + 0x68]
mov dword [rbp - 0x7c], eax
jmp 0x180076528
cmp edx, 0x52
jne 0x1800764c0
jmp 0x1800764a4
mov r12d, dword [rbp - 0x5c]
mov esi, dword [rbp - 0x60]
mov r13, qword [rbp - 0x68]
mov ecx, dword [rsp + 0x68]
jmp 0x180076528
mov r8d, dword [r14 + 0x58]
mov dword [rsp + 0x20], r9d
mov r9d, edx
lea rcx, [rsp + 0x60]
mov rdx, r15
call fcn.180072750
cmp dword [r15], 0
jne 0x180076a3c
test eax, eax
jns 0x1800768de
mov ecx, eax
neg ecx
cmp ecx, 0x14
jne 0x180076553
mov r10, qword [rsp + 0x60]
cmp byte [r10 + 1], 0x5c
jne 0x180076543
cmp byte [r10 + 2], 0x45
jne 0x180076543
add r10, 2
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x68]
mov rdi, qword [rbp + 0xd0]
mov r8, qword [rbp - 0x70]
mov r15, qword [rbp + 0xa8]
mov edx, dword [rsp + 0x78]
mov r9, qword [rbp + 0x28]
inc r10
jmp 0x1800740bc
mov r11, qword [rsp + 0x70]
mov ecx, 1
mov dword [rsp + 0x68], ecx
jmp 0x180076521
cmp ecx, 0x13
je 0x1800768d4
mov r8d, dword [rbp - 0x80]
cmp r8d, 0xfffffffe
jne 0x18007657b
cmp ecx, 4
jle 0x18007657b
cmp ecx, 0x11
mov edx, 0xffffffff
cmovl r8d, edx
mov dword [rbp - 0x80], r8d
mov r12d, dword [rbp - 0x7c]
mov r10, qword [rsp + 0x60]
mov esi, r8d
mov dword [rbp - 0x60], r8d
mov dword [rbp - 0x5c], r12d
cmp ecx, 0x15
jne 0x180076808
movzx edx, byte [r10 + 1]
lea r8, [r10 + 1]
cmp dl, 0x3c
je 0x1800765af
cmp dl, 0x27
jne 0x180076804
xor r9d, r9d
mov qword [rsp + 0x60], r8
cmp byte [r8], 0x3c
mov edx, 0x27
mov eax, 0x3e
mov r13d, r9d
cmove edx, eax
mov r10, r8
mov rax, qword [r14 + 0x18]
inc r10
mov qword [rsp + 0x60], r10
movzx ecx, byte [r10]
mov r12, r10
test byte [rcx + rax], 0x10
je 0x180076602
mov rcx, rax
nop word [rax + rax]
inc r10
mov qword [rsp + 0x60], r10
movzx eax, byte [r10]
test byte [rax + rcx], 0x10
jne 0x1800765f0
mov esi, r10d
sub esi, r12d
cmp qword [rbp + 0xd0], 0
je 0x18007662c
movzx eax, byte [r10]
cmp eax, edx
jne 0x180076b19
cmp esi, 0x20
jg 0x180076b0d
mov edi, r9d
jmp 0x1800766a5
cmp dword [r14 + 0x50], 0
mov rbx, qword [r14 + 0x48]
mov edi, r9d
jle 0x180076667
nop word [rax + rax]
lea rdx, [rbx + 2]
mov r8d, esi
mov rcx, r12
call fcn.180046820
test eax, eax
je 0x180076662
movsxd rax, dword [r14 + 0x54]
inc edi
add rbx, rax
cmp edi, dword [r14 + 0x50]
jl 0x180076640
mov r10, qword [rsp + 0x60]
cmp edi, dword [r14 + 0x50]
jge 0x18007667b
movzx edi, byte [rbx]
movzx eax, byte [rbx + 1]
shl edi, 8
or edi, eax
jmp 0x1800766a5
mov eax, dword [rsp + 0x78]
mov edx, dword [r14 + 0x58]
mov r9d, esi
shr eax, 3
mov r8, r12
mov rcx, r10
and eax, 1
mov dword [rsp + 0x20], eax
call fcn.180072cf0
mov edi, eax
test eax, eax
jle 0x180076b36
mov esi, dword [rbp - 0x60]
mov r12d, dword [rbp - 0x5c]
test r13d, r13d
je 0x180076816
mov r11, qword [rsp + 0x70]
cmp qword [rbp + 0xd0], 0
mov rbx, qword [r14 + 0x28]
mov r13, r11
mov qword [rbp - 0x68], r11
jne 0x18007678f
mov edx, dword [rsp + 0x7c]
mov byte [r11], 0
test edi, edi
je 0x1800766f3
mov rcx, qword [r14 + 0x28]
mov r8d, edi
call fcn.1800731b0
mov r11, qword [rsp + 0x70]
mov rbx, rax
test rbx, rbx
jne 0x18007675e
mov eax, dword [rsp + 0x78]
mov edx, dword [r14 + 0x58]
mov rcx, qword [rsp + 0x60]
shr eax, 3
mov r9d, edi
xor r8d, r8d
and eax, 1
mov dword [rsp + 0x20], eax
call fcn.180072cf0
test eax, eax
js 0x180076a2e
mov rax, qword [r14 + 0x28]
mov r11, qword [rsp + 0x70]
movsxd rbx, edi
add rbx, rax
mov rcx, r11
sub rcx, rax
mov rax, qword [r14 + 0x40]
add rcx, 4
sar rcx, 8
mov byte [rax], cl
mov rax, qword [r14 + 0x40]
movzx ecx, r11b
sub cl, byte [r14 + 0x28]
add cl, 4
mov byte [rax + 1], cl
add qword [r14 + 0x40], 2
jmp 0x18007678f
movzx ecx, byte [rbx + 1]
movzx eax, byte [rbx + 2]
shl ecx, 8
or ecx, eax
jne 0x18007678f
mov r8, qword [rbp + 0xc0]
mov r9d, edx
mov rcx, rbx
mov rdx, r11
call fcn.180073650
test eax, eax
jne 0x180076b22
mov r11, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x68]
mov rdi, qword [rbp + 0xd0]
mov r8, qword [rbp - 0x70]
mov dword [r11], 0x4c060057
mov eax, ebx
add r11, 9
sub eax, dword [r14 + 0x28]
mov qword [rsp + 0x70], r11
sar rax, 8
mov byte [r11 - 5], al
sub bl, byte [r14 + 0x28]
cmp dword [rbp - 0x80], 0xfffffffe
mov byte [r11 - 4], bl
mov word [r11 - 3], 0x4f
mov byte [r11 - 1], 6
mov r10, qword [rsp + 0x60]
mov dword [rbp - 0x40], 9
jne 0x18007652c
mov r15, qword [rbp + 0xa8]
mov edx, dword [rsp + 0x78]
mov r9, qword [rbp + 0x28]
mov dword [rbp - 0x80], 0xffffffff
inc r10
jmp 0x1800740bc
mov r8d, dword [rbp - 0x80]
cmp ecx, 0x16
jl 0x18007687b
mov edi, 0xffffffea
sub edi, eax
jmp 0x18007681a
mov r8d, dword [rbp - 0x80]
mov r11, qword [rsp + 0x70]
cmp r8d, 0xfffffffe
mov eax, 0xffffffff
cmove r8d, eax
mov byte [r11], 0x4b
mov eax, edi
sar eax, 8
mov r13, r11
mov qword [rbp - 0x68], r11
mov byte [r11 + 1], al
mov byte [r11 + 2], dil
add r11, 3
mov dword [rbp - 0x80], r8d
mov eax, 1
mov qword [rsp + 0x70], r11
cmp edi, 0x20
jge 0x18007685f
mov ecx, edi
shl eax, cl
or dword [r14 + 0x60], eax
cmp edi, dword [r14 + 0x5c]
jle 0x1800744d7
mov r10, qword [rsp + 0x60]
mov dword [r14 + 0x5c], edi
jmp 0x18007651d
cmp ecx, 0x10
je 0x180076b45
cmp ecx, 0xd
je 0x180076b45
cmp ecx, 0xe
je 0x180076b45
cmp ecx, 4
jle 0x1800768ae
cmp ecx, 0x11
jge 0x1800768ae
mov r11, qword [rsp + 0x70]
mov r13, r11
mov qword [rbp - 0x68], r11
jmp 0x1800768bc
mov r11, qword [rsp + 0x70]
xor ecx, ecx
mov r13d, ecx
mov qword [rbp - 0x68], rcx
neg al
inc r11
mov byte [r11 - 1], al
mov r10, qword [rsp + 0x60]
mov qword [rsp + 0x70], r11
jmp 0x18007651d
mov r10, qword [rsp + 0x60]
jmp 0x180076518
cmp dword [rsp + 0x7c], 0
je 0x180076901
cmp eax, 0x7f
jle 0x180076901
lea rdx, [rbp - 0x18]
mov ecx, eax
call fcn.180078770
mov r11, qword [rsp + 0x70]
mov edi, eax
jmp 0x18007425f
mov r11, qword [rsp + 0x70]
mov byte [rbp - 0x18], al
mov edi, 1
jmp 0x18007425f
movzx eax, byte [rbp - 0x18]
or eax, dword [rbp - 0x3c]
mov dword [rbp - 0x80], eax
cmp edi, 1
je 0x1800744d7
mov rax, qword [rbp + 0xc8]
movzx r8d, byte [r11 - 1]
mov r10, qword [rsp + 0x60]
or r8d, dword [rax + 0x68]
mov dword [rbp - 0x7c], r8d
jmp 0x18007651d
mov esi, r8d
mov dword [rbp - 0x60], r8d
cmp edi, 1
je 0x180076960
cmp dword [rbp - 0x3c], 0
je 0x180076960
mov r10, qword [rsp + 0x60]
jmp 0x18007651d
mov rax, qword [rbp + 0xc8]
movzx r14d, byte [r11 - 1]
mov r10, qword [rsp + 0x60]
or r14d, dword [rax + 0x68]
or r14d, dword [rbp - 0x3c]
mov dword [rbp - 0x7c], r14d
jmp 0x18007651d
cmp byte [r10 + 1], 0x3a
mov eax, 0x1f
mov ecx, 0xd
cmove eax, ecx
mov dword [r15], eax
jmp 0x180076b9b
mov dword [rbx], 7
jmp 0x180076b9b
mov dword [rax], 8
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 6
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0xb
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x37
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x32
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 9
jmp 0x180076b9b
mov r10, qword [rsp + 0x60]
mov ecx, 0x23
mov eax, 0xf
test esi, esi
cmove eax, ecx
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], eax
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov eax, 0xf
mov dword [rcx], eax
mov r10, qword [rsp + 0x60]
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
dec r10
mov dword [rcx], 0x1a
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
inc r10
mov dword [rcx], 0x1c
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
inc r10
mov dword [rcx], 0x18
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x26
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x27
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x31
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov dword [rcx], 0x2a
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
dec r10
mov dword [rcx], 0xc
jmp 0x180076b9b
mov r10, qword [rsp + 0x60]
mov dword [rdi], 0x36
jmp 0x180076b9b
mov r10, qword [rsp + 0x60]
mov dword [rdi], 0x1b
jmp 0x180076b9b
mov dword [rdi], 0xe
jmp 0x180076b9b
mov dword [r15], 0x30
jmp 0x180076b9b
mov dword [r15], 0x2a
jmp 0x180076b9b
mov rcx, qword [rbp + 0xa8]
mov r10, qword [rsp + 0x60]
mov dword [rcx], 0x28
jmp 0x180076b9b
mov r10, qword [rsp + 0x60]
mov eax, 0xf
mov dword [r15], eax
jmp 0x180076b9b
mov dword [r15], 0x2d
jmp 0x180076b9b
mov eax, dword [rbp - 0x80]
mov rcx, qword [rbp + 0xb0]
mov dword [rcx], eax
mov rcx, qword [rbp + 0xb8]
mov eax, dword [rbp - 0x7c]
mov dword [rcx], eax
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp + 0xd0]
mov qword [rcx], r11
mov rcx, qword [rbp + 0xa0]
mov qword [rcx], r10
test rax, rax
je 0x180076b8d
sub r11d, dword [rbp + 0x28]
add dword [rax], r11d
mov eax, 1
jmp 0x180076ba7
mov dword [r15], 0x34
mov rcx, qword [rbp + 0xa0]
xor eax, eax
mov qword [rcx], r10
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret