Function at 0x1400597c0
Capabilities:
Encode data using base64
Encrypt data using speck
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xf8
mov rdi, qword [r9 + 0xe8]
mov r15, r9
mov r13, qword [r9 + 0xe0]
mov r11d, edx
xor edx, edx
mov qword [rsp + 0x50], rdi
mov esi, r11d
mov qword [rbp - 0x31], rdx
mov rax, qword [r15]
mov ebx, r11d
mov r14, qword [r15 + 0x40]
mov r10, rcx
shr esi, 0x13
movzx r9d, dx
shr ebx, 2
and esi, 1
and ebx, 1
mov dword [rsp + 0x44], edx
mov ecx, dword [rax + 0x40]
mov r12d, edx
mov qword [rbp - 0x11], rdx
mov dword [rbp - 0x65], edx
mov word [rbp + 0x6f], dx
mov dword [rbp - 0x59], edx
mov dword [rbp - 0x55], edx
mov dword [rbp - 0x7d], edx
mov dword [rbp - 0x51], edx
mov dword [rsp + 0x40], esi
mov dword [rbp - 0x29], ebx
mov qword [rbp + 7], r14
mov qword [rbp - 9], rdx
test cl, 8
je 0x140059865
mov dword [r13], 0x80090000
jmp 0x140059872
test cl, 4
je 0x140059882
mov dword [r13], 0x80180005
mov dword [r13 + 4], 0x801a0000
add r13, 8
mov r10, qword [rbp + 0x67]
bt r11d, 0x19
jae 0x140059942
cmp r10, r14
jae 0x14005c18b
mov ecx, 0xfc00
mov r9d, 0x10000
cmp r13, rdi
jae 0x140059938
movzx edx, word [r10]
lea r8, [r10 + 2]
mov dword [rsp + 0x48], edx
mov qword [rbp + 0x67], r8
test esi, esi
je 0x1400598f1
mov eax, edx
and eax, ecx
cmp eax, 0xd800
jne 0x1400598f1
movzx ecx, word [r8]
and edx, 0x3ff
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov edx, ecx
or edx, eax
lea rax, [r8 + 2]
add edx, r9d
mov qword [rbp + 0x67], rax
mov dword [rsp + 0x48], edx
test ebx, ebx
je 0x140059919
mov r9, r13
mov qword [rsp + 0x20], r15
mov r8d, ebx
lea rdx, [rbp - 0x31]
mov rcx, r10
call fcn.140059740
mov edx, dword [rsp + 0x48]
mov r13, rax
mov r9d, 0x10000
mov dword [r13], edx
mov ecx, 0xfc00
mov r10, qword [rbp + 0x67]
add r13, 4
cmp r10, r14
jb 0x1400598a1
jmp 0x14005c18b
mov edx, 0xa3
jmp 0x14005c1ff
mov r8, qword [r15 + 0x50]
movabs rax, 0xaaaaaaaaaaaaaaab
add r8, r8
mov qword [rbp - 0x49], rdx
mul r8
mov rcx, r8
shr rdx, 3
lea rax, [rdx + rdx*2]
shl rax, 2
sub rcx, rax
mov rax, qword [r15 + 0x28]
sub rax, rcx
mov ecx, r11d
add rax, r8
bts ecx, 7
mov qword [rbp - 1], rax
mov eax, r11d
and eax, 0x1000000
cmove ecx, r11d
mov r11d, esi
mov dword [rsp + 0x58], ecx
jmp 0x1400599a5
mov rdi, qword [rsp + 0x50]
mov r8d, 0xfc00
nop dword [rax + rax]
movzx esi, r9w
cmp r10, r14
jae 0x14005c17e
cmp r13, rdi
jae 0x140059938
mov rcx, qword [r15]
movzx eax, r9w
cmp eax, dword [rcx + 0x3c]
ja 0x14005c174
movzx edi, word [r10]
mov rbx, r10
add r10, 2
mov dword [rsp + 0x48], edi
mov qword [rbp + 0x67], r10
mov edx, edi
mov r9, r10
mov rcx, r10
test r11d, r11d
je 0x140059a30
mov eax, edi
and eax, r8d
cmp eax, 0xd800
jne 0x140059a30
movzx eax, word [r10]
and edi, 0x3ff
shl edi, 0xa
and eax, 0x3ff
or eax, edi
add r10, 2
mov qword [rbp + 0x67], r10
mov r9, r10
mov rcx, r10
lea edi, [rax + 0x10000]
mov dword [rsp + 0x48], edi
mov edx, edi
cmp dword [rbp - 0x7d], 0
je 0x140059ad5
cmp edx, 0x5c
jne 0x140059a67
cmp r9, r14
jae 0x140059a67
cmp word [r10], 0x45
jne 0x140059a67
mov rdi, qword [rsp + 0x50]
lea r10, [r9 + 2]
movzx r9d, word [rbp + 0x6f]
xor eax, eax
mov dword [rbp - 0x7d], eax
mov qword [rbp + 0x67], r10
jmp 0x1400599b0
cmp dword [rbp - 0x55], 0
jg 0x14005bfe9
cmp dword [rbp - 0x51], 0
jne 0x140059aa9
mov ecx, dword [rbp - 0x59]
mov eax, ecx
dec ecx
mov dword [rbp - 0x59], ecx
test eax, eax
jg 0x140059aa9
mov r8d, dword [rbp - 0x29]
lea rdx, [rbp - 0x31]
mov r9, r13
mov qword [rsp + 0x20], r15
mov rcx, rbx
call fcn.140059740
mov r11d, dword [rsp + 0x40]
mov r13, rax
mov edi, dword [rsp + 0x48]
mov dword [r13], edi
add r13, 4
xor eax, eax
mov dword [rbp - 0x65], eax
mov r12d, 1
mov r10, qword [rbp + 0x67]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
jmp 0x1400599b0
cmp dword [rbp - 0x51], 0
mov r8, rcx
je 0x140059be1
mov eax, dword [rsp + 0x58]
and eax, 0x400080
cmp eax, 0x400080
jne 0x140059b11
cmp edx, 0xff
ja 0x140059b11
cmp edx, 0x23
je 0x140059be1
mov rax, qword [r15 + 0x20]
test byte [rdi + rax], 1
jne 0x140059be1
cmp edx, 0x29
je 0x140059ba7
cmp edx, 0x5c
je 0x140059b29
mov dword [r13], edi
add r13, 4
jmp 0x140059ab6
mov ebx, dword [rsp + 0x58]
xor eax, eax
bt ebx, 0x16
jae 0x140059b75
mov qword [rsp + 0x30], r15
lea r9, [rsp + 0x44]
mov dword [rsp + 0x28], eax
lea r8, [rsp + 0x48]
mov rdx, r14
mov dword [rsp + 0x20], ebx
lea rcx, [rbp + 0x67]
call fcn.140058850
mov edx, dword [rsp + 0x44]
mov ecx, eax
test edx, edx
jne 0x14005c055
mov r10, qword [rbp + 0x67]
mov edi, dword [rsp + 0x48]
mov r11d, dword [rsp + 0x40]
jmp 0x140059b77
mov ecx, eax
test ecx, ecx
je 0x140059b1f
movzx r9d, word [rbp + 0x6f]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
sub ecx, 0x19
je 0x1400599b0
cmp ecx, 1
jne 0x14005bff7
mov eax, ecx
mov dword [rbp - 0x7d], ecx
jmp 0x1400599b0
xor eax, eax
mov ecx, 0xffff
mov dword [rbp - 0x51], eax
mov r12d, eax
mov rax, r10
sub rax, qword [rbp - 9]
sar rax, 1
dec rax
cmp rax, rcx
jg 0x14005c001
mov rcx, qword [rbp - 0x11]
mov rax, r13
sub rax, rcx
sar rax, 2
dec eax
mov dword [rcx], eax
jmp 0x140059abc
mov rdx, r8
cmp edi, 0x5c
jne 0x140059c1c
cmp r10, r14
jae 0x140059c1c
movzx eax, word [r10]
cmp ax, 0x51
je 0x140059bfe
cmp ax, 0x45
jne 0x140059c1c
xor ebx, ebx
lea r10, [r9 + 2]
movzx r9d, word [rbp + 0x6f]
cmp ax, 0x51
mov qword [rbp + 0x67], r10
sete bl
mov dword [rbp - 0x7d], ebx
jmp 0x1400599a0
test byte [rsp + 0x58], 0x80
je 0x140059d49
mov r8, rdx
cmp edi, 0x100
jae 0x140059c45
mov rax, qword [r15 + 0x20]
movzx r9d, word [rbp + 0x6f]
test byte [rdi + rax], 1
jne 0x1400599a0
cmp edi, 0x23
jne 0x140059d49
movzx r9d, word [rbp + 0x6f]
cmp r8, r14
mov rdi, qword [rsp + 0x50]
mov r8d, 0xfc00
jae 0x1400599b0
nop word [rax + rax]
mov edx, dword [r15 + 0x100]
mov rcx, qword [r15 + 0x40]
test edx, edx
je 0x140059cc9
cmp r10, rcx
jae 0x140059cfe
mov r8, rcx
mov dword [rsp + 0x20], r11d
mov rcx, r10
lea r9, [r15 + 0x104]
call fcn.14006f430
mov r10, qword [rbp + 0x67]
mov r11d, dword [rsp + 0x40]
test eax, eax
je 0x140059cfe
mov edx, dword [r15 + 0x104]
movzx r9d, word [rbp + 0x6f]
mov r8d, 0xfc00
mov eax, edx
lea r10, [r10 + rax*2]
mov qword [rbp + 0x67], r10
jmp 0x1400599b0
mov edx, dword [r15 + 0x104]
imul rax, rdx, 0xfffffffffffffffe
add rax, rcx
cmp r10, rax
ja 0x140059cfe
movzx eax, word [r15 + 0x110]
cmp word [r10], ax
jne 0x140059cfe
cmp edx, 1
je 0x140059caf
movzx eax, word [r15 + 0x112]
cmp word [r10 + 2], ax
je 0x140059caf
add r10, 2
mov r8d, 0xfc00
mov qword [rbp + 0x67], r10
mov rcx, r10
test r11d, r11d
je 0x140059d36
cmp r10, r14
jae 0x140059d36
movzx eax, word [r10]
mov edx, 0xdc00
and ax, r8w
cmp ax, dx
jne 0x140059d36
add r10, 2
mov qword [rbp + 0x67], r10
mov rcx, r10
cmp rcx, r14
jb 0x140059c70
movzx r9d, word [rbp + 0x6f]
jmp 0x1400599b0
cmp edi, 0x28
jne 0x140059da4
mov rax, r14
sub rax, rdx
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x140059de2
cmp word [r10], 0x3f
jne 0x140059de2
cmp word [r10 + 2], 0x23
jne 0x140059de2
add r10, 2
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005c00f
cmp word [r10], 0x29
jne 0x140059d71
cmp r10, r14
jae 0x14005c00f
movzx r9d, word [rbp + 0x6f]
add r10, 2
mov qword [rbp + 0x67], r10
jmp 0x1400599a0
lea eax, [rdi - 0x2a]
cmp eax, 1
jbe 0x140059e13
cmp edi, 0x3f
je 0x140059e13
cmp edi, 0x7b
jne 0x140059de2
lea rax, [rsp + 0x44]
mov qword [rbp - 0x41], r10
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rcx, [rbp - 0x41]
mov rdx, r14
call fcn.1400586c0
mov r10, qword [rbp + 0x67]
mov edi, dword [rsp + 0x48]
test eax, eax
jne 0x140059e13
mov ecx, dword [rbp - 0x59]
mov eax, ecx
dec ecx
mov dword [rbp - 0x59], ecx
test eax, eax
jg 0x140059e13
mov r8d, dword [rbp - 0x29]
lea rdx, [rbp - 0x31]
mov r9, r13
mov qword [rsp + 0x20], r15
mov rcx, rbx
call fcn.140059740
mov r10, qword [rbp + 0x67]
mov r13, rax
mov edi, dword [rsp + 0x48]
mov edx, dword [rbp - 0x55]
test edx, edx
jle 0x140059e79
cmp edi, 0x28
jne 0x14005c019
mov rax, r14
sub rax, r10
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x14005c019
cmp word [r10], 0x3f
jne 0x14005c019
movzx ecx, word [r10 + 2]
sub ecx, 0x21
je 0x140059e79
sub ecx, 0x1b
je 0x140059e64
sub ecx, 1
je 0x140059e79
cmp ecx, 6
jne 0x14005c019
cmp edx, 2
jmp 0x140059e73
movzx eax, word [r10 + 4]
cmp ax, 0x3d
je 0x140059e79
cmp ax, 0x21
jne 0x14005c019
mov ecx, dword [rbp - 0x65]
xor r11d, r11d
mov dword [rbp - 0x55], r11d
mov r8d, edx
mov dword [rbp - 0x65], r11d
mov ebx, r12d
mov eax, ecx
mov edx, ecx
mov r12d, r11d
test ecx, ecx
je 0x140059ee5
cmp edi, 0x3f
je 0x140059ea2
cmp edi, 0x2b
jne 0x140059ee5
mov r11d, dword [rsp + 0x40]
cmp edi, 0x3f
movzx r9d, word [rbp + 0x6f]
mov ecx, 0x10000
mov r8d, 0x20000
cmove ecx, r8d
add ecx, eax
mov rax, 0xfffffffffffffffc
cmp edx, 0x80390000
mov rdx, 0xfffffffffffffff4
cmove rax, rdx
mov dword [rax + r13], ecx
mov r10, qword [rbp + 0x67]
jmp 0x1400599a0
lea eax, [rdi - 0x24]
cmp eax, 0x58
ja case.0x140059f0c.37
lea r9, [0x140000000]
movzx eax, byte [r9 + rax + 0x5c258]
mov ecx, dword [r9 + rax*4 + 0x5c224]
add rcx, r9
jmp rcx
mov ebx, dword [rsp + 0x58]
lea r9, [rsp + 0x44]
mov qword [rsp + 0x30], r15
lea r8, [rsp + 0x48]
mov dword [rsp + 0x28], r11d
lea rcx, [rbp + 0x67]
mov rdx, r14
mov dword [rsp + 0x20], ebx
mov qword [rbp - 0x41], r10
call fcn.140058850
mov edx, dword [rsp + 0x44]
mov edi, eax
mov esi, dword [rsp + 0x40]
test edx, edx
jne 0x140059f5b
mov r10, qword [rbp + 0x67]
xor edx, edx
mov ecx, dword [rsp + 0x48]
jmp 0x140059fd6
mov ebx, dword [rsp + 0x58]
mov r10, qword [rbp + 0x67]
mov rax, qword [r15]
test byte [rax + 0x40], 2
je 0x14005c1ff
mov r10, qword [rbp - 0x41]
mov qword [rbp + 0x67], r10
cmp r10, r14
jb 0x140059f80
mov ecx, 0x5c
jmp 0x140059fce
mov r10, qword [rbp - 0x41]
movzx ecx, word [r10]
lea r8, [r10 + 2]
mov dword [rsp + 0x48], ecx
mov edx, ecx
mov qword [rbp + 0x67], r8
mov r10, r8
test esi, esi
je 0x140059fd2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x140059fd2
movzx ecx, word [r8]
lea r10, [r8 + 2]
and edx, 0x3ff
mov qword [rbp + 0x67], r10
and ecx, 0x3ff
shl edx, 0xa
or ecx, edx
add ecx, 0x10000
mov dword [rsp + 0x48], ecx
xor edx, edx
mov edi, edx
test edi, edi
je 0x14005a3bf
js 0x14005a321
lea eax, [rdi - 6]
cmp eax, 0x16
ja case.0x14005a00d.13
lea r9, [0x140000000]
cdqe
movzx eax, byte [r9 + rax + 0x5c2cc]
mov ecx, dword [r9 + rax*4 + 0x5c2b4]
add rcx, r9
jmp rcx
bt ebx, 0x14
jae case.0x14005a00d.12
mov edx, 0xb7
mov dword [rsp + 0x44], edx
jmp 0x140059f5f
mov word [rbp - 0x69], dx
lea rax, [rsp + 0x44]
mov word [rbp - 0x61], dx
lea r9, [rbp - 0x61]
lea rdx, [rbp - 0x25]
mov qword [rsp + 0x28], r15
lea r8, [rbp - 0x69]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x67]
call fcn.140059370
test eax, eax
jne 0x14005a1af
mov edx, dword [rsp + 0x44]
jmp 0x140059f5b
cmp r10, r14
jae 0x14005a164
movzx eax, word [r10]
cmp ax, 0x7b
je 0x14005a087
cmp ax, 0x3c
je 0x14005a08d
cmp ax, 0x27
jne 0x14005a164
cmp ax, 0x3c
jne 0x14005a094
mov ebx, 0x3e
jmp 0x14005a0a5
cmp ax, 0x27
mov ebx, 0x7d
mov eax, 0x27
cmove ebx, eax
cmp edi, 0x1b
jne 0x14005a11f
cmp ebx, 0x7d
je 0x14005a11f
mov r8d, dword [r15 + 0xd4]
lea rax, [r10 + 2]
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x61]
lea rax, [rsp + 0x44]
mov r9d, 0xffff
mov qword [rsp + 0x30], rax
mov rdx, r14
lea rax, [rbp - 0x79]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa1
call fcn.140058580
test eax, eax
je 0x14005a113
mov rcx, qword [rbp - 0x61]
cmp rcx, r14
jae 0x14005a103
movzx eax, word [rcx]
cmp eax, ebx
je 0x14005a203
mov eax, 0x9d
mov edx, eax
mov dword [rsp + 0x44], eax
jmp 0x140059f57
mov edx, dword [rsp + 0x44]
test edx, edx
jne 0x140059f57
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x71]
lea rax, [rbp - 0x75]
mov r8d, ebx
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x39]
mov rdx, r14
mov qword [rsp + 0x20], rax
call fcn.140059600
test eax, eax
jne 0x14005a20f
mov edx, dword [rsp + 0x44]
jmp 0x140059f57
cmp edi, 0x1b
mov edx, 0xa9
mov eax, 0x9d
cmove edx, eax
mov dword [rsp + 0x44], edx
jmp 0x140059f5f
mov r11d, dword [rsp + 0x40]
lea eax, [rdi - 0x7fe80000]
movzx r9d, word [rbp + 0x6f]
mov r12d, 1
mov rdi, qword [rsp + 0x50]
mov r8d, 0xfc00
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
cmp dword [rbp - 0x25], r12d
je 0x14005a1c0
xor eax, eax
cmp edi, 0xf
sete al
lea edi, [rax + 0xf]
movzx ecx, word [rbp - 0x69]
lea eax, [rdi - 0x7fe80000]
mov r11d, dword [rsp + 0x40]
mov r12d, 1
movzx r9d, word [rbp + 0x6f]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
mov dword [r13], eax
movzx eax, word [rbp - 0x61]
shl ecx, 0x10
or ecx, eax
mov dword [r13 + 4], ecx
add r13, 8
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov eax, dword [rbp - 0x79]
mov qword [rbp + 0x67], rcx
jmp 0x14005bc65
cmp edi, 0x1c
je 0x14005a21e
mov eax, 0x80210000
cmp ebx, 0x7d
jne 0x14005a223
mov eax, 0x80040000
mov dword [r13], eax
jmp 0x14005b14d
mov eax, 0x20000
mov r12d, 1
test eax, ebx
jne 0x14005a267
mov r11d, dword [rsp + 0x40]
lea eax, [rdi - 0x7fe80000]
movzx r9d, word [rbp + 0x6f]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
lea eax, [rdi - 7]
test eax, 0xfffffff9
jne 0x14005a27b
mov eax, 0x80180010
cmp edi, 0xd
jne 0x14005a280
mov eax, 0x8018000f
mov dword [r13], eax
add r13, 4
lea eax, [rdi - 6]
cmp eax, 5
ja case.default.0x14005a2a1
cdqe
mov ecx, dword [r9 + rax*4 + 0x5c2e4]
add rcx, r9
jmp rcx
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x3000d
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x60000
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x80000
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
sub r10, qword [r15 + 0x38]
neg edi
sar r10, 1
mov eax, edi
dec r10
or eax, 0x80030000
mov qword [rbp - 0x71], r10
mov dword [r13], eax
add r13, 4
cmp edi, 0xa
jge 0x14005a384
movsxd rax, edi
cmp qword [r15 + rax*8 + 0x58], 0xffffffffffffffff
lea rcx, [r15 + rax*8]
jne 0x14005b16b
mov rax, qword [rbp - 0x71]
mov r12d, 1
mov r10, qword [rbp + 0x67]
mov r8d, 0xfc00
mov r11d, dword [rsp + 0x40]
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov qword [rcx + 0x58], rax
jmp 0x1400599b0
mov rax, qword [rbp - 0x71]
mov r12d, 1
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
shr rax, 0x20
mov dword [r13], eax
mov eax, dword [rbp - 0x71]
mov dword [r13 + 4], eax
add r13, 8
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov r12d, 1
movzx r9d, word [rbp + 0x6f]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
mov dword [r13], ecx
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x80090000
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x80160000
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov r12d, 1
movzx r9d, word [rbp + 0x6f]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x80170000
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov ecx, 0x80300000
jmp 0x14005a4e9
mov ecx, 0x80330000
jmp 0x14005a4e9
mov ecx, 0x80360000
jmp 0x14005a4e9
lea rax, [rsp + 0x44]
mov rdx, r14
lea r9, [rbp - 0x1d]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x21]
lea rcx, [rbp + 0x67]
call fcn.1400586c0
test eax, eax
jne 0x14005a4e0
mov edx, dword [rsp + 0x44]
test edx, edx
jne 0x14005c055
mov eax, dword [rsp + 0x48]
lea r12d, [rdx + 1]
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r10, qword [rbp + 0x67]
mov ecx, 0x80390000
mov dword [rbp - 0x65], ecx
test ebx, ebx
je 0x14005c027
mov dword [r13], ecx
add r13, 4
cmp dword [rsp + 0x48], 0x7b
jne case.default.0x14005a2a1
mov eax, dword [rbp - 0x21]
mov r8d, 0xfc00
mov r11d, dword [rsp + 0x40]
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], eax
mov eax, dword [rbp - 0x1d]
mov dword [r13 + 4], eax
add r13, 8
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov rax, r14
mov ebx, 1
sub rax, r10
mov r12d, ebx
and rax, 0xfffffffffffffffe
cmp rax, 0xc
jl 0x14005a63f
lea r9d, [rbx + 5]
mov r8, r10
lea rdx, [0x140163038]
movzx ecx, word [r8]
lea r8, [r8 + 2]
movsx eax, byte [rdx]
lea rdx, [rdx + 1]
cmp cx, ax
jne 0x14005a57c
sub r9, rbx
jne 0x14005a561
jmp 0x14005a5ad
mov r9d, 6
lea rdx, str._:_:__
mov r8, r10
nop dword [rax]
movzx ecx, word [r8]
lea r8, [r8 + 2]
movsx eax, byte [rdx]
lea rdx, [rdx + 1]
cmp cx, ax
jne 0x14005a63f
sub r9, rbx
jne 0x14005a590
mov dword [r13], 0x80180005
lea rcx, [r13 + 8]
mov rax, qword [rbp + 0x67]
cmp word [rax + 4], 0x3c
jne 0x14005a5ce
mov dword [r13 + 4], 0x80220000
jmp 0x14005a5e4
mov eax, 0x80240000
mov dword [r13 + 4], eax
mov rax, qword [rbp + 0x77]
mov qword [rcx], r11
add rcx, 8
mov dword [rax], ebx
mov eax, 0x20000
lea r13, [rcx + 4]
test dword [rsp + 0x58], eax
jne 0x14005a5fb
mov dword [rcx], 0x8018000b
jmp 0x14005a60d
mov dword [rcx], 0x80180010
mov dword [r13], 0x80000
add r13, 4
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x80190000
add r13, 4
mov r10, qword [rbp + 0x67]
add r10, 0xc
mov qword [rbp + 0x67], r10
jmp 0x1400599b0
cmp r10, r14
jae 0x14005a67d
movzx eax, word [r10]
cmp ax, 0x3d
ja 0x14005a67d
movabs rcx, 0x2400400000000000
bt rcx, rax
jae 0x14005a67d
lea r8, [rbp - 0x41]
mov rdx, r14
mov rcx, r10
call fcn.1400594e0
mov r10, qword [rbp + 0x67]
test eax, eax
jne 0x14005c035
mov edi, dword [rsp + 0x48]
mov esi, dword [rsp + 0x40]
xor edx, edx
mov r11d, edx
cmp r10, r14
jae 0x14005a780
mov r15d, dword [rsp + 0x58]
nop dword [rax]
nop dword [rax + rax]
movzx edi, word [r10]
add r10, 2
mov dword [rsp + 0x48], edi
mov ecx, edi
mov qword [rbp + 0x67], r10
mov rdx, r10
test esi, esi
je 0x14005a6f2
mov eax, edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x14005a6f2
movzx eax, word [r10]
and edi, 0x3ff
shl edi, 0xa
and eax, 0x3ff
or edi, eax
add edi, 0x10000
add r10, 2
mov dword [rsp + 0x48], edi
mov qword [rbp + 0x67], r10
mov rdx, r10
mov ecx, edi
cmp ecx, 0x5c
jne 0x14005a753
cmp rdx, r14
jae 0x14005a70d
cmp word [r10], 0x45
jne 0x14005a70d
lea r10, [rdx + 2]
mov qword [rbp + 0x67], r10
jmp 0x14005a771
mov rax, r14
sub rax, rdx
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x14005a77a
mov r9d, 3
lea r8, [0x140163048]
nop word [rax + rax]
movzx ecx, word [rdx]
lea rdx, [rdx + 2]
movsx eax, byte [r8]
lea r8, [r8 + 1]
cmp cx, ax
jne 0x14005a77a
sub r9, rbx
jne 0x14005a730
add r10, 6
mov qword [rbp + 0x67], r10
jmp 0x14005a771
bt r15d, 0x18
jae 0x14005a764
cmp ecx, 0x20
je 0x14005a771
cmp ecx, 9
je 0x14005a771
test r11d, r11d
jne 0x14005a77a
cmp ecx, 0x5e
jne 0x14005a77a
mov r11d, ebx
cmp r10, r14
jb 0x14005a6a0
mov r15, qword [rbp + 0x7f]
xor edx, edx
cmp edi, 0x5d
jne 0x14005a7c4
test byte [r15 + 0xcc], bl
je 0x14005a7c4
movzx r9d, word [rbp + 0x6f]
test r11d, r11d
mov r11d, dword [rsp + 0x40]
mov eax, 0x800b0000
mov rdi, qword [rsp + 0x50]
mov ecx, 0x800c0000
cmovne eax, ecx
mov r8d, 0xfc00
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
test r11d, r11d
mov ecx, 0x800e0000
mov eax, 0x800a0000
mov edi, edx
cmovne eax, ecx
mov r9d, ebx
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
mov ecx, dword [rsp + 0x48]
jmp 0x14005a7ed
xor edx, edx
cmp dword [rbp - 0x7d], 0
mov ebx, r9d
je 0x14005a825
cmp ecx, 0x5c
jne 0x14005ac39
cmp r10, r14
jae 0x14005ac39
cmp word [r10], 0x45
jne 0x14005ac39
add r10, 2
mov dword [rbp - 0x7d], edx
mov qword [rbp + 0x67], r10
mov ebx, edx
jmp 0x14005ac9f
mov r12d, dword [rsp + 0x58]
bt r12d, 0x18
jae 0x14005a843
cmp ecx, 0x20
je 0x14005ac9c
cmp ecx, 9
je 0x14005ac9c
cmp ecx, 0x5b
jne 0x14005a9a7
mov rax, r14
sub rax, r10
and rax, 0xfffffffffffffffe
cmp rax, 6
jl 0x14005ac39
movzx eax, word [r10]
cmp ax, 0x3d
ja 0x14005ac39
movabs r8, 0x2400400000000000
bt r8, rax
jae 0x14005ac39
lea r8, [rbp - 0x41]
mov rdx, r14
mov rcx, r10
call fcn.1400594e0
mov r10, qword [rbp + 0x67]
test eax, eax
je 0x14005a99d
xor eax, eax
mov ebx, eax
cmp edi, 1
je 0x14005ac16
cmp word [r10], 0x3a
jne 0x14005c05e
lea rcx, [r10 + 2]
mov qword [rbp + 0x67], rcx
cmp word [rcx], 0x5e
jne 0x14005a8ce
add rcx, 2
lea ebx, [rax + 1]
mov qword [rbp + 0x67], rcx
mov rdx, qword [rbp - 0x41]
sub rdx, rcx
sar rdx, 1
call fcn.140059560
mov r8d, eax
test eax, eax
js 0x14005c050
mov r10, qword [rbp - 0x41]
lea rax, [r14 - 2]
add r10, 4
mov qword [rbp + 0x67], r10
cmp r10, rax
jae 0x14005a910
cmp word [r10], 0x2d
jne 0x14005a910
cmp word [r10 + 2], 0x5d
jne 0x14005ac16
xor eax, eax
mov edi, eax
mov eax, 0x20000
test eax, r12d
je 0x14005a97f
lea eax, [r8 + r8]
movsxd rcx, eax
lea rdx, [0x140000000]
mov eax, dword [rdx + rcx*4 + 0x13f440]
mov edx, dword [rdx + rcx*4 + 0x13f444]
test eax, eax
js 0x14005a961
xor ebx, 1
shl eax, 0x10
sub ebx, 0x7fe7fff1
or eax, edx
mov dword [r13], ebx
mov dword [r13 + 4], eax
add r13, 8
mov r10, qword [rbp + 0x67]
jmp 0x14005ac96
test edx, edx
je 0x14005a97f
xor ebx, 1
sub ebx, 0x7fe7ffee
mov dword [r13], ebx
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x14005ac96
lea eax, [rbx + 0x801c]
shl eax, 0x10
mov dword [r13], eax
mov dword [r13 + 4], r8d
add r13, 8
mov r10, qword [rbp + 0x67]
jmp 0x14005ac96
mov ecx, dword [rsp + 0x48]
xor edx, edx
lea r9d, [rdx + 1]
cmp ecx, 0x2d
jne 0x14005a9d9
cmp edi, 2
jb 0x14005ac39
cmp edi, 3
mov eax, 0x801e0000
mov ecx, 0x801f0000
mov edi, r9d
cmove eax, ecx
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x14005ac9c
cmp ecx, 0x5c
jne 0x14005ac39
mov qword [rsp + 0x30], r15
lea r8, [rsp + 0x48]
mov dword [rsp + 0x28], r9d
lea rcx, [rbp + 0x67]
lea r9, [rsp + 0x44]
mov qword [rbp - 0x41], r10
mov rdx, r14
mov dword [rsp + 0x20], r12d
call fcn.140058850
mov edx, dword [rsp + 0x44]
mov ebx, eax
mov r8, qword [rbp - 0x41]
mov r10, qword [rbp + 0x67]
test edx, edx
jne 0x14005aa29
mov ecx, dword [rsp + 0x48]
xor edx, edx
jmp 0x14005aa95
mov dword [rsp + 0x44], edx
mov rax, qword [r15]
test byte [rax + 0x40], 2
je 0x14005c1ff
mov qword [rbp + 0x67], r8
mov r10, r8
cmp r8, r14
jb 0x14005aa49
mov ecx, 0x5c
jmp 0x14005aa8d
movzx ecx, word [r8]
lea r10, [r8 + 2]
mov dword [rsp + 0x48], ecx
mov qword [rbp + 0x67], r10
test esi, esi
je 0x14005aa91
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x14005aa91
movzx eax, word [r10]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add r10, 2
mov qword [rbp + 0x67], r10
mov dword [rsp + 0x48], ecx
xor edx, edx
mov ebx, edx
test ebx, ebx
je 0x14005ac37
cmp ebx, 5
je 0x14005ac2e
cmp ebx, 0x1a
je 0x14005ac20
cmp ebx, 0x19
je 0x14005ac96
cmp edi, 1
jne 0x14005aac7
mov edx, 0x96
jmp 0x14005aa25
lea eax, [rbx - 6]
mov edi, edx
cmp eax, 0xf
ja case.0x14005aae5.13
lea r9, [0x140000000]
cdqe
mov ecx, dword [r9 + rax*4 + 0x5c2fc]
add rcx, r9
jmp rcx
mov edx, 0xab
jmp 0x14005aa25
sub r10, 2
mov edx, 0x6b
mov qword [rbp + 0x67], r10
jmp 0x14005aa25
mov eax, 0x20000
test eax, r12d
jne 0x14005ab20
lea eax, [rbx - 0x7fe80000]
mov dword [r13], eax
add r13, 4
jmp case.default.0x14005ab5b
lea eax, [rbx - 7]
test eax, 0xfffffff9
jne 0x14005ab34
mov eax, 0x80180010
cmp ebx, 0xd
jne 0x14005ab39
mov eax, 0x8018000f
mov dword [r13], eax
add ebx, 0xfffffffa
add r13, 4
cmp ebx, 5
ja case.default.0x14005ab5b
movsxd rax, ebx
mov ecx, dword [r9 + rax*4 + 0x5c33c]
add rcx, r9
jmp rcx
mov dword [r13], 0x3000d
add r13, 4
jmp case.default.0x14005ab5b
mov dword [r13], 0x60000
add r13, 4
jmp case.default.0x14005ab5b
mov dword [r13], 0x80000
add r13, 4
jmp case.default.0x14005ab5b
mov word [rbp - 0x61], dx
lea rax, [rsp + 0x44]
mov word [rbp - 0x69], dx
lea r9, [rbp - 0x69]
lea rdx, [rbp - 0x19]
mov qword [rsp + 0x28], r15
lea r8, [rbp - 0x61]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x67]
call fcn.140059370
test eax, eax
je 0x14005c0a2
cmp dword [rbp - 0x19], 0
je 0x14005abcf
xor eax, eax
cmp ebx, 0xf
sete al
lea ebx, [rax + 0xf]
movzx ecx, word [rbp - 0x61]
lea eax, [rbx - 0x7fe80000]
mov dword [r13], eax
movzx eax, word [rbp - 0x69]
shl ecx, 0x10
or ecx, eax
mov dword [r13 + 4], ecx
add r13, 8
mov r10, qword [rbp + 0x67]
lea rax, [r14 - 2]
cmp r10, rax
jae 0x14005ac96
cmp word [r10], 0x2d
jne 0x14005ac96
cmp word [r10 + 2], 0x5d
je 0x14005ac96
mov edx, 0x96
jmp 0x14005c1ff
mov r9d, 1
mov ebx, r9d
mov dword [rbp - 0x7d], ebx
jmp 0x14005ac9f
mov ecx, 8
mov dword [rsp + 0x48], ecx
mov ebx, edx
cmp edi, 1
jne 0x14005ac83
mov eax, dword [r13 - 8]
cmp eax, ecx
jne 0x14005ac51
mov rax, 0xfffffffffffffffc
mov edi, edx
jmp 0x14005ac93
ja 0x14005c06c
test ebx, ebx
jne 0x14005ac72
mov eax, 0x801f0000
cmp dword [r13 - 4], eax
jne 0x14005ac72
mov dword [r13 - 4], 0x801e0000
mov ecx, dword [rsp + 0x48]
mov dword [r13], ecx
mov eax, 4
mov r10, qword [rbp + 0x67]
mov edi, edx
jmp 0x14005ac93
mov dword [r13], ecx
lea edi, [rbx + 2]
mov r10, qword [rbp + 0x67]
mov eax, 4
add r13, rax
mov r9d, 1
mov ebx, dword [rbp - 0x7d]
cmp r10, r14
jae 0x14005c07a
movzx ecx, word [r10]
mov r8d, 0xfc00
add r10, 2
mov dword [rsp + 0x48], ecx
mov qword [rbp + 0x67], r10
mov edx, ecx
test esi, esi
je 0x14005acf8
mov eax, ecx
and eax, r8d
cmp eax, 0xd800
jne 0x14005acf8
movzx eax, word [r10]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add r10, 2
mov dword [rsp + 0x48], ecx
mov qword [rbp + 0x67], r10
mov edx, ecx
cmp edx, 0x5d
jne 0x14005a7eb
test ebx, ebx
jne 0x14005a7eb
cmp edi, 1
jne 0x14005ad16
mov dword [r13 - 4], 0x2d
mov r11d, dword [rsp + 0x40]
mov r12d, r9d
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x800d0000
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
cmp r10, r14
jae 0x14005c1fa
movzx eax, word [r10]
cmp ax, 0x3f
je 0x14005aff2
movzx r9d, word [rbp + 0x6f]
cmp ax, 0x2a
je 0x14005adcc
inc r9w
test dword [rsp + 0x58], 0x2000
mov word [rbp + 0x6f], r9w
jne 0x14005ada6
inc dword [r15 + 0xd4]
mov r8d, 0xfc00
mov eax, dword [r15 + 0xd4]
mov r11d, dword [rsp + 0x40]
or eax, 0x80080000
mov rdi, qword [rsp + 0x50]
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov eax, 0x801a0000
mov rdi, qword [rsp + 0x50]
mov r8d, 0xfc00
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov rax, r14
mov rdi, qword [rsp + 0x50]
sub rax, r10
and rax, 0xfffffffffffffffe
mov r8d, 0xfc00
cmp rax, 2
jle 0x1400599b0
cmp word [r10 + 2], 0x29
movzx r9d, word [rbp + 0x6f]
je 0x1400599b0
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x71]
lea rax, [rbp - 0x75]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x39]
mov rdx, r14
mov qword [rsp + 0x20], rax
lea rbx, [0x14013f8f8]
call fcn.140059600
test eax, eax
je 0x14005c0a2
mov r10, qword [rbp + 0x67]
cmp r10, r14
jae 0x14005afba
movzx eax, word [r10]
cmp ax, 0x3a
je 0x14005ae65
cmp ax, 0x29
jne 0x14005afba
mov r11d, dword [rbp - 0x75]
xor eax, eax
mov rsi, qword [rbp - 0x39]
mov edi, eax
mov dword [rbp - 0x79], eax
nop dword [rax]
nop dword [rax + rax]
cdqe
lea rcx, [rax + rax*2]
lea rax, [0x140000000]
cmp r11d, dword [rax + rcx*4 + 0x13f820]
jne 0x14005af90
mov r9, r11
mov rdx, rbx
mov r8, rsi
test r11d, r11d
je 0x14005aece
nop dword [rax]
movzx ecx, word [r8]
lea r8, [r8 + 2]
movsx eax, byte [rdx]
lea rdx, [rdx + 1]
cmp cx, ax
jne 0x14005af90
sub r9, 1
jne 0x14005aeb0
cmp edi, 9
jge 0x14005afba
cmp word [r10], 0x3a
jne 0x14005aef3
lea rax, [r10 + 2]
cmp rax, r14
jae 0x14005aef3
cmp word [rax], 0x29
cmove r10, rax
mov qword [rbp + 0x67], r10
movsxd rax, edi
lea r8, [0x140000000]
lea rcx, [rax + rax*2]
lea rdx, [rcx*4]
mov ecx, dword [rdx + r8 + 0x13f828]
test ecx, ecx
jle 0x14005af20
cmp word [r10], 0x3a
jne 0x14005c084
movzx eax, word [r10]
add r10, 2
mov qword [rbp + 0x67], r10
cmp ax, 0x3a
jne 0x14005afc4
test ecx, ecx
js 0x14005c08e
mov eax, dword [rdx + r8 + 0x13f824]
xor ecx, ecx
mov r11d, dword [rsp + 0x40]
cmp eax, 0x80260000
movzx r9d, word [rbp + 0x6f]
mov edx, 0x10000
mov rdi, qword [rsp + 0x50]
cmovne ecx, edx
add ecx, eax
mov dword [rbp - 0x51], 1
mov dword [r13], ecx
mov r8d, 0xfc00
mov r10, qword [rbp + 0x67]
add r13, 4
mov qword [rbp - 0x11], r13
add r13, 4
mov qword [rbp - 9], r10
jmp 0x1400599b0
movsxd rax, edi
inc edi
mov dword [rbp - 0x79], edi
lea rcx, [rax + rax*2]
lea rax, [0x140000000]
mov eax, dword [rax + rcx*4 + 0x13f820]
inc eax
add rbx, rax
mov eax, edi
cmp edi, 9
jl 0x14005ae80
mov edx, 0xa0
jmp 0x14005c1ff
mov eax, dword [rdx + r8 + 0x13f824]
mov r8d, 0xfc00
mov r11d, dword [rsp + 0x40]
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
mov dword [r13], eax
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
add r10, 2
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005c1fa
movzx edx, word [r10]
lea eax, [rdx - 0x21]
cmp eax, 0x31
ja case.0x14005b029.45
cdqe
movzx eax, byte [r9 + rax + 0x5c388]
mov ecx, dword [r9 + rax*4 + 0x5c354]
add rcx, r9
jmp rcx
add r10, 2
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005c1fa
movzx eax, word [r10]
cmp ax, 0x3c
jne 0x14005b051
mov r8d, 0x3e
jmp 0x14005b93c
cmp ax, 0x3e
je case.0x14005b029.34
cmp ax, 0x3d
jne 0x14005c098
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x71]
lea rax, [rbp - 0x75]
mov r8d, 0x29
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x39]
mov rdx, r14
mov qword [rsp + 0x20], rax
call fcn.140059600
test eax, eax
je 0x14005c0a2
mov dword [r13], 0x80040000
jmp 0x14005b14d
add r10, 2
mov eax, r11d
mov dword [rbp - 0x79], eax
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005b0cf
cmp word [r10], 0x29
je 0x14005bc65
mov edx, 0x9e
jmp 0x14005c1ff
mov rax, r14
sub rax, r10
and rax, 0xfffffffffffffffe
cmp rax, 4
jl 0x14005b0fc
movzx eax, word [r10 + 2]
sub ax, 0x30
cmp ax, 9
jbe case.0x14005b029.38
mov edx, 0x81
jmp 0x14005c1ff
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x71]
lea rax, [rbp - 0x75]
mov r8d, 0x29
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x39]
mov rdx, r14
mov qword [rsp + 0x20], rax
call fcn.140059600
test eax, eax
je 0x14005c0a2
mov dword [r13], 0x80210000
mov eax, dword [rbp - 0x75]
mov dword [r13 + 4], eax
mov rax, qword [rbp - 0x71]
shr rax, 0x20
mov dword [r13 + 8], eax
mov eax, dword [rbp - 0x71]
mov dword [r13 + 0xc], eax
add r13, 0x10
mov r12d, 1
mov r10, qword [rbp + 0x67]
mov r8d, 0xfc00
mov r11d, dword [rsp + 0x40]
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rsp + 0x50]
jmp 0x1400599b0
add r10, 2
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005c1fa
mov rcx, qword [rbp - 0x31]
lea ebx, [r8 - 1]
mov dword [rbp - 0x55], ebx
test rcx, rcx
je 0x14005b1cc
test byte [rsp + 0x58], 4
je 0x14005b1cc
lea rax, [r13 - 0x10]
cmp rcx, rax
jne 0x14005b1cc
cmp dword [r13 - 4], 0xff
cmove r13, rcx
mov eax, 1
mov qword [rbp - 0x31], r13
mov dword [rbp - 0x59], eax
movzx eax, word [r10]
cmp ax, 0x29
je 0x14005b2ab
sub ax, 0x30
cmp ax, 9
jbe 0x14005b2ab
mov r8, r10
mov dword [rbp - 0x79], r11d
mov edx, r11d
nop
movzx eax, word [r10]
movsxd rcx, edx
cmp eax, dword [r9 + rcx*4 + 0x13ef58]
je 0x14005b22a
inc edx
mov dword [rbp - 0x79], edx
cmp dword [r9 + rcx*4 + 0x13ef5c], r11d
jne 0x14005b200
mov edx, 0xb6
jmp 0x14005c1ff
mov edx, dword [r9 + rcx*4 + 0x13f688]
test edx, edx
je 0x14005b220
mov dword [r13], 0x80070000
mov r10, qword [rbp + 0x67]
add r10, 2
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005c0b9
movzx eax, word [r10]
cmp eax, edx
jne 0x14005b242
add r10, 2
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005b270
movzx eax, word [r10]
cmp eax, edx
je 0x14005b242
mov rax, r10
mov ecx, 0xffffffff
sub rax, r8
sar rax, 1
cmp rax, rcx
ja 0x14005c0af
mov dword [r13 + 0xc], eax
sub r8, qword [r15 + 0x38]
sar r8, 1
mov qword [rbp - 0x71], r8
shr r8, 0x20
mov dword [r13 + 0x10], r8d
add r13, 0x14
mov eax, dword [rbp - 0x71]
mov dword [r13], eax
jmp 0x14005b2f9
mov dword [r13], 0x80060000
mov ecx, r11d
mov r10, qword [rbp + 0x67]
add r13, 0xc
cmp r10, r14
jae 0x14005b2f5
movzx edx, word [r10]
lea eax, [rdx - 0x30]
cmp ax, 9
ja 0x14005b2f5
lea ecx, [rcx + rcx*4]
movzx eax, dx
add r10, 2
lea ecx, [rcx - 0x18]
mov qword [rbp + 0x67], r10
lea ecx, [rax + rcx*2]
cmp ecx, 0xff
jg 0x14005c0c6
cmp r10, r14
jb 0x14005b2c3
mov dword [r13], ecx
mov r10, qword [rbp + 0x67]
cmp r10, r14
jae 0x14005c0d0
cmp word [r10], 0x29
jne 0x14005c0d0
mov rax, qword [rbp - 0x31]
add r10, 2
mov qword [rbp + 0x67], r10
sub r10, qword [r15 + 0x38]
sar r10, 1
mov dword [rax + 4], r10d
add r13, 4
mov rax, qword [rbp - 0x31]
mov dword [rax + 8], r11d
mov r11d, dword [rsp + 0x40]
jmp 0x140059abc
add r10, 2
mov qword [rbp + 0x67], r10
cmp r10, r14
jae 0x14005c1fa
movzx r9d, word [rbp + 0x6f]
inc r9w
cmp word [r10], 0x3f
mov word [rbp + 0x6f], r9w
jne 0x14005b398
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x800f0000
add r13, 4
mov r10, qword [rbp + 0x67]
sub r10, 2
mov dword [rbp - 0x55], 2
mov qword [rbp + 0x67], r10
jmp 0x1400599b0
mov r8d, dword [r15 + 0xd4]
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x79]
mov r9d, 0xffff
mov qword [rsp + 0x28], rax
mov rdx, r14
mov dword [rsp + 0x20], 0xa1
call fcn.140058580
test eax, eax
je 0x14005b410
cmp dword [rbp - 0x79], r12d
jle 0x14005c0da
mov dword [r13], 0x80120000
mov rax, qword [rbp + 0x67]
sub rax, qword [r15 + 0x38]
sar rax, 1
sub rax, 2
mov qword [rbp - 0x71], rax
shr rax, 0x20
mov dword [r13 + 4], eax
mov eax, dword [rbp - 0x71]
mov dword [r13 + 8], eax
add r13, 0xc
mov eax, dword [rbp - 0x79]
jmp 0x14005b7a9
mov edx, dword [rsp + 0x44]
test edx, edx
jne 0x14005c055
mov r11, qword [rbp + 0x67]
mov rbx, r14
sub rbx, r11
sar rbx, 1
cmp rbx, 0xa
jl 0x14005b61a
lea r9d, [rdx + 7]
mov r8, r11
lea rdx, str.VERSION
movzx ecx, word [r8]
add r8, 2
movsx eax, byte [rdx]
lea rdx, [rdx + 1]
cmp cx, ax
jne 0x14005b61a
sub r9, 1
jne 0x14005b441
cmp word [r11 + 0xe], 0x29
lea r10, [r11 + 0xe]
je 0x14005b61a
xor r11d, r11d
mov qword [rbp + 0x67], r10
cmp word [r10], 0x3e
mov esi, r11d
mov ebx, r11d
mov rax, r10
jne 0x14005b495
add r10, 2
lea esi, [r9 + 1]
mov qword [rbp + 0x67], r10
mov rax, r10
cmp word [r10], 0x3d
jne 0x14005c0e8
lea r10, [rax + 2]
mov qword [rbp + 0x67], r10
movzx eax, word [r10]
sub ax, 0x30
cmp ax, 9
ja 0x14005c0e8
mov edx, r11d
mov edi, r11d
mov dword [rsp + 0x44], edx
mov r9d, r11d
cmp r10, r14
jae 0x14005c1ff
movzx eax, word [r10]
sub ax, 0x30
cmp ax, 9
ja 0x14005c1ff
movzx r8d, word [r10]
lea eax, [r8 - 0x30]
cmp ax, 9
ja 0x14005b512
lea edi, [rdi + rdi*4]
movzx eax, r8w
lea edi, [rdi - 0x18]
add r10, 2
lea edi, [rax + rdi*2]
cmp edi, 0x3e8
ja 0x14005b601
cmp r10, r14
jb 0x14005b4e2
mov r9d, 1
mov qword [rbp + 0x67], r10
test r9d, r9d
je 0x14005c1ff
cmp r10, r14
jae 0x14005c0e8
cmp word [r10], 0x2e
jne 0x14005b5e4
lea rcx, [r10 + 2]
mov qword [rbp + 0x67], rcx
mov r10, rcx
cmp rcx, r14
jae 0x14005c0e8
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, 9
ja 0x14005c0e8
xor r8d, r8d
mov r9d, r11d
mov edx, r8d
mov dword [rsp + 0x44], edx
cmp rcx, r14
jae 0x14005b5bd
movzx eax, word [rcx]
sub ax, 0x30
cmp ax, 9
ja 0x14005b5bd
nop dword [rax]
movzx r8d, word [r10]
lea eax, [r8 - 0x30]
cmp ax, 9
ja 0x14005b5ad
lea r9d, [r9 + r9*4]
movzx eax, r8w
lea r9d, [r9 - 0x18]
add r10, 2
lea r9d, [rax + r9*2]
cmp r9d, 0x63
ja 0x14005b60f
cmp r10, r14
jb 0x14005b580
mov r11d, 1
mov ebx, r9d
mov qword [rbp + 0x67], r10
mov rcx, r10
test r11d, r11d
je 0x14005c1ff
cmp ebx, 0xa
jge 0x14005b5d0
lea ebx, [rbx + rbx*4]
add ebx, ebx
cmp rcx, r14
jae 0x14005c0e8
cmp word [r10], 0x29
jne 0x14005c0e8
mov dword [r13], 0x80150000
mov dword [r13 + 4], esi
mov dword [r13 + 8], edi
add r13, 0xc
mov dword [r13], ebx
jmp 0x14005b7ad
mov edx, 0xb3
mov dword [rsp + 0x44], edx
jmp 0x14005b518
mov edx, 0xb3
mov dword [rsp + 0x44], edx
jmp 0x14005b5b3
movzx ecx, word [r11]
xor eax, eax
mov edi, eax
cmp cx, 0x52
jne 0x14005b647
cmp rbx, 1
jle 0x14005b647
cmp word [r11 + 2], 0x26
lea rax, [r11 + 2]
jne 0x14005b647
mov esi, 1
mov qword [rbp + 0x67], rax
mov edi, esi
jmp 0x14005b66c
mov esi, 1
cmp cx, 0x3c
jne 0x14005b657
lea ebx, [rsi + 0x3d]
jmp 0x14005b671
cmp cx, 0x27
jne 0x14005b664
mov ebx, 0x27
jmp 0x14005b671
sub r11, 2
mov qword [rbp + 0x67], r11
mov ebx, 0x29
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x71]
lea rax, [rbp - 0x75]
mov r8d, ebx
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x39]
mov rdx, r14
mov qword [rsp + 0x20], rax
call fcn.140059600
test eax, eax
je 0x14005c0a2
test edi, edi
je 0x14005b6c3
mov dword [r13], 0x80130000
sub qword [rbp + 0x67], 2
jmp 0x14005b77c
cmp ebx, 0x29
jne 0x14005b774
mov r11d, dword [rbp - 0x75]
mov r10, qword [rbp - 0x39]
cmp r11d, 6
jne 0x14005b719
mov r9d, r11d
lea rdx, str.DEFINE
mov r8, r10
nop word [rax + rax]
movsx eax, byte [rdx]
inc rdx
movzx ecx, word [r8]
lea r8, [r8 + 2]
cmp cx, ax
jne 0x14005b719
sub r9, 1
jne 0x14005b6f0
mov eax, 0x80100000
mov dword [r13], eax
sub qword [rbp + 0x67], 2
jmp 0x14005b77c
mov dword [rbp - 0x79], esi
mov eax, esi
cmp r11d, 1
jle 0x14005b753
mov ecx, esi
nop word [rax + rax]
movsxd rax, ecx
movzx edx, word [r10 + rax*2]
mov eax, ecx
cmp dx, 0x30
jb 0x14005b753
cmp dx, 0x39
ja 0x14005b753
lea eax, [rcx + 1]
mov dword [rbp - 0x79], eax
mov ecx, eax
cmp eax, r11d
jl 0x14005b730
cmp word [r10], 0x52
jne 0x14005b764
cmp eax, r11d
mov eax, 0x80140000
jge 0x14005b769
mov eax, 0x80110000
mov dword [r13], eax
sub qword [rbp + 0x67], 2
jmp 0x14005b77c
mov dword [r13], 0x80110000
mov eax, dword [r13]
add r13, 4
cmp eax, 0x80100000
je 0x14005b796
mov eax, dword [rbp - 0x75]
mov dword [r13], eax
add r13, 4
mov rax, qword [rbp - 0x71]
shr rax, 0x20
mov dword [r13], eax
add r13, 4
mov eax, dword [rbp - 0x71]
mov dword [r13], eax
mov r10, qword [rbp + 0x67]
cmp r10, r14
jae 0x14005c0f2
cmp word [r10], 0x29
jne 0x14005c0f2
mov r11d, dword [rsp + 0x40]
add r10, 2
movzx r9d, word [rbp + 0x6f]
add r13, 4
mov rdi, qword [rsp + 0x50]
mov r8d, 0xfc00
mov qword [rbp + 0x67], r10
jmp 0x1400599b0
movzx r9d, word [rbp + 0x6f]
mov dword [r13], 0x80020000
add r13, 4
inc r9w
mov word [rbp + 0x6f], r9w
mov r10, qword [rbp + 0x67]
mov r8d, 0xfc00
mov r11d, dword [rsp + 0x40]
add r10, 2
mov rdi, qword [rsp + 0x50]
mov qword [rbp + 0x67], r10
jmp 0x1400599b0
mov dword [r13], 0x80220000
mov r10, qword [rbp + 0x67]
add r10, 2
jmp 0x14005b8c4
mov dword [r13], 0x80230000
mov r10, qword [rbp + 0x67]
add r10, 2
jmp 0x14005b8c4
mov rax, r14
sub rax, r10
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x14005b046
movzx ecx, word [r10 + 2]
cmp cx, 0x3d
je 0x14005b876
cmp cx, 0x21
jne 0x14005b046
cmp cx, 0x3d
mov eax, 0x80250000
mov ecx, 0x80240000
cmove eax, ecx
mov ecx, 1
mov dword [r13], eax
mov rax, qword [rbp + 0x77]
mov dword [rax], ecx
mov rax, qword [rbp + 0x67]
sub rax, qword [r15 + 0x38]
sar rax, 1
sub rax, 2
mov qword [rbp - 0x71], rax
shr rax, 0x20
mov dword [r13 + 4], eax
add r13, 8
mov eax, dword [rbp - 0x71]
mov dword [r13], eax
mov r10, qword [rbp + 0x67]
add r10, 4
movzx r9d, word [rbp + 0x6f]
add r13, 4
inc r9w
mov qword [rbp + 0x67], r10
mov word [rbp + 0x6f], r9w
test r8d, r8d
jle 0x14005b921
mov rdi, qword [rbp - 0x49]
test rdi, rdi
jne 0x14005b8f2
mov rdi, qword [r15 + 0x28]
mov qword [rbp - 0x49], rdi
jmp 0x14005b904
add rdi, 0xc
mov qword [rbp - 0x49], rdi
cmp rdi, qword [rbp - 1]
jae 0x14005c15c
mov eax, 2
mov word [rdi], r9w
mov word [rdi + 6], ax
mov eax, dword [rsp + 0x58]
and eax, 0x10020c0
mov dword [rdi + 8], eax
mov r10, qword [rbp + 0x67]
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
jmp 0x1400599b0
mov r8d, 0x27
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x44]
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x71]
lea rax, [rbp - 0x75]
mov rdx, r14
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x39]
mov qword [rsp + 0x20], rax
call fcn.140059600
test eax, eax
je 0x14005c0a2
inc dword [r15 + 0xd4]
mov eax, dword [r15 + 0xd4]
movzx r9d, word [rbp + 0x6f]
or eax, 0x80080000
mov dword [r13], eax
inc r9w
movzx edx, word [r15 + 0xb0]
add r13, 4
mov eax, 0x2710
mov word [rbp + 0x6f], r9w
cmp dx, ax
jae 0x14005c132
mov r11d, dword [rbp - 0x75]
movzx eax, word [r15 + 0xb2]
lea ecx, [r11 + 2]
cmp ecx, eax
jbe 0x14005b9d4
lea eax, [r11 + 2]
mov word [r15 + 0xb2], ax
mov rdi, qword [rbp + 0x7f]
xor eax, eax
mov dword [rbp - 0x79], eax
mov r15d, eax
mov ebx, eax
mov r10, qword [rdi + 0xc0]
cmp ax, dx
jae 0x14005ba8a
movzx eax, word [r10 + 0xc]
cmp r11d, eax
jne 0x14005ba5d
mov rdx, qword [r10]
mov r8, qword [rbp - 0x39]
mov r9d, r11d
test r11d, r11d
je 0x14005ba2a
nop dword [rax + rax]
movzx ecx, word [r8]
lea r8, [r8 + 2]
movzx eax, word [rdx]
lea rdx, [rdx + 2]
cmp cx, ax
jne 0x14005ba5d
sub r9, 1
jne 0x14005ba10
mov eax, dword [rdi + 0xd4]
cmp dword [r10 + 8], eax
je 0x14005ba85
test byte [rsp + 0x58], 0x40
je 0x14005c0fc
mov eax, 1
mov word [r10 + 0xe], ax
mov r15d, eax
mov ebx, dword [rbp - 0x79]
mov r11d, dword [rbp - 0x75]
mov dword [rdi + 0x134], eax
jmp 0x14005ba6d
mov eax, dword [rdi + 0xd4]
cmp dword [r10 + 8], eax
je 0x14005c10e
movzx eax, word [rdi + 0xb0]
inc ebx
add r10, 0x10
mov dword [rbp - 0x79], ebx
cmp ebx, eax
jl 0x14005b9f2
movzx r9d, word [rbp + 0x6f]
movzx eax, word [rdi + 0xb0]
cmp ebx, eax
jge 0x14005bab2
mov r10, qword [rbp + 0x67]
mov r8d, 0xfc00
mov r15, qword [rbp + 0x7f]
mov r11d, dword [rsp + 0x40]
mov rdi, qword [rsp + 0x50]
jmp 0x1400599b0
mov ecx, dword [rdi + 0xc8]
cmp eax, ecx
jb 0x14005bb54
mov rdi, qword [rdi]
lea r14d, [rcx + rcx]
mov esi, r14d
shl rsi, 4
mov rbx, qword [rdi]
mov rcx, rbx
call qword [sym.ProcessHacker.exe_PhDeleteCallback]
mov rdx, qword [rdi + 0x10]
mov rcx, rsi
call rbx
mov rsi, rax
test rax, rax
je 0x14005c120
mov rdi, qword [rbp + 0x7f]
mov rcx, rax
mov r8d, dword [rdi + 0xc8]
mov rdx, qword [rdi + 0xc0]
shl r8, 4
call fcn.14010e700
cmp dword [rdi + 0xc8], 0x14
jbe 0x14005bb3b
mov rbx, qword [rdi]
mov rdi, qword [rbx + 8]
mov rcx, rdi
call qword [sym.ProcessHacker.exe_PhDeleteCallback]
mov rcx, qword [rbp + 0x7f]
mov rdx, qword [rbx + 0x10]
mov rcx, qword [rcx + 0xc0]
call rdi
mov rdi, qword [rbp + 0x7f]
movzx eax, word [rdi + 0xb0]
mov dword [rdi + 0xc8], r14d
mov r14, qword [rbp + 7]
mov qword [rdi + 0xc0], rsi
mov rcx, qword [rdi + 0xc0]
movzx edx, ax
mov rax, qword [rbp - 0x39]
add rdx, rdx
mov qword [rcx + rdx*8], rax
movzx edx, word [rdi + 0xb0]
movzx eax, word [rbp - 0x75]
add rdx, rdx
mov rcx, qword [rdi + 0xc0]
mov word [rcx + rdx*8 + 0xc], ax
movzx edx, word [rdi + 0xb0]
mov rcx, qword [rdi + 0xc0]
add rdx, rdx
mov eax, dword [rdi + 0xd4]
mov dword [rcx + rdx*8 + 8], eax
movzx ecx, word [rdi + 0xb0]
mov rax, qword [rdi + 0xc0]
add rcx, rcx
mov word [rax + rcx*8 + 0xe], r15w
mov r15, qword [rbp + 0x7f]
inc word [r15 + 0xb0]
jmp case.default.0x14005a2a1
cmp edx, 0x2d
jne 0x14005bca5
mov rax, r14
sub rax, r10
and rax, 0xfffffffffffffffe
cmp rax, 2
jle 0x14005bca5
movzx eax, word [r10 + 2]
sub ax, 0x30
cmp ax, 9
ja 0x14005bca5
sub dx, 0x30
cmp dx, 9
ja 0x14005bc06
or r8d, 0xffffffff
jmp 0x14005bc0d
mov r8d, dword [r15 + 0xd4]
lea rax, [rsp + 0x44]
mov r9d, 0xffff
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x67]
lea rax, [rbp - 0x79]
mov rdx, r14
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa1
call fcn.140058580
test eax, eax
je 0x14005c0a2
mov eax, dword [rbp - 0x79]
mov r10, qword [rbp + 0x67]
test eax, eax
js 0x14005c140
cmp r10, r14
jae 0x14005c1fa
cmp word [r10], 0x29
jne 0x14005c1fa
mov r11d, dword [rsp + 0x40]
or eax, 0x80200000
mov dword [r13], eax
mov rax, qword [rbp + 0x67]
mov rcx, rax
add rax, 2
sub rcx, qword [r15 + 0x38]
sar rcx, 1
mov qword [rbp - 0x71], rcx
mov qword [rbp + 0x67], rax
shr rcx, 0x20
mov dword [r13 + 4], ecx
mov eax, dword [rbp - 0x71]
mov dword [r13 + 8], eax
add r13, 0xc
jmp 0x140059ab6
movzx r9d, word [rbp + 0x6f]
mov rdi, qword [rbp - 0x49]
inc r9w
mov word [rbp + 0x6f], r9w
test rdi, rdi
jne 0x14005bcc6
mov rdi, qword [r15 + 0x28]
mov qword [rbp - 0x49], rdi
jmp 0x14005bcd8
add rdi, 0xc
mov qword [rbp - 0x49], rdi
cmp rdi, qword [rbp - 1]
jae 0x14005c15c
mov ebx, dword [rsp + 0x58]
xor edx, edx
mov eax, ebx
mov word [rdi], r9w
and eax, 0x10020c0
mov word [rdi + 6], dx
mov dword [rdi + 8], eax
mov rax, qword [rbp + 0x67]
cmp word [rax], 0x7c
jne 0x14005bd37
movzx eax, word [r15 + 0xd4]
mov word [rdi + 2], ax
movzx eax, word [r15 + 0xd4]
mov word [rdi + 4], ax
mov eax, 1
mov word [rdi + 6], ax
or dword [r15 + 0xd0], 0x200000
mov dword [r13], 0x801a0000
add r13, 4
jmp 0x14005b805
mov dword [rdi + 2], edx
mov r8d, edx
mov r10, qword [rbp + 0x67]
mov r9d, edx
mov dword [rbp - 0x61], edx
mov dword [rsp + 0x58], edx
lea rdx, [rsp + 0x58]
cmp r10, r14
jae 0x14005be14
lea r8, [0x140000000]
movzx eax, word [r10]
cmp ax, 0x29
je 0x14005be0b
cmp ax, 0x3a
je 0x14005be0b
add r10, 2
movzx ecx, ax
sub ecx, 0x2d
mov qword [rbp + 0x67], r10
cmp ecx, 0x4b
ja case.0x14005bda6.53
movsxd rax, ecx
movzx eax, byte [r8 + rax + 0x5c3e0]
mov ecx, dword [r8 + rax*4 + 0x5c3bc]
add rcx, r8
jmp rcx
lea rdx, [rbp - 0x61]
jmp 0x14005be02
or dword [rdx], 0x40
or dword [r15 + 0xd0], 0x400
jmp 0x14005be02
or dword [rdx], 8
jmp 0x14005be02
or dword [rdx], 0x400
jmp 0x14005be02
or dword [rdx], 0x2000
jmp 0x14005be02
or dword [rdx], 0x20
jmp 0x14005be02
or dword [rdx], 0x40000
jmp 0x14005be02
mov eax, dword [rdx]
bts eax, 7
mov dword [rdx], eax
cmp r10, r14
jae 0x14005be0b
cmp word [r10], 0x78
jne 0x14005be02
bts eax, 0x18
add r10, 2
mov dword [rdx], eax
mov qword [rbp + 0x67], r10
cmp r10, r14
jb 0x14005bd60
mov r9d, dword [rsp + 0x58]
mov r8d, dword [rbp - 0x61]
mov eax, r9d
and eax, 0x1000080
cmp eax, 0x80
je 0x14005be28
test r8b, r8b
jns 0x14005be2d
bts r8d, 0x18
or ebx, r9d
mov eax, r8d
not eax
and ebx, eax
mov dword [rsp + 0x58], ebx
cmp r10, r14
jae 0x14005c1fa
movzx eax, word [r10]
add r10, 2
mov qword [rbp + 0x67], r10
cmp ax, 0x29
jne 0x14005be75
mov word [rbp + 0x6f], si
cmp rdi, qword [r15 + 0x28]
jbe 0x14005be70
cmp word [rdi - 0xc], si
lea rax, [rdi - 0xc]
jne 0x14005be70
mov qword [rbp - 0x49], rax
jmp 0x14005be85
mov word [rdi], si
jmp 0x14005be81
mov dword [r13], 0x801a0000
add r13, 4
mov r10, qword [rbp + 0x67]
test r9d, r9d
jne 0x14005bea8
mov r11d, dword [rsp + 0x40]
test r8d, r8d
movzx r9d, word [rbp + 0x6f]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
je 0x1400599b0
mov dword [r13], 0x801b0000
mov dword [r13 + 4], ebx
add r13, 8
jmp case.default.0x14005a2a1
mov rdi, qword [rbp - 0x49]
movzx r9d, word [rbp + 0x6f]
test rdi, rdi
je 0x14005bef5
cmp word [rdi], r9w
jne 0x14005bef5
test byte [rdi + 6], 1
je 0x14005bef5
movzx eax, word [rdi + 4]
mov ecx, dword [r15 + 0xd4]
cmp ecx, eax
jbe 0x14005beea
mov word [rdi + 4], cx
movzx eax, word [rdi + 2]
mov dword [r15 + 0xd4], eax
mov r11d, dword [rsp + 0x40]
mov r8d, 0xfc00
mov rdi, qword [rsp + 0x50]
mov dword [r13], 0x80010000
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599b0
mov rdi, qword [rbp - 0x49]
mov eax, 1
movzx r9d, word [rbp + 0x6f]
mov r12d, eax
test rdi, rdi
je 0x14005bf8b
cmp word [rdi], r9w
jne 0x14005bf8b
mov edx, dword [rsp + 0x58]
movzx eax, word [rdi + 6]
and edx, 0xfeffdf3f
or edx, dword [rdi + 8]
mov dword [rsp + 0x58], edx
test r12b, al
je 0x14005bf68
movzx ecx, word [rdi + 4]
cmp ecx, dword [r15 + 0xd4]
jbe 0x14005bf68
mov dword [r15 + 0xd4], ecx
movzx eax, word [rdi + 6]
movzx r12d, ax
not r12w
shr r12d, 1
and r12d, 1
cmp rdi, qword [r15 + 0x28]
jne 0x14005bf83
mov qword [rbp - 0x49], r11
jmp 0x14005bf8b
sub rdi, 0xc
mov qword [rbp - 0x49], rdi
test r9w, r9w
je 0x14005c166
mov r11d, dword [rsp + 0x40]
mov eax, 0xffff
mov rdi, qword [rsp + 0x50]
add r9w, ax
mov dword [r13], 0x80190000
mov r8d, 0xfc00
mov r10, qword [rbp + 0x67]
add r13, 4
mov word [rbp + 0x6f], r9w
jmp 0x1400599b0
mov r11d, dword [rsp + 0x40]
mov r12d, 1
movzx r9d, word [rbp + 0x6f]
mov dword [r13], edi
add r13, 4
mov r10, qword [rbp + 0x67]
jmp 0x1400599a0
lea r10, [r9 - 2]
mov edx, 0x80
jmp 0x14005c1ff
mov edx, 0x8c
jmp 0x14005c1ff
sub r10, 2
mov edx, 0xb0
jmp 0x14005c1ff
mov edx, 0x76
jmp 0x14005c1ff
sub r10, 2
mov edx, 0x80
jmp 0x14005c1ff
mov edx, 0x6d
sub r10, 2
jmp 0x14005c1ff
movzx eax, word [r10]
xor ecx, ecx
sub r10, 2
mov edx, ecx
cmp ax, 0x3a
setne dl
add edx, 0x70
jmp 0x14005c1ff
mov edx, 0x82
mov r10, qword [rbp + 0x67]
jmp 0x14005c1ff
mov edx, 0x71
sub r10, 2
jmp 0x14005c1ff
mov edx, 0x6c
sub r10, 2
jmp 0x14005c1ff
mov edx, 0x6a
jmp 0x14005c1ff
mov edx, 0xa6
jmp 0x14005c1ff
mov edx, 0x9f
jmp 0x14005c1ff
mov edx, 0x8d
jmp 0x14005c1ff
mov r10, qword [rbp + 0x67]
mov edx, dword [rsp + 0x44]
jmp 0x14005c1ff
mov edx, 0xac
jmp 0x14005c1ff
mov edx, 0xb5
mov r10, r8
jmp 0x14005c1ff
mov edx, 0x8a
jmp 0x14005c1ff
mov edx, 0x8b
jmp 0x14005c1ff
mov r10, qword [rbp + 0x67]
mov edx, 0x73
jmp 0x14005c1ff
mov edx, 0xb3
jmp 0x14005c1ff
mov edx, 0x7c
jmp 0x14005c1ff
mov r10, qword [rbp + 0x67]
mov edx, 0x8f
mov r15, qword [rbp + 0x7f]
jmp 0x14005c1ff
mov r10, qword [rbp + 0x67]
mov edx, 0xa5
mov r15, qword [rbp + 0x7f]
jmp 0x14005c1ff
mov r10, qword [rbp + 0x67]
mov edx, 0x79
mov r15, qword [rbp + 0x7f]
jmp 0x14005c1ff
mov r10, qword [rbp + 0x67]
mov edx, 0x95
jmp 0x14005c1ff
mov edx, 0x73
sub r10, 2
jmp 0x14005c1ff
mov edx, 0x6f
add r10, 0xfffffffffffffffe
jmp 0x14005c1ff
mov edx, 0xb8
jmp 0x14005c1ff
mov edx, 0x7a
sub r10, 2
jmp 0x14005c1ff
mov edx, 0x77
jmp 0x14005c1ff
cmp dword [rbp - 0x51], 0
jne 0x14005afba
mov ebx, dword [rbp - 0x29]
mov r9, r13
mov qword [rsp + 0x20], r15
mov r8d, ebx
lea rdx, [rbp - 0x31]
mov rcx, r10
call fcn.140059740
mov rcx, rax
mov rax, qword [r15]
mov edx, dword [rax + 0x40]
test dl, 8
je 0x14005c1bf
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80160000
jmp 0x14005c1d1
test dl, 4
je 0x14005c1d5
mov dword [rcx], 0x80190000
mov dword [rcx + 4], 0x80180005
add rcx, 8
cmp rcx, rdi
jb 0x14005c1e5
mov r10, qword [rbp + 0x67]
mov edx, 0xa3
jmp 0x14005c1ff
cmp word [rbp + 0x6f], 0
mov dword [rcx], 0x80000000
jne 0x14005c1f6
xor eax, eax
jmp 0x14005c20f
mov r10, qword [rbp + 0x67]
mov edx, 0x72
sub r10, qword [r15 + 0x38]
mov eax, edx
sar r10, 1
mov qword [r15 + 0xa8], r10
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret