Function at 0x180ed7018
Capabilities:
Authenticate hmac
Parse pe header

Disassembly:
add ebp, ecx
mov word [rbx + rdi - 4], r9w
bswap eax
bt bp, ax
lea rbx, [rbx + rdi - 4]
and dx, 0x4a04
bswap ecx
mov r9d, edi
jg fcn.180eb17b9
mov ebp, 0x158af4b0
lea rsi, [rbp + rsi - 0x158af4b4]
mov r9d, ebp
movzx r10d, bpl
mov eax, dword [rbp + rsi - 0x158af4b0]
xor eax, r11d
ror r9, 0x66
lea rcx, [r9*8 + 0x6fbda220]
sal ecx, 0x7c
bswap eax
or r10w, cx
movsx edi, r10w
sal di, 5
rol eax, 2
shr r9b, 0xa6
push rbp
push rdi
xor eax, 0xe0f1300
lea eax, [rbp + rax + 0x2fafd6e]
push r10
mov qword [rsp + rbp - 0x158af4a0], r11
xor dword [rsp + rbp*2 - 0x2b15e950], eax
sar rbp, 0x7f
and rdi, 0x6b3e079f
mov r11, qword [rsp + rbp + 0x10]
imul edi, dword [rsp + rbp*2 + 1]
neg ebp
movsxd rax, eax
and rcx, 0x36ad6fbd
mov qword [rsp + rbp + 0x10], 0xfffffffff91f5895
jno 0x180ecb5fe
mov edi, 0xa83a4aa3
mov r9, rbx
movsx ecx, di
mov edx, ecx
sal edi, 0x69
mov qword [rbx + rcx*2 - 0x954e], r9
mov edi, dword [rsi + rcx - 0x4aa7]
movsx eax, cl
bt ax, cx
xor edi, r11d
neg edi
jmp 0x180eb3458
mov r10d, ecx
movzx r9d, r10w
dec edi
neg edi
bts r9, 0x1a
btc ax, dx
inc rax
inc edi
inc cl
btr r9w, r9w
not edi
push r11
lea rbp, [rdx + rdx*8 + 0xe169b0c]
inc dl
xor dword [rsp + rcx*2 - 0x9548], edi
xor r10b, 0x91
and eax, eax
pop r11
movsxd rdi, edi
push rbp
neg r10w
sal bp, cl
add r8, rdi
and bp, word [rsp + rcx*2 - 0x9543]
xchg byte [rsp + rcx*4 - 0x12a8e], al
mov rdx, qword [rbx + rdx*4 - 0x12a98]
lea rcx, [rsp + rcx - 0x4a4c]
cbw
push rbp
mov qword [rcx + r10*2 - 0x16b9c], rdx
sal byte [rsp + r10*8 - 0x5ae69], 0xc5
call fcn.180e8d411
xor edx, r11d
mov ecx, r9d
sub r10d, r10d
neg r10b
rol edx, 1
xchg al, cl
push r10
jmp 0x180eeeaeb
adc r8, rax
pop r10
rol rdi, 0x41
shr rdi, 0x13
mov rdx, qword [rbp + rbx]
movsx eax, r9w
rol dil, 0xc5
adc rax, qword [rbp + rbx + 8]
add rdi, qword [rbp + rbx + 0x10]
lea rbp, [r9*2 - 0x3bfd83de]
lea rbx, [rbx + r10 - 0xa8]
neg byte [rsp + r10 - 0xa3]
div rdi
mov qword [rbx + r10*2 - 0x160], rdx
mov qword [rbx + r10*8 - 0x578], rax
jmp 0x180f036f4
ror r10d, 3
and rdx, r9
bswap r10d
jbe 0x180ed9983
xor r10d, 0x851044a3
div cl
neg edi
rol r10d, 2
ror qword [rsp + rdi - 0x653b0018], 0x17
inc dx
neg r10d
idiv rcx
mov qword [rsp + rdi - 0x653b0018], r11
mov ebp, 0xfd151800
xor dword [rsp + rdi - 0x653b0018], r10d
mov r11, qword [rsp + rdi - 0x653b0018]
sar rbp, cl
ror dil, 0xa4
adc ax, cx
mov dword [rbx + rdi - 0x653afffa], r10d
not r9d
lea rbx, [r9 + rbx - 0xc9d4]
call fcn.180efd876
movzx edx, dil
not bp
xor bp, 0xc116
inc edi
jle 0x180edaf67
sub bp, di
xor r11w, bp
neg dx
call fcn.180edd927
inc eax
movsx ecx, r9b
dec r10b
xor r10b, 0xaf
sub rbp, rbp
bswap r9d
movsx edi, bp
neg r10b
xadd edx, ecx
lea rbp, [r9 + rbp*8 + 0x2788de9a]
xor r11b, r10b
sar r9d, 0x50
add r10, rsp
or eax, 0x763cdbbe
movzx r9w, byte [rdi + r10]
not rdx
jns 0x180e6b203
dec edi
sal dl, 4
not ecx
mov qword [rsp + r9 - 0x402bcca6], r11
bt rdx, 0x16
adc byte [rsp + rdx*8 - 0x48ac427f], dil
xor dword [rsp + rdi - 0x402bcca5], ecx
dec dx
btc r9w, r9w
mov r11, qword [rsp + rbp*2 + 0x18]
cdq
ror eax, 0x74
not word [rsp + r9 - 0x402b8cba]
movsxd rcx, ecx
pop rax
add r8, rcx
shl di, 0xcc
xor dword [rsp + rdi - 0x402bcff6], 0x64b8512d
add rdx, 0xffffffff8e32a1bc
mov rax, qword [rbx + r9 - 0x402b8cbe]
neg r9
add bpl, byte [rbx + r9 + 0x402b8cc6]
mov qword [rsp + r9 + 0x402b8cce], rdi
not edx
lea rbx, [rbx + rdx - 0x71cd5e3a]
sar dword [rsp + r9 + 0x402b8cc2], 0xb6
mov byte ss:[rax + r9 + 0x402b8cbe], bpl
pop rbp
or bp, r9w
adc word [rsp + r9 + 0x402b8cca], dx
mov qword [rsp + r9 + 0x402b8cbe], r8
ret 8
not edx
rol r10b, 0xe2
lea edx, [rdx + r10 - 0x211222ba]
setae al
bswap edx
sar r10d, 0x29
bt rcx, r9
adc qword [rsp + r9 - 0x72211cac], r11
xor dword [rsp + r9 - 0x72211cac], edx
pop r11
movsxd rdx, edx
movzx ebp, cx
add r8, rdx
cqo
push r10
sal byte [rsp + r10*2 + 6], 0xc3
adc r10d, dword [r9 + rbx - 0x72211cae]
sal qword [rsp + rcx - 0x72211cf6], cl
movzx edi, word [rsp + rcx - 0x72211cf4]
btr rcx, 0x12
lea rbx, [rcx + rbx - 0x72211cf4]
setb r9b
mul di
neg qword [rsp + rbp - 0x1cf6]
movzx ebp, byte [rsi + rbp*2 - 0x39f2]
rol rdx, cl
push rdi
ror word [rsp + r9 - 0x72211bfd], 0xe7
lea rsi, [rsi + r9 - 0x72211c06]
xor bpl, r11b
shr al, 5
mov word [rsp + rdx + 4], 0x4a87
not bpl
sbb dil, r9b
shl di, 0xc9
neg qword [rsp + rdx + 2]
ror bpl, 1
or r9b, byte [rsp + r9 - 0x72211bf1]
neg cl
bswap r9d
neg bpl
push rax
ror al, 0x67
adc bpl, 0xa6
xor r11b, bpl
div qword [rsp + r9 - 0x1c2166]
shl al, 2
bt edi, 0x91
lea rbp, [rsp + rbp + 0x18]
mov dword [rbp + rax], r10d
rol byte [rsp + rax + 0x13], 0xa2
xadd byte [rsp + rax + 3], ch
mov qword [rsp + rax], r8
ret 0x10
mov qword [rsp + r10*2 - 0x160], r8
ret 8