Function at 0x140053bb0
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x298
mov rax, qword [rsp + 0x308]
mov dword [rax], 0
mov rax, qword [rsp + 0x310]
mov dword [rax], 0
mov rbp, r8
mov r12, r9
mov r13, rcx
lea rbx, [rsp + 0xd0]
mov qword [rsp + 0x28], r9
mov r9d, 0x40
mov r14d, edx
mov qword [rsp + 0x20], r8
xor r8d, r8d
mov qword [rsp + 0x30], rbx
call sym.backtrace_get_view
test eax, eax
je 0x140053c5d
mov rax, qword [rsp + 0xd0]
cmp byte [rax], 0x4d
je 0x140053c90
mov r9, r12
mov r8, rbp
mov rdx, rbx
mov rcx, r13
call sym.backtrace_release_view
mov qword [rsp + 0x30], rbx
xor r8d, r8d
mov edx, r14d
mov qword [rsp + 0x28], r12
mov r9d, 0x18
mov rcx, r13
mov qword [rsp + 0x20], rbp
call sym.backtrace_get_view
test eax, eax
jne 0x140053dc0
cmp r14d, 0xffffffff
jne 0x140053c80
nop dword [rax + rax]
xor eax, eax
add rsp, 0x298
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r8, r12
mov rdx, rbp
mov ecx, r14d
call sym.backtrace_close
jmp 0x140053c68
cmp byte [rax + 1], 0x5a
jne 0x140053c21
mov r9, r12
mov r8, rbp
mov rdx, rbx
mov rcx, r13
mov esi, dword [rax + 0x3c]
call sym.backtrace_release_view
mov qword [rsp + 0x30], rbx
mov edx, r14d
mov rcx, r13
mov qword [rsp + 0x28], r12
mov r9d, 0x18
mov r8, rsi
mov qword [rsp + 0x20], rbp
call sym.backtrace_get_view
test eax, eax
je 0x140053c5d
test rsi, rsi
je 0x140053dc0
mov r9, r12
mov r8, rbp
mov rdx, rbx
mov rcx, r13
mov rax, qword [rsp + 0xd0]
mov edi, dword [rax]
movdqu xmm0, xmmword [rax + 4]
mov eax, dword [rax + 0x14]
movaps xmmword [rsp + 0xb0], xmm0
mov dword [rsp + 0xc0], eax
call sym.backtrace_release_view
cmp edi, 0x4550
jne 0x140053dd1
lea rcx, [rsp + 0xf0]
movzx eax, word [rsp + 0xb2]
lea r8, [rsi + 0x18]
mov edx, r14d
mov qword [rsp + 0x30], rcx
mov ebx, dword [rsp + 0xbc]
movzx r15d, word [rsp + 0xc0]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rbp
mov word [rsp + 0x70], ax
lea rax, [rax + rax*4]
mov qword [rsp + 0x60], rcx
lea r9, [r15 + rax*8]
mov rcx, r13
call sym.backtrace_get_view
test eax, eax
je 0x140053c5d
mov rax, qword [rsp + 0xf0]
lea rcx, [rax + r15]
mov qword [rsp + 0x78], rcx
cmp r15w, 0x20
jbe 0x140053def
movzx edx, word [rax]
cmp dx, 0x10b
je 0x140054332
cmp dx, 0x20b
jne 0x14005437f
mov dword [rsp + 0xa4], 1
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xa8], rax
jmp 0x140053e06
mov r9, r12
mov r8, rbp
mov rdx, rbx
mov rcx, r13
call sym.backtrace_release_view
xor r8d, r8d
lea rdx, str.executable_file_is_not_COFF
mov rcx, r12
call rbp
cmp r14d, 0xffffffff
je 0x140053c68
jmp 0x140053c80
mov qword [rsp + 0xa8], 0
mov dword [rsp + 0xa4], 0
movzx eax, word [rsp + 0x70]
mov r15d, dword [rsp + 0xb8]
mov dword [rsp + 0x58], eax
test r15d, r15d
je 0x140053ebc
lea eax, [rbx + rbx*8]
mov qword [rsp + 0x28], r12
mov r8, r15
mov edx, r14d
lea rsi, [rsp + 0x130]
mov qword [rsp + 0x20], rbp
lea edi, [rax + rax]
mov rcx, r13
mov qword [rsp + 0x30], rsi
lea r9, [rdi + 4]
mov qword [rsp + 0x80], rdi
call sym.backtrace_get_view
test eax, eax
je 0x14005438e
mov rax, qword [rsp + 0x130]
mov dword [rsp + 0x6c], 0
mov eax, dword [rax + rdi]
mov qword [rsp + 0x90], rax
cmp rax, 4
ja 0x14005465b
mov r15d, dword [rsp + 0x58]
lea rdi, [rsp + 0x170]
mov ecx, 0x12
xor eax, eax
mov qword [rsp + 0x88], rdi
rep stosq qword [rdi], rax
test r15d, r15d
je 0x140054868
mov dword [rsp + 0xa0], 1
mov r15d, ebx
jmp 0x140053f0d
lea rdi, [rsp + 0x170]
xor eax, eax
mov ecx, 0x12
mov qword [rsp + 0x88], rdi
rep stosq qword [rdi], rax
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x1400547a0
mov dword [rsp + 0xa0], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x90], 0
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x50], 0
mov rsi, qword [rsp + 0x78]
lea rbx, [0x1400f9060]
mov dword [rsp + 0x98], r15d
mov qword [rsp + 0x2e0], r13
mov dword [rsp + 0x2e8], r14d
mov qword [rsp + 0x2f0], rbp
mov qword [rsp + 0x2f8], r12
nop dword [rax]
xor r12d, r12d
xor r13d, r13d
cmp byte [rsi], 0x2f
je 0x140054300
mov r14, qword [rsp + 0x110]
mov r15, qword [rsp + 0x120]
xor edi, edi
add r14, r12
jmp 0x140053fa3
cmp r12, r15
jae 0x140053f99
mov rdx, r14
call sym.strcmp
test eax, eax
sete al
movzx eax, al
test eax, eax
jne 0x140053fd6
add rdi, 1
cmp rdi, 9
je 0x140053ffc
mov rcx, qword [rbx + rdi*8]
mov ebp, edi
test r13d, r13d
jne 0x140053f80
xor eax, eax
movzx edx, byte [rcx + rax]
cmp dl, byte [rsi + rax]
jne 0x1400542e0
test dl, dl
je 0x140053fd6
add rax, 1
cmp rax, 8
jne 0x140053fb0
xor eax, eax
cmp byte [rcx + 8], 0
sete al
jmp 0x140053f95
mov eax, dword [rsi + 0x14]
movsxd r8, ebp
mov edx, dword [rsi + 0x10]
shl r8, 4
mov qword [rsp + r8 + 0x170], rax
mov eax, dword [rsi + 8]
cmp eax, edx
cmova rax, rdx
mov qword [rsp + r8 + 0x178], rax
add dword [rsp + 0x50], 1
mov edi, dword [rsp + 0x58]
add rsi, 0x28
mov eax, dword [rsp + 0x50]
cmp eax, edi
jb 0x140053f50
mov r15d, dword [rsp + 0x98]
mov r13, qword [rsp + 0x2e0]
mov r14d, dword [rsp + 0x2e8]
mov rbp, qword [rsp + 0x2f0]
mov r12, qword [rsp + 0x2f8]
test r15d, r15d
je 0x140054169
mov r9, r12
mov r8, rbp
mov edx, 0x18
mov rcx, r13
call sym.backtrace_alloc
mov rbx, rax
test rax, rax
je 0x1400543d3
mov rax, qword [rsp + 0x110]
mov r15, qword [rsp + 0x130]
movabs rdx, 0xe38e38e38e38e38f
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x80]
mul rdx
shr rdx, 4
cmp qword [rsp + 0x80], 0x11
mov rsi, rdx
jbe 0x14005489c
mov qword [rsp + 0x58], rbx
movzx r11d, word [rsp + 0x70]
xor r10d, r10d
xor edi, edi
mov rbx, qword [rsp + 0x90]
xor edx, edx
jmp 0x1400540f9
mov r8d, dword [rax + 4]
cmp r8, rbx
jae 0x1400543a6
shr cx, 4
cmp cx, 2
jne 0x1400540e7
cmp r9b, 1
sbb rdi, 0xffffffffffffffff
movzx eax, byte [rax + 0x11]
lea rdx, [rdx + rax + 1]
cmp rdx, rsi
jae 0x140054468
lea rax, [rdx + rdx*8]
lea rax, [r15 + rax*2]
movzx r8d, word [rax + 0xc]
movzx ecx, word [rax + 0xe]
test r8w, r8w
setg r9b
cmp r11w, r8w
jae 0x140054121
test r9b, r9b
jne 0x1400543a6
cmp byte [rax], 0
je 0x1400540c8
shr cx, 4
cmp cx, 2
jne 0x1400540e7
test r9b, r9b
je 0x1400540e7
add rdi, 1
xor ecx, ecx
cmp byte [rax + rcx], 0
je 0x14005414b
add rcx, 1
cmp rcx, 8
jne 0x14005413b
lea r10, [rcx + r10 + 1]
jmp 0x1400540e7
mov rdx, rcx
jmp 0x14005415a
mov rdx, rax
mov rax, qword [rdx]
test rax, rax
jne 0x140054157
lock cmpxchg qword [rdx], rbx
jne 0x140054152
mov rdx, qword [rsp + 0x60]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
mov r11d, dword [rsp + 0xa0]
test r11d, r11d
jne 0x140054314
mov rdx, qword [rsp + 0x88]
lea rsi, [rsp + 0x200]
xor r9d, r9d
xor ebx, ebx
nop word [rax + rax]
mov rcx, qword [rdx + 8]
test rcx, rcx
je 0x1400541d2
mov rax, qword [rdx]
cmp rbx, rax
mov r8, rax
cmovle r8, rbx
test rbx, rbx
mov rbx, r8
cmove rbx, rax
add rax, rcx
cmp r9, rax
cmovl r9, rax
add rdx, 0x10
cmp rdx, rsi
jne 0x1400541a8
test rbx, rbx
je 0x14005434d
test r9, r9
je 0x14005434d
mov qword [rsp + 0x28], r12
sub r9, rbx
mov r8, rbx
mov edx, r14d
lea rdi, [rsp + 0x150]
mov qword [rsp + 0x20], rbp
mov rcx, r13
mov qword [rsp + 0x30], rdi
call sym.backtrace_get_view
test eax, eax
je 0x14005443f
mov r8, r12
mov rdx, rbp
mov ecx, r14d
call sym.backtrace_close
test eax, eax
je 0x140054760
mov r10, qword [rsp + 0x88]
mov r9, qword [rsp + 0x150]
lea rax, [rsp + 0x178]
lea rdx, [rsp + 0x248]
add r10, 0x98
mov r8, qword [rax]
xor ecx, ecx
mov qword [rdx], r8
test r8, r8
je 0x140054271
mov rcx, r9
sub rcx, rbx
add rcx, qword [rax - 8]
add rax, 0x10
mov qword [rdx - 0x48], rcx
add rdx, 8
cmp r10, rax
jne 0x14005425a
mov rax, qword [rsp + 0x300]
xor r9d, r9d
xor edx, edx
mov r8, rsi
mov qword [rsp + 0x40], 0
mov rcx, r13
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], 0
call sym.backtrace_dwarf_add
test eax, eax
je 0x140054832
mov rax, qword [rsp + 0x310]
mov dword [rax], 1
jmp 0x140054375
add rdi, 1
cmp rdi, 9
je 0x140053ffc
mov rcx, qword [rbx + rdi*8]
mov ebp, edi
jmp 0x140053fae
lea rcx, [rsi + 1]
call sym.atoi
mov r12d, eax
mov r13, r12
jmp 0x140053f5f
lea rsi, [rsp + 0x130]
mov r9, r12
mov r8, rbp
mov rdx, rsi
mov rcx, r13
call sym.backtrace_release_view
jmp 0x14005418d
mov dword [rsp + 0xa4], 0
mov eax, dword [rax + 0x1c]
mov qword [rsp + 0xa8], rax
jmp 0x140053e06
mov r8, r12
mov rdx, rbp
mov ecx, r14d
call sym.backtrace_close
test eax, eax
je 0x14005443f
mov rax, qword [rsp + 0x300]
lea rbx, [sym.coff_nodebug]
mov qword [rax], rbx
mov eax, 1
jmp 0x140053c6a
xor r8d, r8d
lea rdx, str.bad_magic_in_PE_optional_header
mov rcx, r12
call rbp
mov rdx, qword [rsp + 0x60]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
jmp 0x140053c5d
mov rbx, qword [rsp + 0x58]
xor r8d, r8d
lea rdx, str.invalid_section_or_offset_in_coff_symbol
mov rcx, r12
call rbp
mov qword [rsp + 0x20], r12
mov r9, rbp
mov rdx, rbx
mov rcx, r13
mov r8d, 0x18
call sym.backtrace_free
mov rdx, qword [rsp + 0x60]
mov rcx, r13
mov r9, r12
mov r8, rbp
call sym.backtrace_release_view
mov ecx, dword [rsp + 0x6c]
test ecx, ecx
je 0x1400548eb
lea rdx, [rsp + 0x110]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
mov edx, dword [rsp + 0xa0]
test edx, edx
je 0x140053c5d
lea rsi, [rsp + 0x130]
mov r9, r12
mov r8, rbp
mov rdx, rsi
mov rcx, r13
call sym.backtrace_release_view
cmp r14d, 0xffffffff
je 0x140053c68
jmp 0x140053c80
mov r10d, dword [rsp + 0x6c]
test r10d, r10d
je 0x140053c5d
lea rdx, [rsp + 0x110]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
jmp 0x140053c5d
lea rax, [rdi + 1]
mov r9, r12
mov r8, rbp
mov rcx, r13
shl rax, 4
mov rbx, qword [rsp + 0x58]
mov qword [rsp + 0x80], r10
mov rdx, rax
mov qword [rsp + 0x58], rax
call sym.backtrace_alloc
mov r11, rax
test rax, rax
je 0x1400543ba
mov r10, qword [rsp + 0x80]
xor eax, eax
test r10, r10
jne 0x140054714
mov qword [rsp + 0x80], rbx
mov r10, r11
xor edx, edx
movzx ebx, word [rsp + 0x70]
mov qword [rsp + 0x98], rdi
mov rdi, rax
mov qword [rsp + 0x2f0], rbp
mov rbp, qword [rsp + 0x90]
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x2e0], r13
mov qword [rsp + 0x2f8], r12
jmp 0x14005451b
shr cx, 4
cmp cx, 2
jne 0x140054509
test r9b, r9b
jne 0x1400546b9
movzx eax, byte [rax + 0x11]
lea rdx, [rdx + rax + 1]
cmp rdx, rsi
jae 0x1400545b1
lea rax, [rdx + rdx*8]
lea rax, [r15 + rax*2]
movsx r8, word [rax + 0xc]
movzx ecx, word [rax + 0xe]
test r8w, r8w
setg r9b
cmp bx, r8w
jae 0x140054543
test r9b, r9b
jne sym.coff_add.cold
cmp byte [rax], 0
jne 0x1400544f6
mov r11d, dword [rax + 4]
cmp r11, rbp
jae sym.coff_add.cold
shr cx, 4
cmp cx, 2
jne 0x140054509
test r9b, r9b
je 0x140054509
mov rcx, qword [rsp + 0x50]
add r11, rcx
mov r12d, dword [rsp + 0xa4]
test r12d, r12d
jne 0x140054585
xor ecx, ecx
cmp byte [r11], 0x5f
sete cl
add r11, rcx
mov qword [r10], r11
mov r11, qword [rsp + 0x78]
lea r8, [r8 + r8*4]
add r10, 0x10
mov ecx, dword [rax + 8]
add ecx, dword [r11 + r8*8 - 0x1c]
mov r11, qword [rsp + 0xa8]
add rcx, r11
mov qword [r10 - 8], rcx
jmp 0x140054509
mov rbx, qword [rsp + 0x80]
mov r11, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x98]
mov r13, qword [rsp + 0x2e0]
mov rbp, qword [rsp + 0x2f0]
mov r12, qword [rsp + 0x2f8]
mov qword [r10], 0
mov rcx, r11
mov r8d, 0x10
mov rdx, rdi
mov qword [r10 + 8], 0xffffffffffffffff
lea r9, [sym.coff_symbol_compare]
mov qword [rsp + 0x50], r11
call sym.backtrace_qsort
mov r11, qword [rsp + 0x50]
mov qword [rbx], 0
lea rcx, [r13 + 0x30]
mov rax, qword [rsp + 0x308]
mov qword [rbx + 0x10], rdi
mov qword [rbx + 8], r11
mov dword [rax], 1
mov esi, dword [r13 + 8]
test esi, esi
jne 0x140054152
mov rax, qword [r13 + 0x30]
test rax, rax
je 0x140054653
mov rdx, rax
mov rax, qword [rax]
test rax, rax
jne 0x140054645
mov rcx, rdx
mov qword [rcx], rbx
jmp 0x140054169
lea rax, [rsp + 0x110]
mov qword [rsp + 0x28], r12
mov edx, r14d
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x80]
mov rcx, r13
mov qword [rsp + 0x20], rbp
lea r8, [r15 + rax]
call sym.backtrace_get_view
mov dword [rsp + 0x6c], 1
test eax, eax
jne 0x140053e84
mov rdx, qword [rsp + 0x60]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
jmp 0x14005441f
xor ecx, ecx
cmp byte [rax + rcx], 0
je 0x140054893
add rcx, 1
cmp rcx, 8
jne 0x1400546bb
mov r12d, 9
mov r8d, ecx
cmp ecx, 8
jae 0x1400547c0
test cl, 4
jne 0x1400548d6
test r8d, r8d
je 0x140054700
movzx r9d, byte [rax]
mov byte [rdi], r9b
test r8b, 2
jne 0x1400548c5
mov byte [rdi + rcx], 0
mov r11, rdi
movsx r8, word [rax + 0xc]
add rdi, r12
jmp 0x14005456c
mov r9, r12
mov r8, rbp
mov rdx, r10
mov rcx, r13
mov qword [rsp + 0x80], r11
call sym.backtrace_alloc
mov r11, qword [rsp + 0x80]
test rax, rax
jne 0x1400544b2
mov qword [rsp + 0x20], r12
mov r8, qword [rsp + 0x58]
mov r9, rbp
mov rdx, r11
mov rcx, r13
call sym.backtrace_free
jmp 0x1400543ba
mov r9d, dword [rsp + 0x6c]
test r9d, r9d
je 0x140054780
lea rdx, [rsp + 0x110]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
mov r9, r12
mov r8, rbp
mov rdx, rdi
mov rcx, r13
call sym.backtrace_release_view
cmp r14d, 0xffffffff
je 0x140053c68
jmp 0x140053c80
mov rdx, qword [rsp + 0x60]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
mov dword [rsp + 0x6c], 0
jmp 0x14005418d
mov r8, qword [rax]
mov r13, rax
mov qword [rdi], r8
mov r8d, ecx
mov r9, qword [rax + r8 - 8]
mov qword [rdi + r8 - 8], r9
lea r9, [rdi + 8]
mov r8, rdi
and r9, 0xfffffffffffffff8
sub r8, r9
sub r13, r8
add r8d, ecx
and r8d, 0xfffffff8
cmp r8d, 8
jb 0x140054700
mov qword [rsp + 0x90], rax
and r8d, 0xfffffff8
mov dword [rsp + 0x58], r8d
xor r8d, r8d
mov r11d, r8d
add r8d, 8
mov rax, qword [r13 + r11]
mov qword [r9 + r11], rax
mov eax, dword [rsp + 0x58]
cmp r8d, eax
jb 0x14005480c
mov rax, qword [rsp + 0x90]
jmp 0x140054700
mov r8d, dword [rsp + 0x6c]
test r8d, r8d
je 0x140054852
lea rdx, [rsp + 0x110]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
mov r9, r12
mov r8, rbp
mov rdx, rdi
mov rcx, r13
call sym.backtrace_release_view
jmp 0x140053c68
mov dword [rsp + 0xa0], 1
test ebx, ebx
jne 0x140054046
mov rdx, qword [rsp + 0x60]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
jmp 0x14005431c
lea r12, [rcx + 1]
jmp 0x1400546d5
mov r9, r12
mov r8, rbp
mov edx, 0x10
mov rcx, r13
call sym.backtrace_alloc
mov r10, rax
test rax, rax
je 0x1400543ba
mov r11, rax
xor edi, edi
jmp 0x1400545de
movzx r9d, word [rax + r8 - 2]
mov word [rdi + r8 - 2], r9w
jmp 0x140054700
mov r9d, dword [rax]
mov dword [rdi], r9d
mov r9d, dword [rax + r8 - 4]
mov dword [rdi + r8 - 4], r9d
jmp 0x140054700
cmp dword [rsp + 0xa0], 0
je 0x140053c5d
lea rdx, [rsp + 0x130]
mov r9, r12
mov r8, rbp
mov rcx, r13
call sym.backtrace_release_view
jmp 0x140053c5d