Function at 0x1400ba2b0
Capabilities:
Print debug messages

Disassembly:
push rbx
push rbp
push rdi
push r13
push r14
push r15
sub rsp, 0xe8
mov rax, qword [0x14027aef8]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x148]
xor r15d, r15d
mov dword [rsp + 0x6c], ecx
mov ebx, ecx
mov rcx, qword [rsp + 0x150]
mov edi, edx
mov qword [rsp + 0x80], rcx
mov ebp, r15d
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x78], r8
mov dword [rsp + 0x90], edx
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x68], r15d
test rax, rax
jne 0x1400ba326
mov qword [rsp + 0xa0], r15
jmp 0x1400ba33b
mov edx, 0x7fffffff
mov rcx, rax
call fcn.14012a5d8
mov qword [rsp + 0xa0], rax
mov eax, edi
mov qword [rsp + 0x60], r15
not eax
mov qword [rsp + 0x98], r15
shr eax, 0x1f
lea rcx, [rsp + 0x98]
mov dword [rsp + 0x94], eax
mov r13d, r15d
mov r14, r15
mov qword [rsp + 0xa8], r15
mov rdi, r15
call qword [sym.imp.KERNEL32.DLL_QueryPerformanceFrequency]
lea rcx, [rsp + 0xa8]
call qword [sym.imp.KERNEL32.DLL_QueryPerformanceCounter]
movabs rax, 0x20c49ba5e353f7cf
imul qword [rsp + 0x98]
mov rcx, rdx
sar rcx, 7
mov rax, rcx
shr rax, 0x3f
add rcx, rax
mov rax, qword [rsp + 0xa8]
cqo
idiv rcx
mov qword [rsp + 0x98], rax
test ebx, ebx
je 0x1400baeba
mov qword [rsp + 0x120], rsi
lea rsi, [0x140000000]
mov qword [rsp + 0xe0], r12
nop word [rax + rax]
test bl, 1
je 0x1400ba61b
cmp r13d, 1
jne 0x1400ba3fb
lea rbx, str.ESIF_TRACEMODULE_IPF
jmp 0x1400ba535
cmp r13d, 0x1a
ja case.default.0x1400ba412
movsxd rax, r13d
mov ecx, dword [rsi + rax*4 + 0xbaec0]
add rcx, rsi
jmp rcx
lea rbx, str.ESIF_TRACEMODULE_DEFAULT
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_DPTF
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_SHELL
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_UF
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_ACTION
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_APP
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_CONJURE
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_DOMAIN
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_DSP
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_EVENT
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_IPC
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_PARTICIPANT
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_PRIMITIVE
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_SERVICE
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_DATAVAULT
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_DEPRECATED1
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_WINDOWS
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_ACTWIRELESS
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_UMDF
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_THERMALAPI
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_LINUX
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_LOGGINGMGR
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_APITRACE
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_POWER
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_PNP
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_TABLEOBJECT
jmp 0x1400ba535
lea rbx, str.ESIF_TRACEMODULE_ARBITRATION
jmp 0x1400ba535
lea rbx, [0x14017d5d8]
mov edx, 0x14
mov rcx, rbx
call fcn.14012a5d8
cmp rax, 0x11
lea r12, [rbx + 0x11]
mov rsi, r14
cmovb r12, rbx
test r12, r12
jne 0x1400ba55b
mov rax, r15
jmp 0x1400ba568
mov edx, 0x104
mov rcx, r12
call fcn.14012a5d8
add rax, 2
mov rcx, r14
add rdi, rax
mov rdx, rdi
call fcn.140129ba4
mov rbx, rax
test r14, r14
jne 0x1400ba594
test rax, rax
je 0x1400ba594
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140102230
mov qword [rsp + 0x60], rbx
mov r14, rbx
test rbx, rbx
je 0x1400bae7a
test rsi, rsi
je 0x1400ba5df
test rdi, rdi
je 0x1400ba610
mov rdx, rdi
mov rcx, rbx
call fcn.14012a5d8
cmp rax, rdi
jne 0x1400ba5c6
mov byte [rbx + rdi - 1], bpl
jmp 0x1400ba5df
mov r9, 0xffffffffffffffff
lea r8, [0x1401978f0]
mov rdx, rdi
mov rcx, rbx
call fcn.140141164
test rdi, rdi
je 0x1400ba610
mov rdx, rdi
mov rcx, rbx
call fcn.14012a5d8
cmp rax, rdi
jne 0x1400ba5fb
mov byte [rbx + rdi - 1], bpl
jmp 0x1400ba610
mov r9, 0xffffffffffffffff
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.140141164
mov ebx, dword [rsp + 0x6c]
lea rsi, [0x140000000]
shr ebx, 1
lea eax, [r13 + 1]
mov dword [rsp + 0x6c], ebx
cmove eax, r13d
mov r13d, eax
test ebx, ebx
jne 0x1400ba3e0
test r14, r14
je 0x1400bae87
mov eax, dword [rsp + 0x90]
mov ecx, 4
mov rdi, qword [rsp + 0x70]
cmp eax, ecx
mov ebx, r15d
cmova eax, ecx
test eax, eax
lea edx, [rcx + 0x58]
mov rcx, rdi
cmovns ebx, eax
call fcn.140102938
test rax, rax
je 0x1400ba674
lea rdi, [rax + 1]
mov qword [rsp + 0x70], rdi
cmp r13d, 1
movsxd rax, ebx
mov r13d, dword [rsp + 0x140]
mov r14d, r15d
cmovne r14d, dword [rsp + 0x94]
lea rcx, [rax + rax*2]
lea r12, [rcx*8]
test byte [r12 + rsi + 0x274830], 1
lea rcx, str._s_s:___s____llu_ms_:
je 0x1400ba76b
mov r9, qword [r12 + rsi + 0x274820]
mov rax, qword [rsp + 0x98]
test r14d, r14d
je 0x1400ba703
mov r8, qword [rsp + 0x78]
lea rdx, str._s_s:___s__s__s_d___llu_ms_:
mov qword [rsp + 0x40], rax
mov ecx, 1
mov rax, qword [rsp + 0x60]
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r8
lea r8, [0x14017dabb]
mov qword [rsp + 0x20], rax
call fcn.140046fa0
jmp 0x1400ba726
mov qword [rsp + 0x28], rax
lea r8, [0x14017dabb]
mov rax, qword [rsp + 0x60]
mov rdx, rcx
mov ecx, 1
mov qword [rsp + 0x20], rax
call fcn.140046fa0
mov rbx, qword [rsp + 0x88]
mov ebp, eax
mov rdx, qword [rsp + 0x80]
mov rcx, rbx
call fcn.140046f30
add ebp, eax
mov rax, qword [rsp + 0xa0]
mov dword [rsp + 0x68], ebp
test rax, rax
je 0x1400ba76b
cmp byte [rbx + rax - 1], 0xa
je 0x1400ba76b
lea rdx, [0x140184ea0]
mov ecx, 1
call fcn.140046fa0
test byte [r12 + rsi + 0x274830], 8
je 0x1400ba9d9
mov ecx, 3
call fcn.140047240
test eax, eax
je 0x1400ba9d9
xor eax, eax
mov qword [rsp + 0xa0], r15
xorps xmm0, xmm0
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0xa0]
mov dword [rsp + 0xc8], eax
movups xmmword [rsp + 0xb0], xmm0
mov word [rsp + 0xcc], ax
call fcn.14014545c
lea r8, [rsp + 0xa0]
mov edx, 0x1e
lea rcx, [rsp + 0xb0]
call fcn.140147c8c
mov rcx, qword [r12 + rsi + 0x274820]
mov byte [rsp + 0xc4], r15b
test rcx, rcx
jne 0x1400ba7f9
mov rbp, r15
jmp 0x1400ba806
mov edx, 0x104
call fcn.14012a5d8
mov rbp, rax
mov edx, 0x104
lea rcx, [rsp + 0xb0]
call fcn.14012a5d8
mov r15, rax
mov rax, qword [rsp + 0x78]
test rax, rax
jne 0x1400ba829
xor esi, esi
jmp 0x1400ba839
mov edx, 0x104
mov rcx, rax
call fcn.14012a5d8
mov rsi, rax
test rdi, rdi
je 0x1400ba84e
mov edx, 0x104
mov rcx, rdi
call fcn.14012a5d8
mov rdi, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.14012a5d8
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14007e4c0
movsxd rcx, eax
add rbx, 0x22
add rcx, rbx
mov edx, 0x104
add rcx, rdi
lea rdi, str._s_s:___s____llu_ms_:
add rsi, rcx
lea rcx, str._s_s:___s__s__s_d___llu_ms_:
add rsi, r15
test r14d, r14d
cmove rcx, rdi
call fcn.14012a5d8
add rsi, rbp
add rsi, rax
mov rcx, rsi
call fcn.1400baf30
mov rbx, rax
test rax, rax
je 0x1400ba9cf
mov rcx, qword [rsp + 0x98]
lea rdx, [0x140000000]
mov rax, qword [r12 + rdx + 0x274820]
mov rdx, rbx
test r14d, r14d
je 0x1400ba926
mov r9, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rsp + 0x60]
mov dword [rsp + 0x40], r13d
mov qword [rsp + 0x38], r9
lea r9, [rsp + 0xb4]
mov qword [rsp + 0x30], r8
lea r8, str._s_s:___s__s__s_d___llu_ms_:
mov qword [rsp + 0x28], rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400baf70
jmp 0x1400ba94d
mov qword [rsp + 0x30], rcx
lea r9, [rsp + 0xb4]
mov rcx, qword [rsp + 0x60]
mov r8, rdi
mov qword [rsp + 0x28], rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400baf70
mov r9, qword [rsp + 0x88]
mov ebp, eax
cdqe
mov rdi, rsi
sub rdi, rax
mov r8, 0xffffffffffffffff
mov rdx, rdi
lea rcx, [rax + rbx]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
call fcn.140049d80
test rdi, rdi
je 0x1400ba98c
cmp eax, 0xffffffff
jne 0x1400ba98c
lea eax, [rdi - 1]
lea edx, [rax + rbp]
test edx, edx
je 0x1400ba9af
movsxd rax, edx
cmp byte [rax + rbx - 1], 0xa
je 0x1400ba9af
mov r8, rsi
lea rdx, [0x140184ea0]
mov rcx, rbx
call fcn.1400baff0
mov r8, rbx
lea rdx, [0x14018422c]
mov ecx, 3
call fcn.1400474e0
mov rcx, rbx
mov dword [rsp + 0x68], eax
call fcn.14010fff4
lea rsi, [0x140000000]
xor r15d, r15d
test byte [r12 + rsi + 0x274830], 4
je 0x1400babe5
mov rcx, qword [r12 + rsi + 0x274820]
test rcx, rcx
jne 0x1400ba9fa
mov rbp, r15
jmp 0x1400baa07
mov edx, 0x104
call fcn.14012a5d8
mov rbp, rax
mov edx, 0x104
lea rcx, [0x14017dabb]
call fcn.14012a5d8
mov r15, rax
mov rax, qword [rsp + 0x78]
test rax, rax
jne 0x1400baa29
xor esi, esi
jmp 0x1400baa39
mov edx, 0x104
mov rcx, rax
call fcn.14012a5d8
mov rsi, rax
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x1400baa47
xor edi, edi
jmp 0x1400baa57
mov edx, 0x104
mov rcx, rax
call fcn.14012a5d8
mov rdi, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.14012a5d8
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14007e4c0
movsxd rcx, eax
add rbx, 0x22
add rcx, rbx
mov edx, 0x104
add rcx, rdi
lea rdi, str._s_s:___s____llu_ms_:
add rsi, rcx
lea rcx, str._s_s:___s__s__s_d___llu_ms_:
add rsi, r15
test r14d, r14d
cmove rcx, rdi
call fcn.14012a5d8
add rsi, rbp
add rsi, rax
mov rcx, rsi
call fcn.140110008
mov rbx, rax
test rax, rax
je 0x1400babde
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.140102230
mov rcx, qword [rsp + 0x98]
lea rdx, [0x140000000]
mov rax, qword [r12 + rdx + 0x274820]
mov rdx, rbx
test r14d, r14d
je 0x1400bab3b
mov r9, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rsp + 0x60]
mov dword [rsp + 0x40], r13d
mov qword [rsp + 0x38], r9
lea r9, [0x14017dabb]
mov qword [rsp + 0x30], r8
lea r8, str._s_s:___s__s__s_d___llu_ms_:
mov qword [rsp + 0x28], rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400baf70
jmp 0x1400bab61
mov qword [rsp + 0x30], rcx
lea r9, [0x14017dabb]
mov rcx, qword [rsp + 0x60]
mov r8, rdi
mov qword [rsp + 0x28], rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400baf70
mov r9, qword [rsp + 0x88]
mov ebp, eax
cdqe
mov rdi, rsi
sub rdi, rax
mov r8, 0xffffffffffffffff
mov rdx, rdi
lea rcx, [rbx + rax]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
call fcn.140049d80
test rdi, rdi
je 0x1400baba0
cmp eax, 0xffffffff
jne 0x1400baba0
lea eax, [rdi - 1]
add ebp, eax
mov dword [rsp + 0x68], ebp
je 0x1400babc4
movsxd rax, ebp
cmp byte [rax + rbx - 1], 0xa
je 0x1400babc4
mov r8, rsi
lea rdx, [0x140184ea0]
mov rcx, rbx
call fcn.1400baff0
mov rcx, rbx
call qword [sym.imp.KERNEL32.DLL_OutputDebugStringA]
mov rcx, rbx
call fcn.14010fff4
lea rsi, [0x140000000]
jmp 0x1400babe9
lea rsi, [0x140000000]
mov ebp, dword [rsp + 0x68]
test byte [r12 + rsi + 0x274830], 2
je 0x1400bae75
mov rcx, qword [r12 + rsi + 0x274820]
test rcx, rcx
jne 0x1400bac0d
xor r15d, r15d
mov esi, r15d
jmp 0x1400bac1d
mov edx, 0x104
call fcn.14012a5d8
mov rsi, rax
xor r15d, r15d
mov edx, 0x104
lea rcx, [0x14017dabb]
call fcn.14012a5d8
mov rbp, rax
mov rax, qword [rsp + 0x78]
test rax, rax
jne 0x1400bac40
mov rdi, r15
jmp 0x1400bac50
mov edx, 0x104
mov rcx, rax
call fcn.14012a5d8
mov rdi, rax
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1400bac6a
mov edx, 0x104
mov rcx, rax
call fcn.14012a5d8
mov r15, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.14012a5d8
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14007e4c0
movsxd rcx, eax
add rbx, 0x32
add rcx, rbx
mov edx, 0x104
add rcx, r15
lea r15, str._sESIF__s__TYPE:__s_MODULE:__s_TIME__llu_ms_n_n
add rdi, rcx
lea rcx, str._sESIF__s__TYPE:__s_MODULE:__s_FUNC:__s_FILE:__s_LINE:__d_TIME:__llu_ms_n_n
add rdi, rbp
test r14d, r14d
cmove rcx, r15
call fcn.14012a5d8
add rdi, rsi
add rdi, rax
mov rcx, rdi
call fcn.140110008
mov rbx, rax
test rax, rax
je 0x1400bace6
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140102230
test rbx, rbx
je 0x1400bae71
mov rbp, qword [rsp + 0x60]
lea r8, [0x14018f6b8]
mov rcx, rbp
lea rdx, [0x1401978f0]
call fcn.1400ac640
lea rdx, [0x140000000]
mov rsi, rax
mov rdx, qword [r12 + rdx + 0x274820]
test r14d, r14d
je 0x1400bad82
mov r9, qword [rsp + 0x70]
test rax, rax
mov r8, qword [rsp + 0x78]
mov rcx, rbp
cmovne rcx, rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x50], rax
lea rax, [0x140184208]
mov dword [rsp + 0x48], r13d
mov qword [rsp + 0x40], r9
lea r9, [0x14017dabb]
mov qword [rsp + 0x38], r8
lea r8, str._sESIF__s__TYPE:__s_MODULE:__s_FUNC:__s_FILE:__s_LINE:__d_TIME:__llu_ms_n_n
mov qword [rsp + 0x30], rcx
mov rcx, rdi
mov qword [rsp + 0x28], rdx
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400baf70
jmp 0x1400badc4
mov rcx, qword [rsp + 0x98]
lea r9, [0x14017dabb]
mov qword [rsp + 0x38], rcx
test rsi, rsi
mov rax, rbp
mov r8, r15
cmovne rax, rsi
mov rcx, rdi
mov qword [rsp + 0x30], rax
lea rax, [0x140184208]
mov qword [rsp + 0x28], rdx
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400baf70
mov r9, qword [rsp + 0x88]
mov ebp, eax
cdqe
mov r8, 0xffffffffffffffff
sub rdi, rax
mov rdx, rdi
lea rcx, [rbx + rax]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x20], rax
call fcn.140049d80
test rdi, rdi
je 0x1400bae00
cmp eax, 0xffffffff
jne 0x1400bae00
lea eax, [rdi - 1]
add ebp, eax
je 0x1400bae15
movsxd rax, ebp
cmp byte [rax + rbx - 1], 0xa
jne 0x1400bae15
dec ebp
mov byte [rax + rbx - 1], 0
lea r8, [0x14019797c]
mov rcx, rbx
lea rdx, [0x140197980]
call fcn.1400ac640
mov rdi, rax
test rax, rax
je 0x1400bae3e
mov rcx, rbx
call fcn.14010fff4
mov rbx, rdi
lea rax, [0x140000000]
mov rdx, rbx
mov ecx, dword [r12 + rax + 0x274828]
call fcn.1400d8f30
test rbx, rbx
je 0x1400bae62
mov rcx, rbx
call fcn.14010fff4
test rsi, rsi
je 0x1400bae75
mov rcx, rsi
call fcn.14010fff4
jmp 0x1400bae75
mov ebp, dword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
test rsi, rsi
je 0x1400bae87
mov rcx, rsi
call fcn.14010fff4
mov r12, qword [rsp + 0xe0]
mov eax, ebp
mov rsi, qword [rsp + 0x120]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.140100920
add rsp, 0xe8
pop r15
pop r14
pop r13
pop rdi
pop rbp
pop rbx
ret
mov eax, ebp
jmp 0x1400bae99