Function at 0x44b460
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xf8
mov byte [rcx + 0x13], 0
mov r15, rcx
mov qword [rsp + 0x148], rdx
movzx edx, word [rdx + 0x18]
mov byte [rcx + 0x1b8], 0
mov byte [rcx + 0xc8], 1
mov qword [rsp + 0x150], r8
mov eax, edx
mov dword [rsp + 0x158], r9d
shr ax, 6
mov ecx, eax
and cx, 0x84
cmp cx, 4
je 0x44b650
test al, 4
jne 0x44b5f0
mov rbx, qword [rsp + 0x148]
mov rbx, qword [rbx + 0x20]
mov rdi, rbx
mov qword [rsp + 0x58], rbx
xor ebx, ebx
test byte [rdi + 0x1c], 1
jne 0x44b700
test al, 0x80
je 0x44b6b5
mov rdi, qword [rsp + 0x148]
or eax, 0x20
shl eax, 6
movzx edi, word [rdi + 0x18]
mov edx, edi
mov word [rsp + 0x48], di
mov rdi, qword [rsp + 0x148]
and edx, 0x3f
or eax, edx
mov word [rdi + 0x18], ax
mov rax, qword [r15 + 0x418]
test rax, rax
je 0x44b535
mov r8, qword [rsp + 0x148]
mov rcx, r15
mov edx, dword [rsp + 0x158]
call rax
mov rdi, qword [rsp + 0x58]
movzx eax, byte [rdi + 0x1c]
mov byte [rsp + 0x48], al
or eax, 8
cmp word [rdi + 0x18], 0
mov byte [rdi + 0x1c], al
je 0x44b7f2
test rbx, rbx
je 0x44b8d1
cmp byte [r15 + 0x10], 0
je 0x44b8e3
lea r12, [r15 + 0x88]
nop
mov rdi, qword [rbx + 8]
mov rcx, r12
mov rsi, qword [rbx + 0x10]
mov rbp, qword [rbx]
mov qword [rbx], 0
call fcn.0044a240
mov dword [rax + 0x30], 0
sub rsi, rdi
mov qword [rax + 0x28], 0
sar rsi, 3
mov qword [rax + 0x20], rbx
mov edx, esi
mov qword [rax + 0x10], rdi
lea rdx, [rdi + rdx*8]
mov qword [rax + 0x18], rdx
cmp byte [r15 + 0x495], 0
jne 0x44b5c2
add dword [0x005e0580], esi
test rbp, rbp
mov rbx, rbp
jne 0x44b570
mov byte [r15 + 0xc8], 0
mov eax, 2
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [r15 + 0xc0]
mov byte [r15 + 0xc8], 0
test byte [rax + 0x19], 1
je 0x44b630
mov r9d, dword [r15 + 0xb8]
mov r8d, dword [rsp + 0x158]
mov rcx, r15
mov rdx, qword [rsp + 0x148]
call fcn.0044ade0
jmp 0x44b5d7
mov rax, qword [rax + 0x20]
test byte [rax + 0x1c], 1
je 0x44b605
mov rax, qword [r15 + 0x1c0]
mov eax, dword [rax - 0x20]
mov dword [rsp + 0x158], eax
mov r9d, eax
jmp 0x44b60c
mov rbx, qword [rsp + 0x148]
or al, 0x80
and edx, 0x3f
shl eax, 6
or eax, edx
mov word [rbx + 0x18], ax
mov rax, qword [r15 + 0x428]
test rax, rax
je 0x44b67e
mov rdx, rbx
mov rcx, r15
call rax
test al, al
jne 0x44b69b
mov rax, qword [r15 + 0x400]
test rax, rax
je 0x44b69b
mov edx, dword [r15 + 0x30]
mov rcx, r15
mov r8, qword [rsp + 0x148]
call rax
mov rax, qword [rsp + 0x148]
movzx eax, word [rax + 0x18]
mov word [rsp + 0x48], ax
shr ax, 6
jmp 0x44b4bb
mov rdi, qword [rsp + 0x148]
or al, 0xa0
shl eax, 6
movzx edi, word [rdi + 0x18]
mov edx, edi
mov word [rsp + 0x48], di
mov rdi, qword [rsp + 0x148]
and edx, 0x3f
or eax, edx
mov word [rdi + 0x18], ax
mov rax, qword [r15 + 0x400]
test rax, rax
je 0x44b515
mov edx, dword [r15 + 0x30]
mov r8, rdi
mov rcx, r15
call rax
jmp 0x44b515
add byte [r15 + 0x18], 1
mov byte [r15 + 0x19], 1
add dword [r15 + 0x1f4], 1
mov rcx, r15
call fcn.0044d8e0
movzx edx, byte [rax + 4]
cmp dl, 0x53
jne 0x44b745
test rbx, rbx
je 0x44b740
test byte [rbx + 8], 1
jne 0x44b712
cmp qword [rax + 0x10], 0
cmove rbx, rax
jmp 0x44b712
mov rbx, rax
jmp 0x44b712
cmp dl, 0x14
je 0x44b940
cmp dl, 0x16
jne 0x44b75f
lea rdx, [r15 + 0x2b8]
cmp rax, rdx
jne 0x44b784
mov edx, 1
mov rcx, r15
call fcn.0044b190
test rbx, rbx
je 0x44b784
mov r9d, 1
mov r8, rbx
xor edx, edx
mov rcx, r15
call fcn.0044ad70
sub dword [r15 + 0x1f4], 1
mov byte [r15 + 0x19], 0
sub byte [r15 + 0x18], 1
cmp byte [r15 + 0x482], 0
je 0x44b7e3
mov rax, qword [rsp + 0x148]
mov rax, qword [rax + 0x20]
test byte [rax + 0x1c], 4
jne 0x44b7e3
xor ebx, ebx
mov rax, qword [rsp + 0x148]
lea r8, str.function_like_macro___s__must_be_used_with_arguments_in_traditional_C
mov edx, 6
mov rcx, r15
mov r9, qword [rax]
call fcn.0043bbd0
test rbx, rbx
je 0x44b7e3
mov rdx, rbx
mov rcx, r15
call fcn.00444a20
mov byte [r15 + 0xc8], 0
xor eax, eax
jmp 0x44b5d7
test al, 0x20
mov rsi, rdi
mov edi, dword [rdi + 0x14]
jne 0x44cbef
cmp byte [r15 + 0x495], 0
mov rsi, qword [rsi + 8]
je 0x44b920
mov ebp, edi
mov rcx, rbp
shl rcx, 4
call fcn.00482890
lea rdx, [rbp*8]
mov rcx, r15
mov qword [rsp + 0x48], rax
call fcn.00444a40
mov rcx, qword [r15 + 0x28]
mov r9d, edi
mov r8d, dword [rsp + 0x158]
mov rbp, rax
mov rdx, qword [rsp + 0x148]
call fcn.00447fd0
test edi, edi
mov r13, rax
je 0x44b89d
lea r14, [rsi + 0x20]
mov r8, rsi
xor r12d, r12d
mov rsi, qword [rsp + 0x48]
jmp 0x44b874
add r14, 0x20
mov r9d, dword [r8]
mov rdx, rsi
mov dword [rsp + 0x30], r12d
mov rcx, rbp
mov qword [rsp + 0x28], r13
add r12d, 1
mov dword [rsp + 0x20], r9d
call fcn.0044a3a0
cmp r12d, edi
mov r8, r14
jne 0x44b870
mov dword [rsp + 0x28], edi
mov rax, qword [rbp + 8]
mov r8, rbp
mov rcx, r15
mov r9, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0x20], rax
call fcn.0044a2b0
add dword [0x005e0580], edi
test rbx, rbx
jne 0x44b55c
mov eax, 1
mov byte [r15 + 0xc8], 0
jmp 0x44b5d7
mov rcx, r15
call fcn.00443f90
xor ecx, ecx
mov r9d, 1
xor edx, edx
mov r8, rax
mov byte [rax + 4], 0x53
mov rax, qword [rsp + 0x150]
mov word [r8 + 8], cx
mov rcx, r15
mov qword [r8 + 0x10], rax
call fcn.0044ad70
jmp 0x44b567
mov rdx, qword [rsp + 0x148]
mov r9d, edi
mov r8, rsi
mov rcx, r15
call fcn.0044ad70
jmp 0x44b8c2
movzx eax, byte [r15 + 0x495]
mov byte [r15 + 0x19], 2
mov byte [rsp + 0x80], al
mov rax, qword [rsp + 0x148]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x60], rax
movzx eax, word [rax + 0x18]
test ax, ax
je 0x44cbd0
imul rdx, rax, 0x1c0
lea rbx, [rax + rax*2]
shl rbx, 4
mov rcx, r15
call fcn.00444a40
mov r8, rbx
xor edx, edx
mov rsi, qword [rax + 8]
mov rdi, rax
mov qword [rsp + 0x88], rax
mov r12, rdi
mov rcx, rsi
mov qword [rsp + 0x98], rsi
call sub.msvcrt.dll_memset
cmp byte [rsp + 0x80], 0
lea rax, [rsi + rbx]
mov dword [rsp + 0x6c], 0
mov qword [rdi + 0x10], rax
lea rdi, [rsp + 0xec]
mov qword [rsp + 0x48], rdi
setne byte [rsp + 0x50]
xor ebx, ebx
nop dword [rax]
mov edi, dword [rsp + 0x6c]
mov qword [rsi], rax
add edi, 1
cmp byte [rsp + 0x80], 0
mov dword [rsp + 0x68], edi
jne 0x44bd60
mov r13d, 0x32
xor edi, edi
xor ebp, ebp
mov r14d, 2
jmp 0x44ba24
test rax, rax
je 0x4a067e
mov qword [rax + rdx*8], r8
add edi, 1
lea r14d, [rdi + 2]
mov edx, r14d
lea rax, [rax + rdx*8]
cmp qword [r12 + 0x18], rax
jb 0x44bb00
cmp r14d, r13d
jbe 0x44ba46
cmp byte [rsp + 0x50], 0
jne 0x44bb20
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.0044d390
mov r8, rax
movzx eax, byte [rax + 4]
cmp al, 0x53
je 0x44bae0
cmp al, 0x14
je 0x44bad0
cmp al, 0x15
je 0x44bb40
cmp al, 0x13
je 0x44bb51
cmp al, 0x16
je 0x44bd80
cmp al, 0x25
je 0x44bc20
cmp al, 0x51
je 0x44bc33
mov rax, qword [rsi]
cmp byte [r15 + 0x495], 0
mov edx, edi
je 0x44ba10
test rax, rax
je 0x4a067e
mov rcx, qword [rsi + 0x20]
mov r9d, dword [rsp + 0xec]
mov qword [rax + rdx*8], r8
lea rcx, [rcx + rdx*4]
test rcx, rcx
je 0x44ba1d
mov dword [rcx], r9d
jmp 0x44ba1d
add ebp, 1
mov rax, qword [rsi]
jmp 0x44ba91
test edi, edi
mov rax, qword [rsi]
jne 0x44ba91
mov edx, r14d
lea rax, [rax + rdx*8]
cmp qword [r12 + 0x18], rax
jae 0x44ba36
nop dword [rax]
mov rdx, r12
mov r8d, 0x1f40
mov rcx, r15
call fcn.00444ae0
mov r12, rax
mov rax, qword [rax + 0x10]
mov qword [rsi], rax
jmp 0x44ba36
mov rcx, qword [rsi + 0x20]
lea edx, [r13 + 0x3e8]
mov r13, rdx
shl rdx, 2
call fcn.00482910
mov qword [rsi + 0x20], rax
jmp 0x44ba46
lea edx, [rbp - 1]
test ebp, ebp
mov rax, qword [rsi]
je 0x44bb75
mov ebp, edx
jmp 0x44ba91
test ebp, ebp
mov rax, qword [rsi]
jne 0x44ba91
mov rcx, qword [rsp + 0x60]
test byte [rcx + 0x1c], 2
je 0x44bb75
movzx edx, word [rcx + 0x18]
cmp dword [rsp + 0x68], edx
je 0x44ba91
test edi, edi
je 0x44cbdf
lea ecx, [rdi - 1]
mov rdx, rcx
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 4], 0x53
je 0x44bbaa
jmp 0x44cbe6
lea r9d, [rdx - 1]
mov rcx, r9
mov r9, qword [rax + r9*8]
cmp byte [r9 + 4], 0x53
jne 0x44bd50
mov edx, ecx
test edx, edx
jne 0x44bb92
xor ecx, ecx
mov dword [rsi + 0x18], edx
cmp byte [r15 + 0x495], 0
lea r9, [r15 + 0x2b8]
jne 0x44bd20
test rax, rax
je 0x4a0688
mov qword [rax + rcx*8], r9
mov rdi, qword [rsp + 0x60]
movzx ecx, word [rdi + 0x18]
mov edi, dword [rsp + 0x68]
mov r9d, ecx
cmp edi, ecx
ja 0x44bbfd
lea edx, [rdx + 1]
lea rax, [rax + rdx*8]
mov qword [r12 + 0x10], rax
lea rax, [rsi + 0x30]
cmovne rsi, rax
movzx eax, byte [r8 + 4]
lea edx, [rax - 0x15]
cmp dl, 1
jbe 0x44bd90
mov edi, dword [rsp + 0x68]
mov rax, qword [r12 + 0x10]
mov dword [rsp + 0x6c], edi
jmp 0x44b9e0
test byte [r8 + 8], 0x40
mov rax, qword [rsi]
je 0x44ba91
jmp 0x44bb75
mov rcx, r15
mov qword [rsp + 0x70], r8
call fcn.00443f90
mov r8, qword [rsp + 0x70]
mov dword [rsp + 0x78], edi
mov rdi, rbx
mov qword [rsp + 0x70], rsi
mov rbx, qword [rsp + 0x48]
mov rsi, rax
mov rdx, qword [r8]
mov qword [rax], rdx
mov rdx, qword [r8 + 8]
mov qword [rax + 8], rdx
mov rdx, qword [r8 + 0x10]
mov qword [rax + 0x10], rdx
mov rdx, qword [r8 + 0x18]
mov qword [rax + 0x18], rdx
jmp 0x44bccf
mov rdx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
sub rax, rdx
cmp rax, 7
ja 0x44bcaa
sub rdx, qword [rdi + 8]
mov rcx, r15
add rdx, rdx
call fcn.00444a40
mov rdx, qword [rax + 0x10]
mov qword [rax], rdi
mov rdi, rax
mov qword [rdx], rsi
add rdx, 8
cmp byte [rsi + 4], 0x52
mov qword [rdi + 0x10], rdx
je 0x44bcf0
mov rdx, rbx
mov rcx, r15
call fcn.0044d390
cmp byte [rax + 4], 0x16
mov rsi, rax
je 0x44bcf0
test rdi, rdi
jne 0x44bc80
mov edx, 0x100
mov rcx, r15
call fcn.00444a40
mov rdi, rax
mov rdx, qword [rax + 0x10]
jmp 0x44bcaa
mov r8, rsi
mov r10d, 0x201
mov rsi, qword [rsp + 0x70]
mov rbx, rdi
mov word [r15 + 0x18], r10w
cmp byte [r8 + 4], 0x16
mov edi, dword [rsp + 0x78]
mov rax, qword [rsi]
je 0x44bb75
jmp 0x44ba24
test rax, rax
je 0x4a0688
mov r10, qword [rsi + 0x20]
mov r11d, dword [r15 + 0x2b8]
mov qword [rax + rcx*8], r9
lea r10, [r10 + rcx*4]
test r10, r10
je 0x44bbd5
mov dword [r10], r11d
jmp 0x44bbd5
mov ecx, edx
jmp 0x44bbb0
mov ecx, 0xc8
call fcn.00482890
mov qword [rsi + 0x20], rax
mov rax, qword [rsi]
jmp 0x44b9fc
mov rax, qword [rsi]
jmp 0x44bb75
cmp al, 0x16
je 0x44cade
mov eax, dword [rsp + 0x68]
cmp eax, 1
mov esi, eax
je 0x44cded
mov rdi, qword [rsp + 0x60]
mov r9d, esi
mov rcx, r15
mov r8, qword [rsp + 0x148]
mov rdx, rdi
call fcn.0044aca0
test al, al
mov byte [rsp + 0x90], al
je 0x44cb1c
test byte [rdi + 0x1c], 2
je 0x44bdef
movzx edx, word [rdi + 0x18]
cmp esi, edx
mov rax, rdx
jb 0x44cfba
cmp esi, 1
je 0x44cf97
mov rax, qword [rsp + 0x88]
mov byte [r15 + 0x19], 0
sub byte [r15 + 0x18], 1
sub dword [r15 + 0x1f4], 1
mov rax, qword [rax + 8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x58]
cmp word [rax + 0x18], 0
jne 0x44bec0
mov r8d, dword [rsp + 0x68]
test r8d, r8d
je 0x44be99
mov eax, dword [rsp + 0x6c]
mov rsi, qword [rsp + 0x50]
lea rax, [rax + rax*2]
lea rdi, [rsi + 8]
shl rax, 4
lea rsi, [rsi + rax + 0x38]
nop word cs:[rax + rax]
mov rcx, qword [rdi]
test rcx, rcx
je 0x44be64
call fcn.0049a918
mov qword [rdi], 0
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x44be7a
call fcn.0049a918
mov qword [rdi + 0x18], 0
mov rcx, qword [rdi + 0x20]
test rcx, rcx
je 0x44be90
call fcn.0049a918
mov qword [rdi + 0x20], 0
add rdi, 0x30
cmp rsi, rdi
jne 0x44be50
mov rcx, qword [rsp + 0x88]
call fcn.00444c30
mov rax, qword [rsp + 0x148]
movzx eax, word [rax + 0x18]
mov word [rsp + 0x48], ax
shr ax, 6
jmp 0x44b4e3
mov rax, qword [rsp + 0x58]
mov edi, dword [rax + 0x14]
test byte [rax + 0x1c], 0x20
mov dword [rsp + 0x60], edi
jne 0x44cf0d
mov r13, qword [rax + 8]
mov ecx, edi
mov rax, rcx
shl rax, 5
lea r14, [r13 + rax]
cmp r13, r14
mov r12d, dword [rsp + 0x60]
jae 0x44c0f2
mov esi, r12d
mov qword [rsp + 0x80], rbx
jmp 0x44bf10
add r13, 0x20
cmp r13, r14
jae 0x44c0e5
cmp byte [r13 + 4], 0x50
jne 0x44bf03
mov eax, dword [r13 + 0x10]
lea edi, [rsi + 2]
add dword [rsp + 0x60], 2
mov dword [rsp + 0x70], edi
sub eax, 1
lea rbx, [rax + rax*2]
movzx eax, word [r13 + 8]
shl rbx, 4
add rbx, qword [rsp + 0x50]
test al, 4
je 0x44c0b0
cmp qword [rbx + 0x10], 0
mov esi, edi
jne 0x44bf03
mov rdx, qword [r15 + 0x40]
mov rax, qword [rdx + 0x10]
mov rdx, qword [rdx + 0x18]
sub rdx, rax
cmp rdx, 2
jbe 0x44d10c
mov byte [rax], 0x22
mov edx, dword [rbx + 0x18]
lea rsi, [rax + 1]
xor r12d, r12d
xor ebp, ebp
add rax, 2
mov dword [rsp + 0x78], 0
lea rdi, [r15 + 0x40]
mov qword [rsp + 0x98], rdi
test edx, edx
je 0x44cda5
mov qword [rsp + 0xa0], r13
mov r13, r12
mov qword [rsp + 0xa8], r14
jmp 0x44bfc7
xor r13d, r13d
mov dword [rsp + 0x78], 0
add ebp, 1
cmp dword [rbx + 0x18], ebp
jbe 0x44cd72
mov rdx, qword [rbx]
mov eax, ebp
mov rdi, qword [rdx + rax*8]
movzx eax, byte [rdi + 4]
cmp al, 0x53
je 0x44cb70
cmp al, 0x3e
je 0x44c014
cmp al, 0x38
je 0x44c014
cmp al, 0x3f
je 0x44c014
cmp al, 0x39
je 0x44c014
cmp al, 0x41
je 0x44c014
cmp al, 0x3b
je 0x44c014
cmp al, 0x40
je 0x44c014
cmp al, 0x3a
je 0x44c014
cmp al, 0x42
je 0x44c014
cmp al, 0x3c
je 0x44c014
movzx ecx, al
call fcn.0043d280
test al, al
je 0x44d33c
mov rcx, rdi
call fcn.004440d0
movzx r12d, byte [rsp + 0x90]
mov eax, eax
shl rax, 2
mov rdx, qword [r15 + 0x40]
lea r14, [rax + 3]
mov rcx, qword [rdx + 0x10]
mov rdx, qword [rdx + 0x18]
sub rdx, rsi
cmp r14, rdx
ja 0x44c950
lea rdx, [rsi - 1]
cmp rcx, rdx
je 0x44c065
test r13, r13
cmove r13, rdi
test byte [r13 + 8], 1
je 0x44c065
mov byte [rsi], 0x20
add rsi, 1
test r12b, r12b
jne 0x44ca58
mov r8, rsi
mov r9d, 1
mov rdx, rdi
mov rcx, r15
call fcn.00444180
mov rsi, rax
cmp byte [rdi + 4], 0x3d
jne 0x44bfb0
mov rax, qword [rdi + 0x18]
cmp byte [rax], 0x5c
jne 0x44bfb0
add dword [rsp + 0x78], 1
xor r13d, r13d
jmp 0x44bfbb
test al, 8
jne 0x44c6b2
mov rax, qword [rsp + 0x58]
cmp qword [rax + 8], r13
jae 0x44c0ce
test byte [r13 - 0x18], 8
jne 0x44c6b2
cmp qword [rbx + 8], 0
je 0x44cfd8
mov eax, dword [rbx + 0x1c]
lea esi, [rsi + rax + 1]
jmp 0x44bf03
mov rbx, qword [rsp + 0x80]
mov ecx, esi
mov r12, rcx
movzx eax, byte [r15 + 0x495]
lea rsi, [rcx*8]
test eax, eax
mov dword [rsp + 0x80], eax
jne 0x44c82c
mov rdx, rsi
mov rcx, r15
call fcn.00444a40
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x78], 0
mov r13, rax
mov rax, qword [rax + 8]
mov qword [rsp + 0xc0], rax
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
movzx eax, word [rdi + 0x18]
lea rax, [rax + rax*2]
shl rax, 4
mov eax, dword [rsi + rax - 0x18]
mov dword [rsp + 0xbc], eax
movzx eax, byte [rdi + 0x1c]
mov rdi, qword [rdi + 8]
and eax, 2
cmp rdi, r14
mov byte [rsp + 0x60], al
jae 0x44c62a
lea rax, [r15 + 0x298]
xor esi, esi
mov qword [rsp + 0x70], r14
xor ebp, ebp
mov dword [rsp + 0xb8], 0
mov r14d, esi
mov byte [rsp + 0xb7], 0
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xc8], rbx
jmp 0x44c23f
cmp ebp, 1
je 0x44c590
jle 0x44c2f0
cmp ebp, 2
je 0x44c6a0
cmp al, 0x26
je 0x44c810
cmp al, 0x14
je 0x44c9b4
cmp al, 0x15
jne 0x44c2d0
sub ebp, 1
cmp ebp, 2
jne 0x44cad1
cmp byte [rsp + 0xb7], 0
je 0x44c9c4
mov r8d, dword [rdi]
lea r9, str._cannot_appear_at_either_end_of___VA_OPT__
mov rcx, r15
xor ebp, ebp
mov edx, 3
call fcn.0043bda0
mov byte [rsp + 0xb7], 0
nop dword [rax + rax]
add rdi, 0x20
cmp rdi, qword [rsp + 0x70]
jae 0x44c622
cmp byte [rsp + 0x60], 0
movzx eax, byte [rdi + 4]
je 0x44c2f0
cmp al, 0x35
jne 0x44c1c0
mov rbx, qword [r15 + 0x510]
cmp qword [rdi + 0x10], rbx
je 0x44c6be
cmp ebp, 1
je 0x44c59d
jg 0x44c1cf
movzx r12d, byte [r15 + 0x495]
cmp r12b, 1
mov eax, r14d
ja 0x44c297
mov rbx, qword [rsp + 0x58]
mov rax, rdi
sub rax, qword [rbx + 8]
sar rax, 5
mov r9d, dword [rdi]
mov dword [rsp + 0x30], eax
mov r8, rdi
mov rcx, r13
mov rax, qword [rsp + 0x78]
add r14d, 1
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x28], rax
call fcn.0044a3a0
jmp 0x44c230
mov edx, dword [rsp + 0xbc]
mov byte [rsp + 0xb7], 0
test edx, edx
je 0x44c230
nop word [rax + rax]
cmp al, 0x50
movzx r12d, byte [r15 + 0x495]
jne 0x44c27e
mov edx, dword [rdi + 0x10]
movzx ecx, word [rdi + 8]
lea eax, [rdx - 1]
lea rax, [rax + rax*2]
shl rax, 4
add rax, qword [rsp + 0x50]
test cl, 4
je 0x44c5c3
lea ebx, [r14 + 1]
test r12b, r12b
lea rsi, [rax + 0x10]
mov dword [rsp + 0xb0], ebx
jne 0x44cc8d
mov qword [rsp + 0x90], 0
mov dword [rsp + 0xd8], 1
mov ebx, 1
cmp byte [r15 + 0x10], 0
je 0x44c36e
cmp byte [r15 + 0x11], 0
mov qword [rsp + 0x98], 0
je 0x44c40d
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x98], 0
cmp qword [rax + 8], rdi
je 0x44c40d
movzx ecx, word [rdi - 0x18]
and ecx, 8
jne 0x44c40d
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x44c3b2
mov rax, qword [r13 + 0x10]
cmp qword [r13 + 8], rax
je 0x44c3b2
sub rax, 8
cmp rcx, rax
je 0x44c40d
mov rcx, r15
call fcn.00443f90
xor r9d, r9d
mov byte [rax + 4], 0x53
mov r8, rax
mov qword [rax + 0x10], rdi
mov word [rax + 8], r9w
cmp byte [r15 + 0x495], 1
mov eax, r14d
ja 0x44c3ea
mov rcx, qword [rsp + 0x58]
mov rax, rdi
sub rax, qword [rcx + 8]
sar rax, 5
mov r9d, dword [r8]
mov dword [rsp + 0x30], eax
mov rcx, r13
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x28], rax
call fcn.0044a3a0
test ebx, ebx
jne 0x44c720
cmp byte [r15 + 0x492], 0
je 0x44c530
cmp byte [r15 + 0x490], 0
jne 0x44c530
mov rax, qword [rsp + 0x58]
test byte [rax + 0x1c], 4
jne 0x44c530
mov rax, qword [r15]
test rax, rax
je 0x44c452
cmp byte [rax + 0x70], 0
jne 0x44c530
cmp byte [r15 + 0x470], 0
jne 0x44d1af
cmp byte [r15 + 0x4be], 0
je 0x44c583
mov eax, dword [rdi + 0x10]
lea r8, str.invoking_macro__s_argument__d:_empty_macro_arguments_are_undefined_in_ISO_C90
setg dl
mov rcx, r15
movzx edx, dl
add edx, 0x15
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x148]
mov r9, qword [rax]
call fcn.0043bc00
movzx eax, byte [r15 + 0x10]
nop dword [rax]
test al, al
jne 0x44c500
test byte [rdi + 8], 8
jne 0x44c500
mov rbx, qword [rsp + 0xa8]
test rbx, rbx
je 0x44c4ca
mov rax, qword [r13 + 0x10]
cmp qword [r13 + 8], rax
je 0x44c4ca
sub rax, 8
cmp rbx, rax
je 0x44c500
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x30], 0
mov rcx, r13
mov qword [rsp + 0x28], 0
mov r9d, dword [r15 + 0x298]
mov r8, qword [rsp + 0xd0]
mov dword [rsp + 0x20], r9d
call fcn.0044a3a0
nop dword [rax]
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x44c51c
lea r8, [rdi + 8]
mov rdx, rax
mov rcx, r15
call fcn.0044a340
mov r14d, dword [rsp + 0xb0]
jmp 0x44c230
cmp byte [r15 + 0x4be], 0
jle 0x44c583
cmp byte [r15 + 0x470], 0
jne 0x44c583
mov rax, qword [rsp + 0x58]
test byte [rax + 0x1c], 4
jne 0x44c583
mov rax, qword [r15]
test rax, rax
je 0x44c55d
cmp byte [rax + 0x70], 0
jne 0x44c583
mov eax, dword [rdi + 0x10]
lea r8, str.invoking_macro__s_argument__d:_empty_macro_arguments_are_undefined_in_ISO_C90
mov edx, 0x16
mov rcx, r15
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x148]
mov r9, qword [rax]
call fcn.0043bbd0
movzx eax, byte [r15 + 0x10]
jmp 0x44c4a0
cmp al, 0x14
mov ebp, 2
je 0x44c230
mov r8d, dword [rsp + 0xb8]
mov edx, 3
mov rcx, r15
mov ebp, 1
lea r9, str.__VA_OPT___must_be_followed_by_an_open_parenthesis
call fcn.0043bda0
jmp 0x44c230
and ecx, 8
je 0x44c888
mov ebx, dword [rax + 0x18]
test r12b, r12b
mov qword [rsp + 0x90], 0
mov dword [rsp + 0xd8], 0
mov rsi, qword [rax]
lea ecx, [r14 + rbx]
mov dword [rsp + 0xb0], ecx
je 0x44c350
test rsi, rsi
je 0x44d1ec
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x90], rax
mov dword [rsp + 0xd8], 0
jmp 0x44c350
mov rbx, qword [rsp + 0xc8]
mov rsi, qword [r13 + 0x10]
mov r11d, dword [rsp + 0x80]
sub rsi, qword [r13 + 8]
shr rsi, 3
test r11d, r11d
je 0x44c976
mov r9, qword [rsp + 0x48]
mov dword [rsp + 0x28], esi
mov r8, r13
mov rcx, r15
mov rax, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0x20], rax
call fcn.0044a2b0
mov rax, qword [r13 + 0x10]
sub rax, qword [r13 + 8]
shr rax, 3
add dword [0x005e0580], eax
mov rax, qword [rsp + 0x88]
mov rax, qword [rax + 8]
mov qword [rsp + 0x50], rax
jmp 0x44be22
cmp al, 0x26
je 0x44cef1
mov ebp, 3
jmp 0x44c1e0
mov eax, dword [rbx + 0x18]
lea esi, [rsi + rax + 1]
jmp 0x44bf03
test ebp, ebp
mov ebx, dword [rdi]
je 0x44c6e0
lea r9, str.__VA_OPT___may_not_appear_in_a___VA_OPT__
mov r8d, ebx
mov edx, 3
mov rcx, r15
call fcn.0043bda0
jmp 0x44c230
mov rax, qword [rsp + 0x58]
cmp qword [rax + 8], rdi
je 0x44c6f5
test byte [rdi - 0x18], 8
je 0x44cd05
mov rax, qword [r13 + 0x10]
cmp qword [r13 + 8], rax
je 0x44ceba
sub rax, 8
mov dword [rsp + 0xb8], ebx
mov ebp, 1
mov qword [rsp + 0xa8], rax
jmp 0x44c230
lea eax, [r14 + rbx]
mov dword [rsp + 0xdc], ebp
mov rbp, rsi
mov ebx, dword [rsp + 0xd8]
mov dword [rsp + 0xa0], eax
mov esi, r14d
jmp 0x44c78d
mov rcx, qword [rsp + 0x90]
test rbp, rbp
mov r9d, dword [rcx]
je 0x44cb97
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x78]
mov rcx, r13
mov dword [rsp + 0x20], edx
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov r8, qword [rbp]
call fcn.0044a3a0
test ebx, ebx
je 0x44c7c5
cmp ebx, 2
je 0x44c7c5
add esi, 1
cmp dword [rsp + 0xa0], esi
je 0x44c7d9
cmp dword [rsp + 0x80], 1
mov eax, r14d
cmovg eax, esi
cmp byte [r15 + 0x495], 1
ja 0x44c7b5
mov rcx, qword [rsp + 0x58]
mov rax, rdi
sub rax, qword [rcx + 8]
sar rax, 5
test r12b, r12b
mov edx, dword [rdi]
jne 0x44c741
mov rcx, qword [rbp]
mov r9d, dword [rcx]
jmp 0x44c755
add rbp, 8
test r12b, r12b
je 0x44c781
add qword [rsp + 0x90], 4
jmp 0x44c781
test byte [rdi + 8], 8
mov ebp, dword [rsp + 0xdc]
movzx eax, byte [r15 + 0x10]
je 0x44cd65
mov rax, qword [r13 + 0x10]
cmp qword [r13 + 8], rax
lea rbx, [rax - 8]
mov qword [rsp + 0x98], rbx
jne 0x44c500
jmp 0x44c51c
mov byte [rsp + 0xb7], 1
mov eax, dword [rsp + 0xbc]
test eax, eax
je 0x44c230
jmp 0x44c276
shl rcx, 4
call fcn.00482890
mov rdx, rsi
mov rcx, r15
mov qword [rsp + 0x48], rax
call fcn.00444a40
cmp dword [rsp + 0x80], 1
mov r9d, dword [rsp + 0x60]
mov r13, rax
mov rcx, qword [r15 + 0x28]
mov rax, qword [rax + 8]
mov r8d, dword [rsp + 0x158]
cmovne r9d, r12d
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0xc0], rax
call fcn.00447fd0
mov qword [rsp + 0x78], rax
jmp 0x44c13d
mov rbx, qword [rsp + 0x58]
cmp qword [rbx + 8], rdi
je 0x44cca7
movzx ecx, word [rdi - 0x18]
test cl, 8
je 0x44cca7
test r12b, r12b
mov ebx, dword [rax + 0x18]
mov qword [rsp + 0x90], 0
mov rsi, qword [rax]
jne 0x44d185
mov rax, qword [r13 + 0x10]
mov r9, qword [r13 + 8]
mov r8, rax
sub r8, r9
shr r8, 3
test r8d, r8d
je 0x44cea0
cmp r9, rax
je 0x4a066a
mov r8, qword [rax - 8]
lea r11, [rax - 8]
mov qword [rsp + 0x98], r11
cmp byte [r8 + 4], 0x13
je 0x44d1f9
test ebx, ebx
jne 0x44cea0
mov rdx, qword [rsp + 0x98]
cmp qword [rsp + 0xa8], rdx
je 0x44cea0
cmp byte [r15 + 0x10], 0
lea eax, [r14 + rbx]
mov dword [rsp + 0xd8], 0
mov dword [rsp + 0xb0], eax
je 0x44c40d
cmp byte [r15 + 0x11], 0
jne 0x44c38d
jmp 0x44c40d
mov rdx, qword [rsp + 0x98]
sub rsi, rcx
mov r8, r14
mov rcx, r15
call fcn.00444be0
mov rdx, qword [r15 + 0x40]
mov rcx, qword [rdx + 0x10]
add rsi, rcx
jmp 0x44c047
lea rcx, [r15 + 0x88]
mov esi, esi
call fcn.0044a240
mov rdi, qword [rsp + 0x148]
mov dword [rax + 0x30], 0
mov qword [rax + 0x20], r13
mov qword [rax + 0x28], rdi
mov rdi, qword [rsp + 0xc0]
lea rdx, [rdi + rsi*8]
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdx
jmp 0x44c670
add ebp, 1
mov byte [rsp + 0xb7], 0
jmp 0x44c818
mov rcx, qword [r13 + 8]
mov rdx, qword [r13 + 0x10]
movzx r9d, word [rdi + 8]
and r9d, 8
cmp rcx, rdx
je 0x44ce3b
sub rdx, 8
xor r8d, r8d
mov r10, qword [rsp + 0xa8]
jmp 0x44ca0c
mov rax, qword [r13 + 0x10]
cmp rcx, rax
jae 0x44ca01
sub rax, 8
mov qword [r13 + 0x10], rax
lea rdx, [rax - 8]
cmp rcx, rax
cmove rdx, r8
test rdx, rdx
je 0x44ce11
cmp r10, rdx
je 0x44ce11
mov rax, qword [rdx]
cmp byte [rax + 4], 0x53
je 0x44c9f0
test r9w, r9w
je 0x44ce53
lea r8, [rdi + 8]
mov rcx, r15
xor ebp, ebp
call fcn.0044a340
mov byte [rsp + 0xb7], 0
mov qword [rsp + 0xa8], 0
jmp 0x44c230
mov rdx, r14
mov rcx, r15
call fcn.00444a40
mov rdx, rdi
mov r9d, 1
mov rcx, r15
mov r14, qword [rax + 0x10]
mov r13, rax
mov r8, r14
call fcn.00444180
sub rax, r14
lea edx, [rax - 1]
test eax, eax
je 0x44cac1
lea rcx, [r14 + rdx + 1]
jmp 0x44ca9b
lea rsi, [rdx + 1]
cmp r14, rcx
mov byte [rdx], al
je 0x44cac1
add r14, 1
movzx eax, byte [r14 - 1]
cmp al, 0x22
je 0x44cab8
cmp al, 0x5c
je 0x44cab8
cmp al, 0xa
mov rdx, rsi
jne 0x44ca90
mov eax, 0x6e
lea rdx, [rsi + 1]
mov byte [rsi], 0x5c
jmp 0x44ca90
mov rdx, r13
mov rcx, r15
call fcn.00444a20
jmp 0x44c085
mov byte [rsp + 0xb7], 0
jmp 0x44c818
mov rax, qword [r15 + 0x88]
cmp qword [rax + 8], 0
je 0x44d19f
mov edx, 1
mov rcx, r15
call fcn.0044b190
mov rax, qword [rsp + 0x148]
lea r8, [0x004fbed0]
mov edx, 3
mov rcx, r15
mov r9, qword [rax]
call fcn.0043bba0
mov rdx, qword [rsp + 0x88]
mov rcx, r15
call fcn.00444a20
mov byte [r15 + 0x19], 0
sub dword [r15 + 0x1f4], 1
sub byte [r15 + 0x18], 1
cmp byte [r15 + 0x482], 0
je 0x44b7d3
mov rax, qword [rsp + 0x148]
mov rax, qword [rax + 0x20]
test byte [rax + 0x1c], 4
jne 0x44b7d3
jmp 0x44b7b4
test r13, r13
je 0x44ceb1
test byte [r13 + 8], 1
jne 0x44bfbb
cmp qword [rdi + 0x10], 0
mov eax, 0
cmove r13, rax
jmp 0x44bfbb
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x78]
xor r8d, r8d
mov rcx, r13
mov dword [rsp + 0x20], edx
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
call fcn.0044a3a0
test ebx, ebx
je 0x44cbc6
cmp ebx, 2
jne 0x44c781
mov ebp, 8
jmp 0x44c7ce
mov ebx, 0x30
mov edx, 0x1c0
jmp 0x44b981
xor edx, edx
jmp 0x44bbae
mov ecx, edi
mov edx, edi
jmp 0x44bbb0
test edi, edi
je 0x44d377
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax + 8]
cmp byte [rsi + 4], 0x26
je 0x44d26c
lea r14, [rsi + 0x20]
xor r12d, r12d
mov rax, r14
add r12d, 1
cmp edi, r12d
je 0x44d377
movzx edx, byte [rax + 4]
add rax, 0x20
cmp dl, 0x26
jne 0x44cc14
cmp byte [r15 + 0x495], 0
mov edi, r12d
je 0x44b920
mov edi, r12d
mov rcx, rdi
shl rcx, 4
call fcn.00482890
lea rdx, [rdi*8]
mov rcx, r15
mov edi, r12d
mov qword [rsp + 0x48], rax
call fcn.00444a40
mov rcx, qword [r15 + 0x28]
mov r9d, r12d
mov r8d, dword [rsp + 0x158]
mov rbp, rax
mov rdx, qword [rsp + 0x148]
call fcn.00447fd0
mov r13, rax
jmp 0x44b85f
test rsi, rsi
je 0x44c334
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x90], rax
jmp 0x44c340
test r12b, r12b
mov ebx, dword [rax + 0x1c]
mov qword [rsp + 0x90], 0
mov rsi, qword [rax + 8]
jne 0x44ced7
cmp qword [rsp + 0xa8], 0
je 0x44ccea
mov rax, qword [r13 + 0x10]
cmp qword [r13 + 8], rax
je 0x44ccea
sub rax, 8
cmp qword [rsp + 0xa8], rax
je 0x44d12b
mov dword [rsp + 0xd8], 2
lea eax, [r14 + rbx]
mov dword [rsp + 0xb0], eax
jmp 0x44c350
mov rcx, r15
call fcn.00443f90
xor r10d, r10d
mov edx, r14d
mov byte [rax + 4], 0x53
mov r8, rax
mov qword [rax + 0x10], rdi
mov word [rax + 8], r10w
cmp byte [r15 + 0x495], 1
ja 0x44cd3d
mov rax, qword [rsp + 0x58]
mov rdx, rdi
sub rdx, qword [rax + 8]
sar rdx, 5
mov r9d, dword [r8]
mov dword [rsp + 0x30], edx
mov rcx, r13
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x28], rax
call fcn.0044a3a0
jmp 0x44c6f5
test al, al
je 0x44c4aa
jmp 0x44c500
test byte [rsp + 0x78], 1
lea rax, [rsi + 1]
mov r13, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xa8]
je 0x44cda5
lea r8, str.invalid_string_literal__ignoring_final_
xor edx, edx
mov rcx, r15
call fcn.0043bba0
mov rax, rsi
sub rsi, 1
mov byte [rsi], 0x22
mov rdx, qword [r15 + 0x40]
mov rdi, rax
add rsi, 2
mov rcx, r15
xor ebp, ebp
sub rdi, qword [rdx + 0x10]
mov qword [rdx + 0x10], rsi
sub rax, rdi
mov rsi, rax
call fcn.00443f90
mov edx, edi
mov byte [rsi + rdx], 0
mov qword [rax + 0x18], rsi
mov esi, dword [rsp + 0x70]
mov byte [rax + 4], 0x3e
mov dword [rax + 0x10], edi
mov word [rax + 8], bp
mov qword [rbx + 0x10], rax
jmp 0x44bf03
test r9w, r9w
jne 0x44bda7
mov rax, qword [rsp + 0x98]
xor esi, esi
mov r9d, dword [rax + 0x18]
test r9d, r9d
setne sil
jmp 0x44bda7
test r9w, r9w
je 0x44ce53
test rdx, rdx
jne 0x44cf6f
mov qword [rsp + 0xa8], 0
xor ebp, ebp
mov byte [rsp + 0xb7], 0
jmp 0x44c230
mov qword [rsp + 0xa8], 0
xor ebp, ebp
test r9w, r9w
jne 0x44c230
mov r9d, dword [r15 + 0x298]
mov rcx, r13
xor ebp, ebp
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0xd0]
mov dword [rsp + 0x20], r9d
call fcn.0044a3a0
mov byte [rsp + 0xb7], 0
mov qword [rsp + 0xa8], 0
jmp 0x44c230
mov qword [rsp + 0x98], 0
jmp 0x44c91c
mov r13, qword [rdi + 0x10]
jmp 0x44bfbb
mov dword [rsp + 0xb8], ebx
mov ebp, 1
mov qword [rsp + 0xa8], 0
jmp 0x44c230
test rsi, rsi
je 0x44d24b
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x90], rax
jmp 0x44ccc3
mov r8d, dword [rdi]
lea r9, str._cannot_appear_at_either_end_of___VA_OPT__
mov edx, 3
mov rcx, r15
call fcn.0043bda0
jmp 0x44c230
mov ecx, dword [rsp + 0x60]
test ecx, ecx
je 0x44d377
mov rax, qword [rsp + 0x58]
mov r13, qword [rax + 8]
cmp byte [r13 + 4], 0x26
je 0x44d2d6
mov edi, dword [rsp + 0x60]
lea rax, [r13 + 0x20]
mov ecx, 1
lea r8d, [rdi - 1]
add r8, 1
jmp 0x44cf47
mov rcx, rdx
cmp r8, rcx
mov r9d, ecx
je 0x44d377
lea rdx, [rcx + 1]
mov r14, rax
add rax, 0x20
cmp byte [r14 + 4], 0x26
jne 0x44cf44
mov dword [rsp + 0x60], r9d
jmp 0x44bee8
mov rax, qword [rdx]
cmp byte [rax + 4], 0x53
jne 0x44ca31
xor ebp, ebp
mov byte [rsp + 0xb7], 0
mov qword [rsp + 0xa8], 0
jmp 0x44c230
mov rdi, qword [rsp + 0x98]
mov r8d, dword [rdi + 0x18]
test r8d, r8d
jne 0x44bdef
cmp byte [r15 + 0x491], 0
jne 0x44bdef
mov rdi, qword [rsp + 0x98]
lea rax, [rax + rax*2]
shl rax, 4
mov qword [rdi + rax - 0x30], 0
jmp 0x44bdef
mov edi, dword [rbx + 0x18]
test edi, edi
je 0x44c0d9
cmp byte [r15 + 0x482], 0
mov ecx, 0x800
mov byte [r15 + 0x482], 0
movzx edi, byte [r15 + 0x495]
setne bpl
call fcn.00482890
mov qword [rbx + 8], rax
cmp byte [r15 + 0x495], 0
jne 0x44d329
mov eax, dword [rbx + 0x18]
test dil, dil
mov rdx, qword [rbx]
lea r12d, [rax + 1]
je 0x44d2eb
mov r9, qword [rbx + 0x20]
xor r8d, r8d
mov qword [rsp + 0x20], rdx
mov rcx, r15
mov dword [rsp + 0x28], r12d
xor edx, edx
call fcn.0044a2b0
mov eax, dword [rbx + 0x1c]
mov edi, 0x100
jmp 0x44d069
test rdx, rdx
je 0x4a0674
mov qword [rdx + rcx*8], rax
mov eax, dword [rbx + 0x1c]
add eax, 1
mov dword [rbx + 0x1c], eax
lea r12d, [rax + 1]
cmp r12, rdi
jbe 0x44d0b2
mov rcx, qword [rbx + 8]
lea rdi, [r12 + r12]
mov rdx, r12
shl rdx, 4
call fcn.00482910
mov qword [rbx + 8], rax
cmp byte [r15 + 0x495], 0
je 0x44d0b2
mov rcx, qword [rbx + 0x28]
lea rdx, [r12*8]
test rcx, rcx
je 0x44d2c5
call fcn.00482910
mov qword [rbx + 0x28], rax
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.0044d390
cmp byte [rax + 4], 0x16
je 0x44d258
cmp byte [r15 + 0x495], 0
mov ecx, dword [rbx + 0x1c]
mov rdx, qword [rbx + 8]
je 0x44d053
test rdx, rdx
je 0x4a0674
mov r8, qword [rbx + 0x28]
mov r9d, dword [rsp + 0xec]
mov qword [rdx + rcx*8], rax
lea r8, [r8 + rcx*4]
test r8, r8
je 0x44d060
mov dword [r8], r9d
jmp 0x44d060
lea rdx, [r15 + 0x40]
mov r8d, 3
mov rcx, r15
call fcn.00444be0
mov rax, qword [r15 + 0x40]
mov rax, qword [rax + 0x10]
jmp 0x44bf66
test ebx, ebx
je 0x44d35f
mov rdx, qword [rsp + 0x90]
test rsi, rsi
je 0x4a0660
mov rax, qword [rsi]
cmp byte [rax + 4], 0x53
jne 0x44d1df
lea rax, [rdx + 4]
add rsi, 8
test r12b, r12b
cmovne rdx, rax
sub ebx, 1
jne 0x44d13b
mov qword [rsp + 0x90], rdx
mov dword [rsp + 0xb0], r14d
mov dword [rsp + 0xd8], 2
jmp 0x44c350
test rsi, rsi
je 0x44d2b8
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x90], rax
jmp 0x44c8bf
cmp byte [r15 + 0x10], 0
je 0x44cafd
jmp 0x44caf0
mov eax, dword [rdi + 0x10]
lea r8, str.invoking_macro__s_argument__d:_empty_macro_arguments_are_undefined_in_ISO_C98
mov edx, 0x15
mov rcx, r15
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x148]
mov r9, qword [rax]
call fcn.0043bc00
movzx eax, byte [r15 + 0x10]
jmp 0x44c4a0
mov qword [rsp + 0x90], rdx
jmp 0x44ccea
mov qword [rsp + 0x90], rsi
jmp 0x44c612
mov r11, qword [rsp + 0x58]
test byte [r11 + 0x1c], 2
je 0x44c8fe
movzx r8d, word [r11 + 0x18]
cmp edx, r8d
jne 0x44c8fe
test rsi, rsi
je 0x44d226
cmp qword [rsi], 0
jne 0x44c91c
cmp r9, rax
jae 0x44cea0
lea eax, [r14 + rbx]
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0x98]
mov qword [r13 + 0x10], rax
jmp 0x44c612
mov qword [rsp + 0x90], rsi
jmp 0x44ccc3
mov rcx, r15
call fcn.0044aff0
mov byte [r15 + 0x482], bpl
jmp 0x44c0d9
xor edi, edi
cmp byte [r15 + 0x495], 0
je 0x44b920
xor ecx, ecx
xor edi, edi
call fcn.00482890
xor edx, edx
mov rcx, r15
mov qword [rsp + 0x48], rax
call fcn.00444a40
mov rcx, qword [r15 + 0x28]
xor r9d, r9d
mov r8d, dword [rsp + 0x158]
mov rbp, rax
mov rdx, qword [rsp + 0x148]
call fcn.00447fd0
jmp 0x44b89d
mov qword [rsp + 0x90], rsi
jmp 0x44c8bf
mov rcx, rdx
call fcn.00482890
mov qword [rbx + 0x28], rax
jmp 0x44d0b2
mov r14, r13
xor ecx, ecx
mov dword [rsp + 0x60], 0
xor r12d, r12d
jmp 0x44c0f2
lea rcx, [r15 + 0x88]
mov qword [rsp + 0x70], rdx
call fcn.0044a240
mov rdx, qword [rsp + 0x70]
mov dword [rax + 0x30], 0
mov qword [rax + 0x28], 0
mov qword [rax + 0x20], 0
mov qword [rax + 0x10], rdx
lea rdx, [rdx + r12*8]
mov qword [rax + 0x18], rdx
jmp 0x44d049
mov ecx, 0x400
call fcn.00482890
mov qword [rbx + 0x28], rax
jmp 0x44d01b
movzx ecx, byte [rdi + 4]
call fcn.0043d290
mov rcx, rdi
test al, al
mov r12d, eax
jne 0x44c017
call fcn.004440d0
mov eax, eax
jmp 0x44c02b
mov dword [rsp + 0xb0], r14d
mov dword [rsp + 0xd8], 2
jmp 0x44c350
lea r8, str.macro_real_token_count
mov edx, 0x4dc
lea rcx, str..._.._.._.._src_gcc_8.1.0_libcpp_macro.c
call fcn.0049fc60
nop
movzx eax, byte [4]
ud2
mov rax, qword [pe_dos_header]
ud2
mov qword [0], rax
ud2
mov qword [0], r8
ud2
mov qword [0], r9
ud2