Function at 0x140078160
Capabilities:
Print debug messages

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r15
sub rsp, 0xe8
mov rax, qword [0x140214ec8]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x148]
xor esi, esi
mov dword [rsp + 0x6c], ecx
mov ebx, ecx
mov rcx, qword [rsp + 0x150]
mov edi, edx
mov qword [rsp + 0x80], rcx
mov ebp, esi
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x78], r8
mov dword [rsp + 0x90], edx
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x68], esi
test rax, rax
jne 0x1400781d2
mov qword [rsp + 0xa0], rsi
jmp 0x1400781e7
mov edx, 0x7fffffff
mov rcx, rax
call fcn.1400d5428
mov qword [rsp + 0xa0], rax
mov eax, edi
mov qword [rsp + 0x60], rsi
not eax
mov qword [rsp + 0x98], rsi
shr eax, 0x1f
lea rcx, [rsp + 0x98]
mov dword [rsp + 0x94], eax
mov r13d, esi
mov r15, rsi
mov qword [rsp + 0xa8], rsi
mov rdi, rsi
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 0x140078d4e
mov qword [rsp + 0xe0], r14
lea rdx, [0x140000000]
xor r14d, r14d
mov qword [rsp + 0x120], r12
nop dword [rax]
test bl, 1
je 0x1400784ad
cmp r13d, 0x19
ja case.default.0x1400782b0
movsxd rax, r13d
mov ecx, dword [rdx + rax*4 + 0x78d54]
add rcx, rdx
jmp rcx
lea rbx, str.ESIF_TRACEMODULE_DEFAULT
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_DPTF
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_SHELL
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_UF
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_ACTION
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_APP
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_CONJURE
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_DOMAIN
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_DSP
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_EVENT
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_IPC
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_PARTICIPANT
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_PRIMITIVE
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_SERVICE
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_DATAVAULT
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_WEBSERVER
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_WINDOWS
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_ACTWIRELESS
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_UMDF
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_THERMALAPI
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_LINUX
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_LOGGINGMGR
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_APITRACE
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_POWER
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_PNP
jmp 0x1400783c7
lea rbx, str.ESIF_TRACEMODULE_TABLEOBJECT
jmp 0x1400783c7
lea rbx, [0x140127798]
mov edx, 0x14
mov rcx, rbx
call fcn.1400d5428
cmp rax, 0x11
lea r12, [rbx + 0x11]
mov rsi, r15
cmovb r12, rbx
test r12, r12
jne 0x1400783ed
mov rax, r14
jmp 0x1400783fa
mov edx, 0x104
mov rcx, r12
call fcn.1400d5428
add rax, 2
mov rcx, r15
add rdi, rax
mov rdx, rdi
call fcn.1400d49f4
mov rbx, rax
test r15, r15
jne 0x140078426
test rax, rax
je 0x140078426
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400ad180
mov qword [rsp + 0x60], rbx
mov r15, rbx
test rbx, rbx
je 0x140078595
test rsi, rsi
je 0x140078471
test rdi, rdi
je 0x1400784a2
mov rdx, rdi
mov rcx, rbx
call fcn.1400d5428
cmp rax, rdi
jne 0x140078458
mov byte [rbx + rdi - 1], bpl
jmp 0x140078471
mov r9, 0xffffffffffffffff
lea r8, [0x1401416a0]
mov rdx, rdi
mov rcx, rbx
call fcn.1400ebfb4
test rdi, rdi
je 0x1400784a2
mov rdx, rdi
mov rcx, rbx
call fcn.1400d5428
cmp rax, rdi
jne 0x14007848d
mov byte [rbx + rdi - 1], bpl
jmp 0x1400784a2
mov r9, 0xffffffffffffffff
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.1400ebfb4
mov ebx, dword [rsp + 0x6c]
lea rdx, [0x140000000]
shr ebx, 1
lea eax, [r13 + 1]
mov dword [rsp + 0x6c], ebx
cmove eax, r13d
mov r13d, eax
test ebx, ebx
jne 0x140078290
test r15, r15
je 0x140078d1c
mov eax, dword [rsp + 0x90]
mov ecx, 4
mov rdi, qword [rsp + 0x70]
cmp eax, ecx
cmova eax, ecx
xor esi, esi
test eax, eax
lea edx, [rcx + 0x58]
mov ebx, esi
mov rcx, rdi
cmovns ebx, eax
call fcn.1400ad888
test rax, rax
je 0x140078507
lea rdi, [rax + 1]
mov qword [rsp + 0x70], rdi
cmp r13d, 1
movsxd rax, ebx
mov r13d, dword [rsp + 0x140]
cmovne r14d, dword [rsp + 0x94]
lea rcx, [rax + rax*2]
lea r12, [rcx*8]
lea rax, [0x140000000]
test byte [r12 + rax + 0x20e450], 1
lea rcx, str._s_s:___s____llu_ms_:
je 0x140078600
mov r9, qword [r12 + rax + 0x20e440]
mov rax, qword [rsp + 0x98]
test r14d, r14d
je 0x14007859d
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 dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r8
lea r8, [0x140127c7b]
mov qword [rsp + 0x20], r15
call fcn.1400127d0
jmp 0x1400785bb
mov r15, rsi
jmp 0x140078d0f
mov rdx, rcx
mov qword [rsp + 0x28], rax
mov ecx, 1
mov qword [rsp + 0x20], r15
lea r8, [0x140127c7b]
call fcn.1400127d0
mov rbx, qword [rsp + 0x88]
mov ebp, eax
mov rdx, qword [rsp + 0x80]
mov rcx, rbx
call fcn.140012760
add ebp, eax
mov rax, qword [rsp + 0xa0]
mov dword [rsp + 0x68], ebp
test rax, rax
je 0x140078600
cmp byte [rbx + rax - 1], 0xa
je 0x140078600
lea rdx, [0x14012f9c0]
mov ecx, 1
call fcn.1400127d0
lea r15, [0x140000000]
test byte [r12 + r15 + 0x20e450], 8
je 0x14007888c
mov ecx, 3
call fcn.140012a70
test eax, eax
je 0x14007888c
xor eax, eax
mov qword [rsp + 0xa0], rsi
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.1400f02ac
lea r8, [rsp + 0xa0]
mov edx, 0x1e
lea rcx, [rsp + 0xb0]
call fcn.1400f2adc
mov rcx, qword [r12 + r15 + 0x20e440]
mov byte [rsp + 0xc4], sil
test rcx, rcx
jne 0x140078695
mov rbp, rsi
jmp 0x1400786a2
mov edx, 0x104
call fcn.1400d5428
mov rbp, rax
mov edx, 0x104
lea rcx, [rsp + 0xb0]
call fcn.1400d5428
mov r15, rax
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400786d1
mov edx, 0x104
mov rcx, rax
call fcn.1400d5428
mov rsi, rax
test rdi, rdi
je 0x1400786e6
mov edx, 0x104
mov rcx, rdi
call fcn.1400d5428
mov rdi, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.1400d5428
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14003cf90
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.1400d5428
add rsi, rbp
add rsi, rax
mov rcx, rsi
call fcn.140078dc0
mov r15, qword [rsp + 0x60]
mov rbx, rax
test rax, rax
je 0x140078862
mov rcx, qword [rsp + 0x98]
lea rdx, [0x140000000]
mov rax, qword [r12 + rdx + 0x20e440]
mov rdx, rbx
test r14d, r14d
je 0x1400787be
mov r9, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
mov qword [rsp + 0x48], rcx
mov rcx, rsi
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], r15
mov qword [rsp + 0x20], rax
call fcn.140078e00
jmp 0x1400787e0
mov qword [rsp + 0x30], rcx
lea r9, [rsp + 0xb4]
mov qword [rsp + 0x28], r15
mov rcx, rsi
mov r8, rdi
mov qword [rsp + 0x20], rax
call fcn.140078e00
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.140016120
test rdi, rdi
je 0x14007881f
cmp eax, 0xffffffff
jne 0x14007881f
lea eax, [rdi - 1]
lea edx, [rax + rbp]
test edx, edx
je 0x140078842
movsxd rax, edx
cmp byte [rax + rbx - 1], 0xa
je 0x140078842
mov r8, rsi
lea rdx, [0x14012f9c0]
mov rcx, rbx
call fcn.140078e80
mov r8, rbx
lea rdx, [0x14012ed4c]
mov ecx, 3
call fcn.140012d30
mov rcx, rbx
mov dword [rsp + 0x68], eax
call fcn.1400bae44
xor esi, esi
lea rdi, [0x140000000]
test byte [r12 + rdi + 0x20e450], 4
je 0x140078a7a
mov rcx, qword [r12 + rdi + 0x20e440]
test rcx, rcx
jne 0x140078893
mov rbp, rsi
jmp 0x1400788a0
mov r15, qword [rsp + 0x60]
jmp 0x140078864
mov edx, 0x104
call fcn.1400d5428
mov rbp, rax
mov edx, 0x104
lea rcx, [0x140127c7b]
call fcn.1400d5428
mov r15, rax
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400788ce
mov edx, 0x104
mov rcx, rax
call fcn.1400d5428
mov rsi, rax
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x1400788dc
xor edi, edi
jmp 0x1400788ec
mov edx, 0x104
mov rcx, rax
call fcn.1400d5428
mov rdi, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.1400d5428
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14003cf90
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.1400d5428
add rsi, rbp
add rsi, rax
mov rcx, rsi
call fcn.1400bae58
mov rbx, rax
test rax, rax
je 0x140078a6e
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.1400ad180
mov rcx, qword [rsp + 0x98]
lea rdx, [0x140000000]
mov rax, qword [r12 + rdx + 0x20e440]
mov rdx, rbx
mov r15, qword [rsp + 0x60]
test r14d, r14d
je 0x1400789d0
mov r9, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
mov qword [rsp + 0x48], rcx
mov rcx, rsi
mov dword [rsp + 0x40], r13d
mov qword [rsp + 0x38], r9
lea r9, [0x140127c7b]
mov qword [rsp + 0x30], r8
lea r8, str._s_s:___s__s__s_d___llu_ms_:
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.140078e00
jmp 0x1400789f1
mov qword [rsp + 0x30], rcx
lea r9, [0x140127c7b]
mov qword [rsp + 0x28], r15
mov rcx, rsi
mov r8, rdi
mov qword [rsp + 0x20], rax
call fcn.140078e00
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.140016120
test rdi, rdi
je 0x140078a30
cmp eax, 0xffffffff
jne 0x140078a30
lea eax, [rdi - 1]
add ebp, eax
mov dword [rsp + 0x68], ebp
je 0x140078a54
movsxd rax, ebp
cmp byte [rax + rbx - 1], 0xa
je 0x140078a54
mov r8, rsi
lea rdx, [0x14012f9c0]
mov rcx, rbx
call fcn.140078e80
mov rcx, rbx
call qword [sym.imp.KERNEL32.DLL_OutputDebugStringA]
mov rcx, rbx
call fcn.1400bae44
lea rdi, [0x140000000]
jmp 0x140078a7e
mov r15, qword [rsp + 0x60]
lea rdi, [0x140000000]
mov ebp, dword [rsp + 0x68]
test byte [r12 + rdi + 0x20e450], 2
je 0x140078d0f
mov rcx, qword [r12 + rdi + 0x20e440]
test rcx, rcx
jne 0x140078aa2
xor r15d, r15d
mov esi, r15d
jmp 0x140078ab2
mov edx, 0x104
call fcn.1400d5428
mov rsi, rax
xor r15d, r15d
mov edx, 0x104
lea rcx, [0x140127c7b]
call fcn.1400d5428
mov rbp, rax
mov rax, qword [rsp + 0x78]
test rax, rax
jne 0x140078ad5
mov rdi, r15
jmp 0x140078ae5
mov edx, 0x104
mov rcx, rax
call fcn.1400d5428
mov rdi, rax
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x140078aff
mov edx, 0x104
mov rcx, rax
call fcn.1400d5428
mov r15, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.1400d5428
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14003cf90
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.1400d5428
add rdi, rsi
add rdi, rax
mov rcx, rdi
call fcn.1400bae58
mov rbx, rax
test rax, rax
je 0x140078b7b
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400ad180
test rbx, rbx
je 0x140078d06
mov rbp, qword [rsp + 0x60]
lea r8, [0x1401399c8]
mov rcx, rbp
lea rdx, [0x1401416a0]
call fcn.140068a40
lea rdx, [0x140000000]
mov rsi, rax
mov rdx, qword [r12 + rdx + 0x20e440]
test r14d, r14d
je 0x140078c17
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, [0x14012ed28]
mov dword [rsp + 0x48], r13d
mov qword [rsp + 0x40], r9
lea r9, [0x140127c7b]
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.140078e00
jmp 0x140078c59
mov rcx, qword [rsp + 0x98]
lea r9, [0x140127c7b]
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, [0x14012ed28]
mov qword [rsp + 0x28], rdx
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.140078e00
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.140016120
test rdi, rdi
je 0x140078c95
cmp eax, 0xffffffff
jne 0x140078c95
lea eax, [rdi - 1]
add ebp, eax
je 0x140078caa
movsxd rax, ebp
cmp byte [rax + rbx - 1], 0xa
jne 0x140078caa
dec ebp
mov byte [rax + rbx - 1], 0
lea r8, [0x14014172c]
mov rcx, rbx
lea rdx, [0x140141730]
call fcn.140068a40
mov rdi, rax
test rax, rax
je 0x140078cd3
mov rcx, rbx
call fcn.1400bae44
mov rbx, rdi
lea rax, [0x140000000]
mov rdx, rbx
mov ecx, dword [r12 + rax + 0x20e448]
call fcn.1400a27c0
test rbx, rbx
je 0x140078cf7
mov rcx, rbx
call fcn.1400bae44
test rsi, rsi
je 0x140078d0a
mov rcx, rsi
call fcn.1400bae44
jmp 0x140078d0a
mov ebp, dword [rsp + 0x68]
mov r15, qword [rsp + 0x60]
test r15, r15
je 0x140078d1c
mov rcx, r15
call fcn.1400bae44
mov r12, qword [rsp + 0x120]
mov eax, ebp
mov r14, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1400ab870
add rsp, 0xe8
pop r15
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, ebp
jmp 0x140078d2e