Function at 0x593980
Capabilities:
Enumerate pe sections

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x593de6
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0xc], 0
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
movzx edx, byte [rdx + 0x1c]
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x1e]
mov r8, qword [rsp + 0x60]
test byte [r8], al
shl edi, 8
movzx ecx, byte [rcx + 0x1f]
or ecx, edi
movzx edi, byte [r8 + 0x1d]
shl edi, 0x10
or ecx, edi
and edx, 3
shl edx, 0x18
or ecx, edx
mov dword [rsi], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 0x1c]
shr ecx, 2
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x1b]
shl edi, 6
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x1a]
shl edi, 0xe
or ecx, edi
movzx edx, byte [rdx + 0x19]
and edx, 0xf
shl edx, 0x16
or ecx, edx
mov dword [rsi + 4], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 0x19]
shr ecx, 4
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x18]
shl edi, 4
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x17]
shl edi, 0xc
or ecx, edi
movzx edx, byte [rdx + 0x16]
and edx, 0x3f
shl edx, 0x14
or ecx, edx
mov dword [rsi + 8], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 0x16]
shr ecx, 6
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x15]
shl edi, 2
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x14]
shl edi, 0xa
or ecx, edi
movzx edx, byte [rdx + 0x13]
shl edx, 0x12
or ecx, edx
mov dword [rsi + 0xc], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 0x12]
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x11]
shl edi, 8
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0x10]
shl edi, 0x10
or ecx, edi
movzx edx, byte [rdx + 0xf]
and edx, 3
shl edx, 0x18
or ecx, edx
mov dword [rsi + 0x10], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 0xf]
shr ecx, 2
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0xe]
shl edi, 6
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0xd]
shl edi, 0xe
or ecx, edi
movzx edx, byte [rdx + 0xc]
and edx, 0xf
shl edx, 0x16
or ecx, edx
mov dword [rsi + 0x14], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 0xc]
shr ecx, 4
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0xb]
shl edi, 4
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 0xa]
shl edi, 0xc
or ecx, edi
movzx edx, byte [rdx + 9]
and edx, 0x3f
shl edx, 0x14
or ecx, edx
mov dword [rsi + 0x18], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 9]
shr ecx, 6
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 8]
shl edi, 2
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 7]
shl edi, 0xa
or ecx, edi
movzx edx, byte [rdx + 6]
shl edx, 0x12
or ecx, edx
mov dword [rsi + 0x1c], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x60]
test byte [rdx], al
mov rsi, qword [rsp + 0x58]
test byte [rsi], al
movzx ecx, byte [rcx + 5]
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 4]
shl edi, 8
or ecx, edi
mov rdi, qword [rsp + 0x60]
test byte [rdi], al
movzx edi, byte [rdi + 3]
shl edi, 0x10
or ecx, edi
movzx edx, byte [rdx + 2]
and edx, 3
shl edx, 0x18
or ecx, edx
mov dword [rsi + 0x20], ecx
mov rcx, qword [rsp + 0x60]
test byte [rcx], al
mov rdx, qword [rsp + 0x58]
test byte [rdx], al
movzx ecx, byte [rcx + 2]
shr ecx, 2
mov rsi, qword [rsp + 0x60]
test byte [rsi], al
movzx esi, byte [rsi + 1]
shl esi, 6
or ecx, esi
mov rsi, qword [rsp + 0x60]
test byte [rsi], al
movzx esi, byte [rsi]
shl esi, 0xe
or ecx, esi
mov dword [rdx + 0x24], ecx
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 0x24]
mov dword [rsp + 0x24], eax
mov ebx, 0x3fffff
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 0x20]
mov dword [rsp + 0x20], eax
mov ebx, 0x3ffffff
nop
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 0x1c]
mov dword [rsp + 0x1c], eax
mov ebx, 0x3ffffff
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 0x18]
mov dword [rsp + 0x18], eax
mov ebx, 0x3ffffff
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 0x14]
mov dword [rsp + 0x44], eax
mov ebx, 0x3ffffff
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0x40], eax
mov ebx, 0x3ffffff
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 0xc]
mov dword [rsp + 0x3c], eax
mov ebx, 0x3ffffff
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 8]
mov dword [rsp + 0x38], eax
mov ebx, 0x3ffffff
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 4]
mov dword [rsp + 0x34], eax
mov ebx, 0x3ffffbf
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeGreater
mov dword [rsp + 0x28], eax
mov ecx, dword [rsp + 0x14]
and ecx, eax
mov dword [rsp + 0x10], ecx
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx + 4]
mov dword [rsp + 0x30], eax
mov ebx, 0x3ffffbf
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeEq
mov dword [rsp + 0x28], eax
and dword [rsp + 0x14], eax
mov rcx, qword [rsp + 0x58]
test byte [rcx], al
mov eax, dword [rcx]
mov dword [rsp + 0x2c], eax
mov ebx, 0x3fffc2f
call sym.github.com_decred_dcrd_dcrec_secp256k1_v4.constantTimeGreaterOrEq
mov dword [rsp + 0x28], eax
mov ecx, dword [rsp + 0x14]
and eax, ecx
or eax, dword [rsp + 0x10]
mov dword [rsp + 0x10], eax
mov dword [rsp + 0xc], eax
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp sym.github.com_decred_dcrd_dcrec_secp256k1_v4._FieldVal_.SetBytes