Function at 0x4eaaf0
Capabilities:
Print debug messages
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov qword [rsp + 0x48], rcx
test r8, r8
je 0x4eb7a8
test edx, edx
jle 0x4eb83e
mov rdi, r9
mov rsi, r8
mov r12, rcx
add edx, 0xffffffff
add r12, rdx
xor r15d, r15d
mov r13, r8
jmp 0x4eab48
add rdi, 8
mov r15, qword [rsp + 0x50]
nop word cs:[rax + rax]
add r15d, 1
add r13, 1
mov al, byte [r13]
cmp al, 0x25
je 0x4eab70
test al, al
je 0x4eb01d
mov rcx, qword [rsp + 0x48]
cmp rcx, r12
jae 0x4eab40
mov byte [rcx], al
add qword [rsp + 0x48], 1
jmp 0x4eab40
mov qword [rsp + 0x50], r15
lea rcx, [r13 + 1]
mov r8b, byte [r13 + 1]
lea rax, [r13 + 2]
xor edx, edx
cmp r8b, 0x2d
sete dl
cmove rcx, rax
mov r10b, byte [rdx + r13 + 1]
lea r9d, [r10 - 0x30]
xor eax, eax
cmp r9b, 9
ja 0x4eabe0
xor eax, eax
mov ebx, r10d
nop word cs:[rax + rax]
nop
movzx edx, bl
lea eax, [rax + rax*4]
lea eax, [rdx + rax*2]
add eax, 0xffffffd0
movzx ebx, byte [rcx + 1]
add rcx, 1
lea edx, [rbx - 0x30]
cmp dl, 0xa
jb 0x4eabb0
mov r11d, 0xffffffff
cmp bl, 0x2e
je 0x4eabee
jmp 0x4eac04
mov ebx, r10d
mov r11d, 0xffffffff
cmp bl, 0x2e
jne 0x4eac04
mov bl, 0x2e
cmp byte [rcx + 1], 0x2a
jne 0x4eac04
mov r11d, dword [rdi]
add rdi, 8
mov bl, byte [rcx + 2]
add rcx, 2
mov qword [rsp + 0x58], rdi
xor edx, edx
cmp bl, 0x7a
sete dl
lea r13, [rcx + rdx]
mov cl, byte [rcx + rdx]
xor edi, edi
cmp cl, 0x6c
jne 0x4eac50
cmp byte [r13 + 1], 0x6c
setne dil
lea rdx, [rdi + r13]
mov cl, byte [r13 + rdi]
xor r14d, r14d
cmp cl, 0x6c
jne 0x4eac55
cmp byte [rdx + 1], 0x6c
sete r14b
mov cl, byte [rdx + r14*2]
mov rbp, r14
add rbp, r14
mov r13, rdx
jmp 0x4eac5a
xor r14d, r14d
jmp 0x4eac58
mov r13, rdx
xor ebp, ebp
mov r15d, r11d
cmp bl, 0x7a
sete dl
cmp r9b, 0xa
setb r11b
add r13, rbp
or dil, r14b
or dil, dl
test r15d, r15d
jns 0x4eacd0
cmp r8b, 0x2d
je 0x4eacd0
or r11b, dil
movsx edx, cl
lea ebp, [rdx - 0x58]
cmp ebp, 0x20
ja case.default.0x4eacac
lea rdx, [0x004ebf94]
mov qword [rsp + 0x60], r13
mov r13, rdx
movsxd rdx, dword [rdx + rbp*4]
add rdx, r13
mov r13, qword [rsp + 0x60]
jmp rdx
test r14b, r14b
je 0x4eadab
mov rdi, qword [rsp + 0x58]
mov r8, qword [rdi]
jmp 0x4eaf88
cmp cl, 0x73
jne 0x4eb23c
test dil, dil
jne 0x4eb051
cmp r9b, 9
ja 0x4eacf2
cmp r8b, 0x2d
jne 0x4eb218
mov ecx, eax
neg ecx
cmp r8b, 0x2d
cmovne ecx, eax
mov rdi, qword [rsp + 0x58]
mov rax, qword [rdi]
test rax, rax
lea rdx, str._null_
cmove rax, rdx
mov bl, byte [rax]
test bl, bl
je 0x4ead5b
test r15d, r15d
js 0x4ead65
xor edx, edx
mov r8, qword [rsp + 0x50]
jmp 0x4ead3d
movzx ebx, byte [rax + rdx + 1]
add rdx, 1
test bl, bl
je 0x4eada6
cmp r15d, edx
je 0x4eade0
mov rbp, qword [rsp + 0x48]
cmp rbp, r12
jae 0x4ead30
mov byte [rbp], bl
add qword [rsp + 0x48], 1
jmp 0x4ead30
xor r15d, r15d
mov r8, qword [rsp + 0x50]
jmp 0x4eade0
mov rbp, qword [rsp + 0x48]
xor r15d, r15d
cmp rbp, r12
jae 0x4eadc1
mov r8, qword [rsp + 0x50]
jmp 0x4ead8e
movzx ebx, byte [rax + r15 + 1]
add r15, 1
test bl, bl
je 0x4eade0
cmp rbp, r12
jae 0x4ead80
mov byte [rbp], bl
mov rbp, qword [rsp + 0x48]
add rbp, 1
mov qword [rsp + 0x48], rbp
jmp 0x4ead80
mov r15d, edx
jmp 0x4eade0
cmp bl, 0x7a
mov rdi, qword [rsp + 0x58]
jne 0x4eaf85
mov r8, qword [rdi]
jmp 0x4eaf88
mov r8, qword [rsp + 0x50]
nop word cs:[rax + rax]
cmp byte [rax + r15 + 1], 0
lea r15, [r15 + 1]
jne 0x4eadd0
nop dword [rax]
mov eax, r15d
neg eax
cmp ecx, eax
jge 0x4eae32
mov rax, qword [rsp + 0x48]
cmp rax, r12
jae 0x4eae2d
lea edx, [rcx + r15]
test dl, 1
jne 0x4eae0a
mov ebp, r15d
mov edx, ecx
not edx
cmp r15d, edx
je 0x4eae2d
jmp 0x4eae42
cmp rax, r12
jae 0x4eae20
mov byte [rax], 0x20
mov rax, qword [rsp + 0x48]
add rax, 1
mov qword [rsp + 0x48], rax
lea ebp, [r15 + 1]
mov edx, ecx
not edx
cmp r15d, edx
jne 0x4eae42
neg ecx
mov r15d, ecx
add rdi, 8
add r15d, r8d
add r13, 1
jmp 0x4eab48
neg ebp
jmp 0x4eae57
add ebp, 0xfffffffe
cmp ecx, ebp
jge 0x4eae2d
cmp rax, r12
jae 0x4eae80
mov byte [rax], 0x20
mov rax, qword [rsp + 0x48]
add rax, 1
mov qword [rsp + 0x48], rax
cmp rax, r12
jae 0x4eae50
jmp 0x4eae85
cmp rax, r12
jae 0x4eae50
mov byte [rax], 0x20
mov rax, qword [rsp + 0x48]
add rax, 1
mov qword [rsp + 0x48], rax
jmp 0x4eae50
cmp edx, 0x25
jne case.0x4eacac.89
test r11b, r11b
jne 0x4eb5e8
mov rax, qword [rsp + 0x48]
cmp rax, r12
jae 0x4eaebd
mov byte [rax], 0x25
add qword [rsp + 0x48], 1
mov r15, qword [rsp + 0x50]
add r15d, 1
add r13, 1
mov rdi, qword [rsp + 0x58]
jmp 0x4eab48
test r11b, r11b
jne 0x4eb260
mov rdi, qword [rsp + 0x58]
mov r8, qword [rdi]
mov rax, qword [rsp + 0x48]
cmp rax, r12
jae 0x4eaf0e
mov byte [rax], 0x30
mov rax, qword [rsp + 0x48]
add rax, 1
mov qword [rsp + 0x48], rax
cmp rax, r12
jae 0x4eaf0e
mov byte [rax], 0x78
add qword [rsp + 0x48], 1
add rdi, 8
mov byte [rsp + 0x38], 0
mov byte [rsp + 0x30], 0
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0xc
lea rcx, [rsp + 0x48]
mov rdx, r12
mov r9b, 0x10
call fcn.004f6510
mov r15, qword [rsp + 0x50]
add r15d, eax
add r15d, 2
add r13, 1
jmp 0x4eab48
test r14b, r14b
je 0x4eafc2
mov rdi, qword [rsp + 0x58]
mov rcx, qword [rdi]
jmp 0x4eafd4
test r11b, r11b
jne 0x4eb428
mov rax, qword [rsp + 0x48]
cmp rax, r12
mov rdi, qword [rsp + 0x58]
jae 0x4eab2d
mov cl, byte [rdi]
mov byte [rax], cl
add qword [rsp + 0x48], 1
jmp 0x4eab2d
mov r8d, dword [rdi]
add rdi, 8
cmp cl, 0x75
mov r9d, 0x10
mov edx, 0xa
cmove r9d, edx
cmp cl, 0x58
sete byte [rsp + 0x38]
cmp r10b, 0x30
sete byte [rsp + 0x28]
mov byte [rsp + 0x20], al
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0x48]
mov rdx, r12
jmp 0x4eb007
cmp bl, 0x7a
mov rdi, qword [rsp + 0x58]
jne 0x4eafd1
mov rcx, qword [rdi]
jmp 0x4eafd4
movsxd rcx, dword [rdi]
add rdi, 8
mov r8, rcx
neg r8
cmovs r8, rcx
cmp r10b, 0x30
sete byte [rsp + 0x28]
mov byte [rsp + 0x20], al
shr rcx, 0x3f
mov byte [rsp + 0x30], cl
mov byte [rsp + 0x38], 0
lea rcx, [rsp + 0x48]
mov rdx, r12
mov r9b, 0xa
call fcn.004f6510
mov r15, qword [rsp + 0x50]
add r15d, eax
add r13, 1
jmp 0x4eab48
mov rax, qword [rsp + 0x48]
cmp rax, r12
ja 0x4eb8d4
add r12, 1
cmp rax, r12
jae 0x4eb03d
mov byte [rax], 0
add qword [rsp + 0x48], 1
mov eax, r15d
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4eb96a
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb0a7
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb0d2
mov qword [rsp + 0x20], 0
lea rdx, str._have_length_n
lea r9, [rsp + 0x44]
mov r8d, 0xd
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb0df
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str._have_length_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4eb9ab
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb138
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb163
mov qword [rsp + 0x20], 0
lea rdx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
lea r9, [rsp + 0x44]
mov r8d, 0x67
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb170
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
xor edi, edi
nop word cs:[rax + rax]
nop
cmp byte [rsi + rdi], 0
lea rdi, [rdi + 1]
jne 0x4eb180
mov rbx, qword [0x00512520]
mov al, 1
xchg byte [rbx], al
test al, al
jne 0x4eb9eb
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb1e0
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb207
add edi, 0xffffffff
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov rdx, rsi
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb210
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rbx], 0
call fcn.004cd070
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.___have_width__left_justified______0_
mov edx, 0x1e9e
xor r9d, r9d
call fcn.004b9330
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str._____precision___0__left_justified___cur___s_______0_
mov edx, 0x1e7f
xor r9d, r9d
call fcn.004b9330
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebc08
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb2b6
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb2e1
mov qword [rsp + 0x20], 0
lea rdx, str._have_flags_n
lea r9, [rsp + 0x44]
mov r8d, 0xc
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb2ee
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str._have_flags_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebccb
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb347
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb372
mov qword [rsp + 0x20], 0
lea rdx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
lea r9, [rsp + 0x44]
mov r8d, 0x67
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb37f
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
xor edi, edi
nop word cs:[rax + rax]
nop
cmp byte [rsi + rdi], 0
lea rdi, [rdi + 1]
jne 0x4eb390
mov rbx, qword [0x00512520]
mov al, 1
xchg byte [rbx], al
test al, al
jne 0x4ebd8b
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb3f0
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb417
add edi, 0xffffffff
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov rdx, rsi
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb420
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rbx], 0
call fcn.004cd070
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebc4b
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb47e
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb4a9
mov qword [rsp + 0x20], 0
lea rdx, str._have_flags_n
lea r9, [rsp + 0x44]
mov r8d, 0xc
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb4b6
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str._have_flags_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebd0b
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb50f
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb53a
mov qword [rsp + 0x20], 0
lea rdx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
lea r9, [rsp + 0x44]
mov r8d, 0x67
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb547
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
xor edi, edi
nop dword [rax]
cmp byte [rsi + rdi], 0
lea rdi, [rdi + 1]
jne 0x4eb550
mov rbx, qword [0x00512520]
mov al, 1
xchg byte [rbx], al
test al, al
jne 0x4ebdcc
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb5b0
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb5d7
add edi, 0xffffffff
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov rdx, rsi
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb5e0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rbx], 0
call fcn.004cd070
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebc8b
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb63e
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb669
mov qword [rsp + 0x20], 0
lea rdx, str._have_flags_n
lea r9, [rsp + 0x44]
mov r8d, 0xc
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb676
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str._have_flags_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebd4b
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb6cf
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb6fa
mov qword [rsp + 0x20], 0
lea rdx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
lea r9, [rsp + 0x44]
mov r8d, 0x67
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb707
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
xor edi, edi
nop dword [rax]
cmp byte [rsi + rdi], 0
lea rdi, [rdi + 1]
jne 0x4eb710
mov rbx, qword [0x00512520]
mov al, 1
xchg byte [rbx], al
test al, al
jne 0x4ebe0c
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb770
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb797
add edi, 0xffffffff
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov rdx, rsi
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb7a0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rbx], 0
call fcn.004cd070
mov rsi, qword [0x00512520]
mov al, 1
xchg byte [rsi], al
test al, al
jne 0x4ebe4c
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb7fe
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb829
mov qword [rsp + 0x20], 0
lea rdx, str.format_n
lea r9, [rsp + 0x44]
mov r8d, 7
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb836
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.format_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rsi], 0
call fcn.004cd070
mov rsi, qword [0x00512520]
mov al, 1
xchg byte [rsi], al
test al, al
jne 0x4ebe8b
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb894
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb8bf
mov qword [rsp + 0x20], 0
lea rdx, str.buff_length___0_n
lea r9, [rsp + 0x44]
mov r8d, 0x10
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb8cc
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.buff_length___0_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rsi], 0
call fcn.004cd070
mov rsi, qword [0x00512520]
mov al, 1
xchg byte [rsi], al
test al, al
jne 0x4ebecb
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eb92a
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4eb955
mov qword [rsp + 0x20], 0
lea rdx, str.buff___buff_end_n
lea r9, [rsp + 0x44]
mov r8d, 0x11
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4eb962
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.buff___buff_end_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rsi], 0
call fcn.004cd070
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4eb98f
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb064
add ebx, 1
cmp ebx, 0x63
ja 0x4eb9a0
pause
cmp byte [rdi], 0
jne 0x4eb98c
jmp 0x4eb980
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4eb98c
jmp 0x4eb980
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4eb9cf
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb0f5
add ebx, 1
cmp ebx, 0x64
jae 0x4eb9e0
pause
cmp byte [rdi], 0
jne 0x4eb9cc
jmp 0x4eb9c0
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4eb9cc
jmp 0x4eb9c0
xor ebp, ebp
mov r14, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4eba0f
mov al, 1
xchg byte [rbx], al
test al, al
je 0x4eb19d
add ebp, 1
cmp ebp, 0x64
jae 0x4eba20
pause
cmp byte [rbx], 0
jne 0x4eba0c
jmp 0x4eba00
xor ecx, ecx
call r14
cmp byte [rbx], 0
jne 0x4eba0c
jmp 0x4eba00
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebf0b
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4eba82
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4ebaad
mov qword [rsp + 0x20], 0
lea rdx, str.false_n
lea r9, [rsp + 0x44]
mov r8d, 6
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4ebaba
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.false_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
mov rdi, qword [0x00512520]
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebf38
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4ebb13
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4ebb3e
mov qword [rsp + 0x20], 0
lea rdx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
lea r9, [rsp + 0x44]
mov r8d, 0x67
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4ebb4b
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.Supported_Printf_formats:____0_9____zlll__d_u_x_X___p________0_9____.__s___c_nProvided_format:
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rdi], 0
xor edi, edi
cmp byte [rsi + rdi], 0
lea rdi, [rdi + 1]
jne 0x4ebb50
mov rbx, qword [0x00512520]
mov al, 1
xchg byte [rbx], al
test al, al
jne 0x4ebf65
lea rcx, [0x00512520]
call fcn.004ef610
mov rcx, qword [0x00512528]
cmp rcx, 0xffffffffffffffff
je 0x4ebbe4
lea rax, [rcx - 1]
cmp rax, 1
ja 0x4ebbac
xor eax, eax
cmp rcx, 1
sete al
or eax, 0xfffffff4
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
test rax, rax
je 0x4ebbd3
add edi, 0xffffffff
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov rdx, rsi
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4ebbdc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov byte [rbx], 0
call fcn.004cd070
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__fd_____fd_t__1_______0_
mov edx, 0x24a7
xor r9d, r9d
call fcn.004b9330
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebc2f
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb273
add ebx, 1
cmp ebx, 0x63
ja 0x4ebc40
pause
cmp byte [rdi], 0
jne 0x4ebc2c
jmp 0x4ebc20
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebc2c
jmp 0x4ebc20
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebc6f
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb43b
add ebx, 1
cmp ebx, 0x63
ja 0x4ebc80
pause
cmp byte [rdi], 0
jne 0x4ebc6c
jmp 0x4ebc60
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebc6c
jmp 0x4ebc60
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebcaf
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb5fb
add ebx, 1
cmp ebx, 0x63
ja 0x4ebcc0
pause
cmp byte [rdi], 0
jne 0x4ebcac
jmp 0x4ebca0
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebcac
jmp 0x4ebca0
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebcef
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb304
add ebx, 1
cmp ebx, 0x64
jae 0x4ebd00
pause
cmp byte [rdi], 0
jne 0x4ebcec
jmp 0x4ebce0
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebcec
jmp 0x4ebce0
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebd2f
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb4cc
add ebx, 1
cmp ebx, 0x64
jae 0x4ebd40
pause
cmp byte [rdi], 0
jne 0x4ebd2c
jmp 0x4ebd20
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebd2c
jmp 0x4ebd20
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebd6f
mov al, 1
xchg byte [rdi], al
test al, al
je 0x4eb68c
add ebx, 1
cmp ebx, 0x64
jae 0x4ebd80
pause
cmp byte [rdi], 0
jne 0x4ebd6c
jmp 0x4ebd60
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebd6c
jmp 0x4ebd60
xor ebp, ebp
mov r14, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebdaf
mov al, 1
xchg byte [rbx], al
test al, al
je 0x4eb3ad
add ebp, 1
cmp ebp, 0x64
jae 0x4ebdc0
pause
cmp byte [rbx], 0
jne 0x4ebdac
jmp 0x4ebda0
xor ecx, ecx
call r14
cmp byte [rbx], 0
jne 0x4ebdac
jmp 0x4ebda0
xor ebp, ebp
mov r14, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebdef
mov al, 1
xchg byte [rbx], al
test al, al
je 0x4eb56d
add ebp, 1
cmp ebp, 0x64
jae 0x4ebe00
pause
cmp byte [rbx], 0
jne 0x4ebdec
jmp 0x4ebde0
xor ecx, ecx
call r14
cmp byte [rbx], 0
jne 0x4ebdec
jmp 0x4ebde0
xor ebp, ebp
mov r14, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebe2f
mov al, 1
xchg byte [rbx], al
test al, al
je 0x4eb72d
add ebp, 1
cmp ebp, 0x64
jae 0x4ebe40
pause
cmp byte [rbx], 0
jne 0x4ebe2c
jmp 0x4ebe20
xor ecx, ecx
call r14
cmp byte [rbx], 0
jne 0x4ebe2c
jmp 0x4ebe20
xor edi, edi
mov rbx, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebe6f
mov al, 1
xchg byte [rsi], al
test al, al
je 0x4eb7bb
add edi, 1
cmp edi, 0x63
ja 0x4ebe80
pause
cmp byte [rsi], 0
jne 0x4ebe6c
jmp 0x4ebe60
xor ecx, ecx
call rbx
cmp byte [rsi], 0
jne 0x4ebe6c
jmp 0x4ebe60
xor edi, edi
mov rbx, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebeaf
mov al, 1
xchg byte [rsi], al
test al, al
je 0x4eb851
add edi, 1
cmp edi, 0x63
ja 0x4ebec0
pause
cmp byte [rsi], 0
jne 0x4ebeac
jmp 0x4ebea0
xor ecx, ecx
call rbx
cmp byte [rsi], 0
jne 0x4ebeac
jmp 0x4ebea0
xor edi, edi
mov rbx, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebeef
mov al, 1
xchg byte [rsi], al
test al, al
je 0x4eb8e7
add edi, 1
cmp edi, 0x63
ja 0x4ebf00
pause
cmp byte [rsi], 0
jne 0x4ebeec
jmp 0x4ebee0
xor ecx, ecx
call rbx
cmp byte [rsi], 0
jne 0x4ebeec
jmp 0x4ebee0
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebf19
add ebx, 1
cmp ebx, 0x63
ja 0x4ebf22
pause
jmp 0x4ebf26
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebf16
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebf16
jmp 0x4eba3f
xor ebx, ebx
mov rbp, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebf46
add ebx, 1
cmp ebx, 0x64
jae 0x4ebf4f
pause
jmp 0x4ebf53
xor ecx, ecx
call rbp
cmp byte [rdi], 0
jne 0x4ebf43
mov al, 1
xchg byte [rdi], al
test al, al
jne 0x4ebf43
jmp 0x4ebad0
xor ebp, ebp
mov r14, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x4ebf73
add ebp, 1
cmp ebp, 0x64
jae 0x4ebf7c
pause
jmp 0x4ebf81
xor ecx, ecx
call r14
cmp byte [rbx], 0
jne 0x4ebf70
mov al, 1
xchg byte [rbx], al
test al, al
jne 0x4ebf70
jmp 0x4ebb6d