Function at 0x140077c50
Capabilities:
Print debug messages

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r15
sub rsp, 0xe8
mov rax, qword [0x140210ef8]
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 0x140077cc2
mov qword [rsp + 0xa0], rsi
jmp 0x140077cd7
mov edx, 0x7fffffff
mov rcx, rax
call fcn.1400cf7a8
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 0x14007883e
mov qword [rsp + 0xe0], r14
lea rdx, [0x140000000]
xor r14d, r14d
mov qword [rsp + 0x120], r12
nop dword [rax]
test bl, 1
je 0x140077f9d
cmp r13d, 0x19
ja case.default.0x140077da0
movsxd rax, r13d
mov ecx, dword [rdx + rax*4 + 0x78844]
add rcx, rdx
jmp rcx
lea rbx, str.ESIF_TRACEMODULE_DEFAULT
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_DPTF
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_SHELL
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_UF
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_ACTION
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_APP
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_CONJURE
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_DOMAIN
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_DSP
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_EVENT
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_IPC
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_PARTICIPANT
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_PRIMITIVE
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_SERVICE
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_DATAVAULT
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_WEBSERVER
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_WINDOWS
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_ACTWIRELESS
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_UMDF
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_THERMALAPI
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_LINUX
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_LOGGINGMGR
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_APITRACE
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_POWER
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_PNP
jmp 0x140077eb7
lea rbx, str.ESIF_TRACEMODULE_TABLEOBJECT
jmp 0x140077eb7
lea rbx, [0x14011f5a8]
mov edx, 0x14
mov rcx, rbx
call fcn.1400cf7a8
cmp rax, 0x11
lea r12, [rbx + 0x11]
mov rsi, r15
cmovb r12, rbx
test r12, r12
jne 0x140077edd
mov rax, r14
jmp 0x140077eea
mov edx, 0x104
mov rcx, r12
call fcn.1400cf7a8
add rax, 2
mov rcx, r15
add rdi, rax
mov rdx, rdi
call fcn.1400ced74
mov rbx, rax
test r15, r15
jne 0x140077f16
test rax, rax
je 0x140077f16
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400a7d00
mov qword [rsp + 0x60], rbx
mov r15, rbx
test rbx, rbx
je 0x140078085
test rsi, rsi
je 0x140077f61
test rdi, rdi
je 0x140077f92
mov rdx, rdi
mov rcx, rbx
call fcn.1400cf7a8
cmp rax, rdi
jne 0x140077f48
mov byte [rbx + rdi - 1], bpl
jmp 0x140077f61
mov r9, 0xffffffffffffffff
lea r8, [0x14013a480]
mov rdx, rdi
mov rcx, rbx
call fcn.1400e6528
test rdi, rdi
je 0x140077f92
mov rdx, rdi
mov rcx, rbx
call fcn.1400cf7a8
cmp rax, rdi
jne 0x140077f7d
mov byte [rbx + rdi - 1], bpl
jmp 0x140077f92
mov r9, 0xffffffffffffffff
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.1400e6528
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 0x140077d80
test r15, r15
je 0x14007880c
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.1400a8408
test rax, rax
je 0x140077ff7
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 + 0x20a170], 1
lea rcx, str._s_s:___s____llu_ms_:
je 0x1400780f0
mov r9, qword [r12 + rax + 0x20a160]
mov rax, qword [rsp + 0x98]
test r14d, r14d
je 0x14007808d
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, [0x140120e2b]
mov qword [rsp + 0x20], r15
call fcn.140013260
jmp 0x1400780ab
mov r15, rsi
jmp 0x1400787ff
mov rdx, rcx
mov qword [rsp + 0x28], rax
mov ecx, 1
mov qword [rsp + 0x20], r15
lea r8, [0x140120e2b]
call fcn.140013260
mov rbx, qword [rsp + 0x88]
mov ebp, eax
mov rdx, qword [rsp + 0x80]
mov rcx, rbx
call fcn.1400131f0
add ebp, eax
mov rax, qword [rsp + 0xa0]
mov dword [rsp + 0x68], ebp
test rax, rax
je 0x1400780f0
cmp byte [rbx + rax - 1], 0xa
je 0x1400780f0
lea rdx, [0x140128770]
mov ecx, 1
call fcn.140013260
lea r15, [0x140000000]
test byte [r12 + r15 + 0x20a170], 8
je 0x14007837c
mov ecx, 3
call fcn.140013500
test eax, eax
je 0x14007837c
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.1400ea684
lea r8, [rsp + 0xa0]
mov edx, 0x1e
lea rcx, [rsp + 0xb0]
call fcn.1400ecd7c
mov rcx, qword [r12 + r15 + 0x20a160]
mov byte [rsp + 0xc4], sil
test rcx, rcx
jne 0x140078185
mov rbp, rsi
jmp 0x140078192
mov edx, 0x104
call fcn.1400cf7a8
mov rbp, rax
mov edx, 0x104
lea rcx, [rsp + 0xb0]
call fcn.1400cf7a8
mov r15, rax
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400781c1
mov edx, 0x104
mov rcx, rax
call fcn.1400cf7a8
mov rsi, rax
test rdi, rdi
je 0x1400781d6
mov edx, 0x104
mov rcx, rdi
call fcn.1400cf7a8
mov rdi, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.1400cf7a8
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14003d4c0
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.1400cf7a8
add rsi, rbp
add rsi, rax
mov rcx, rsi
call fcn.1400788b0
mov r15, qword [rsp + 0x60]
mov rbx, rax
test rax, rax
je 0x140078352
mov rcx, qword [rsp + 0x98]
lea rdx, [0x140000000]
mov rax, qword [r12 + rdx + 0x20a160]
mov rdx, rbx
test r14d, r14d
je 0x1400782ae
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.1400788f0
jmp 0x1400782d0
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.1400788f0
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.140016bb0
test rdi, rdi
je 0x14007830f
cmp eax, 0xffffffff
jne 0x14007830f
lea eax, [rdi - 1]
lea edx, [rax + rbp]
test edx, edx
je 0x140078332
movsxd rax, edx
cmp byte [rax + rbx - 1], 0xa
je 0x140078332
mov r8, rsi
lea rdx, [0x140128770]
mov rcx, rbx
call fcn.140078970
mov r8, rbx
lea rdx, [0x140127afc]
mov ecx, 3
call fcn.1400137c0
mov rcx, rbx
mov dword [rsp + 0x68], eax
call fcn.1400b5144
xor esi, esi
lea rdi, [0x140000000]
test byte [r12 + rdi + 0x20a170], 4
je 0x14007856a
mov rcx, qword [r12 + rdi + 0x20a160]
test rcx, rcx
jne 0x140078383
mov rbp, rsi
jmp 0x140078390
mov r15, qword [rsp + 0x60]
jmp 0x140078354
mov edx, 0x104
call fcn.1400cf7a8
mov rbp, rax
mov edx, 0x104
lea rcx, [0x140120e2b]
call fcn.1400cf7a8
mov r15, rax
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400783be
mov edx, 0x104
mov rcx, rax
call fcn.1400cf7a8
mov rsi, rax
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x1400783cc
xor edi, edi
jmp 0x1400783dc
mov edx, 0x104
mov rcx, rax
call fcn.1400cf7a8
mov rdi, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.1400cf7a8
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14003d4c0
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.1400cf7a8
add rsi, rbp
add rsi, rax
mov rcx, rsi
call fcn.1400b5158
mov rbx, rax
test rax, rax
je 0x14007855e
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.1400a7d00
mov rcx, qword [rsp + 0x98]
lea rdx, [0x140000000]
mov rax, qword [r12 + rdx + 0x20a160]
mov rdx, rbx
mov r15, qword [rsp + 0x60]
test r14d, r14d
je 0x1400784c0
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, [0x140120e2b]
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.1400788f0
jmp 0x1400784e1
mov qword [rsp + 0x30], rcx
lea r9, [0x140120e2b]
mov qword [rsp + 0x28], r15
mov rcx, rsi
mov r8, rdi
mov qword [rsp + 0x20], rax
call fcn.1400788f0
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.140016bb0
test rdi, rdi
je 0x140078520
cmp eax, 0xffffffff
jne 0x140078520
lea eax, [rdi - 1]
add ebp, eax
mov dword [rsp + 0x68], ebp
je 0x140078544
movsxd rax, ebp
cmp byte [rax + rbx - 1], 0xa
je 0x140078544
mov r8, rsi
lea rdx, [0x140128770]
mov rcx, rbx
call fcn.140078970
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov rcx, rbx
call fcn.1400b5144
lea rdi, [0x140000000]
jmp 0x14007856e
mov r15, qword [rsp + 0x60]
lea rdi, [0x140000000]
mov ebp, dword [rsp + 0x68]
test byte [r12 + rdi + 0x20a170], 2
je 0x1400787ff
mov rcx, qword [r12 + rdi + 0x20a160]
test rcx, rcx
jne 0x140078592
xor r15d, r15d
mov esi, r15d
jmp 0x1400785a2
mov edx, 0x104
call fcn.1400cf7a8
mov rsi, rax
xor r15d, r15d
mov edx, 0x104
lea rcx, [0x140120e2b]
call fcn.1400cf7a8
mov rbp, rax
mov rax, qword [rsp + 0x78]
test rax, rax
jne 0x1400785c5
mov rdi, r15
jmp 0x1400785d5
mov edx, 0x104
mov rcx, rax
call fcn.1400cf7a8
mov rdi, rax
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1400785ef
mov edx, 0x104
mov rcx, rax
call fcn.1400cf7a8
mov r15, rax
mov rcx, qword [rsp + 0x60]
mov edx, 0x104
call fcn.1400cf7a8
mov rdx, qword [rsp + 0x80]
mov rbx, rax
mov rcx, qword [rsp + 0x88]
call fcn.14003d4c0
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.1400cf7a8
add rdi, rsi
add rdi, rax
mov rcx, rdi
call fcn.1400b5158
mov rbx, rax
test rax, rax
je 0x14007866b
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400a7d00
test rbx, rbx
je 0x1400787f6
mov rbp, qword [rsp + 0x60]
lea r8, [0x14012fe68]
mov rcx, rbp
lea rdx, [0x14013a480]
call fcn.140068630
lea rdx, [0x140000000]
mov rsi, rax
mov rdx, qword [r12 + rdx + 0x20a160]
test r14d, r14d
je 0x140078707
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, [0x140127ad8]
mov dword [rsp + 0x48], r13d
mov qword [rsp + 0x40], r9
lea r9, [0x140120e2b]
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.1400788f0
jmp 0x140078749
mov rcx, qword [rsp + 0x98]
lea r9, [0x140120e2b]
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, [0x140127ad8]
mov qword [rsp + 0x28], rdx
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400788f0
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.140016bb0
test rdi, rdi
je 0x140078785
cmp eax, 0xffffffff
jne 0x140078785
lea eax, [rdi - 1]
add ebp, eax
je 0x14007879a
movsxd rax, ebp
cmp byte [rax + rbx - 1], 0xa
jne 0x14007879a
dec ebp
mov byte [rax + rbx - 1], 0
lea r8, [0x14013a50c]
mov rcx, rbx
lea rdx, [0x14013a510]
call fcn.140068630
mov rdi, rax
test rax, rax
je 0x1400787c3
mov rcx, rbx
call fcn.1400b5144
mov rbx, rdi
lea rax, [0x140000000]
mov rdx, rbx
mov ecx, dword [r12 + rax + 0x20a168]
call fcn.14009d1b0
test rbx, rbx
je 0x1400787e7
mov rcx, rbx
call fcn.1400b5144
test rsi, rsi
je 0x1400787fa
mov rcx, rsi
call fcn.1400b5144
jmp 0x1400787fa
mov ebp, dword [rsp + 0x68]
mov r15, qword [rsp + 0x60]
test r15, r15
je 0x14007880c
mov rcx, r15
call fcn.1400b5144
mov r12, qword [rsp + 0x120]
mov eax, ebp
mov r14, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1400a6220
add rsp, 0xe8
pop r15
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, ebp
jmp 0x14007881e