Function at 0x140084514
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x18], rbp
push rsi
push rdi
push r12
sub rsp, 0x60
lea rax, [r11 - 0x38]
mov rdi, rcx
mov rdx, rcx
mov qword [r11 - 0x48], rax
lea rax, [0x140123d40]
lea rcx, [r11 - 0x48]
mov r8d, 0x14
mov qword [r11 - 0x40], rax
call fcn.140009ef0
xor ebp, ebp
cmp eax, ebp
je 0x140084a31
mov eax, dword [rsp + 0x4c]
mov qword [rdi], rax
cmp rax, rbp
je 0x140084a31
lea rax, [rsp + 0x20]
lea r8d, [rbp + 0xc]
lea rcx, [rsp + 0x30]
mov rdx, rdi
mov qword [rsp + 0x30], rax
call fcn.140009ef0
cmp eax, ebp
je 0x140084a31
mov edx, dword [rsp + 0x20]
lea ecx, [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rbx, rax
cmp rax, rbp
je 0x140084a31
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x30]
mov rdx, rdi
mov qword [rsp + 0x30], rax
call fcn.140009ef0
cmp eax, ebp
je 0x140084a28
movzx esi, word [rsp + 0x28]
lea rcx, str._nAlgId_____:
call fcn.14000a838
mov r8d, dword [rsp + 0x28]
lea r12d, [rbp + 1]
mov eax, r8d
shr eax, 0x10
sub eax, r12d
je 0x140084822
cmp eax, 2
je 0x140084606
lea rcx, str.ERROR_kuhl_m_crypto_extractor_bcrypt32___Unsupported_interface_alg__0x_x__n
mov edx, r8d
call fcn.14000a838
jmp 0x140084a28
movzx eax, si
cmp eax, ebp
je 0x140084625
cmp eax, 0xb
ja 0x140084625
lea rsi, [0x140000000]
dec eax
mov rdx, qword [rsi + rax*8 + 0xd1630]
jmp 0x140084628
mov rdx, rbp
lea rcx, str._s__0x_x__n
call fcn.14000a838
cmp dword [rsp + 0x24], 0x4d534b59
je 0x140084a28
cmp dword [rsp + 0x24], 0x4d53524b
je 0x140084662
lea rdx, [rsp + 0x24]
lea rcx, str.ERROR_kuhl_m_crypto_extractor_bcrypt32___Tag__.4S_not_supported_n
call fcn.14000a838
jmp 0x140084a28
mov eax, dword [0x140124314]
cmp eax, 0x24b8
jae 0x1400846cd
mov edx, dword [rbx + 0x34]
mov rcx, qword [rdi + 8]
lea r9, str.PubExp
mov r8d, 4
call fcn.140084470
mov r8d, dword [rbx + 0x20]
mov edx, dword [rbx + 0x3c]
mov rcx, qword [rdi + 8]
lea r9, str.Modulus
shl r8d, 2
call fcn.140084470
mov r8d, dword [rbx + 0x50]
mov edx, dword [rbx + 0x70]
mov rcx, qword [rdi + 8]
lea r9, str.Prime1
shl r8d, 2
call fcn.140084470
mov r8d, dword [rbx + 0x8c]
mov edx, dword [rbx + 0xac]
jmp 0x140084730
cmp eax, 0x3ad7
jae 0x140084749
mov edx, dword [rbx + 0x34]
mov rcx, qword [rdi + 8]
lea r9, str.PubExp
mov r8d, 4
call fcn.140084470
mov r8d, dword [rbx + 0x20]
mov edx, dword [rbx + 0x3c]
mov rcx, qword [rdi + 8]
lea r9, str.Modulus
shl r8d, 2
call fcn.140084470
mov r8d, dword [rbx + 0x50]
mov edx, dword [rbx + 0x70]
mov rcx, qword [rdi + 8]
lea r9, str.Prime1
shl r8d, 2
call fcn.140084470
mov r8d, dword [rbx + 0x94]
mov edx, dword [rbx + 0xb4]
mov rcx, qword [rdi + 8]
lea r9, str.Prime2
shl r8d, 2
call fcn.140084470
jmp 0x140084a28
mov eax, dword [rbx + 0x18]
mov qword [rdi], rax
cmp rax, rbp
je 0x140084a28
lea rax, [rsp + 0x88]
lea rcx, [rsp + 0x30]
mov r8d, 4
mov rdx, rdi
mov qword [rsp + 0x30], rax
call fcn.140009ef0
cmp eax, ebp
je 0x140084a28
mov edx, dword [rsp + 0x88]
mov ecx, 0x40
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rsi, rax
cmp rax, rbp
je 0x140084a28
mov r8d, dword [rsp + 0x88]
lea rcx, [rsp + 0x30]
mov rdx, rdi
mov qword [rsp + 0x30], rax
call fcn.140009ef0
cmp eax, ebp
je 0x140084814
mov r8d, dword [rsi + 0x48]
mov edx, dword [rbx + 0x18]
lea r9, str.PubExp
mov rcx, rsi
call fcn.14008442c
mov r8d, dword [rsi + 0x58]
mov edx, dword [rbx + 0x18]
lea r9, str.Modulus
mov rcx, rsi
call fcn.14008442c
mov r8d, dword [rsi + 0x38]
mov edx, dword [rbx + 0x18]
lea r9, str.Prime1
mov rcx, rsi
call fcn.14008442c
mov r8d, dword [rsi + 0x3c]
mov edx, dword [rbx + 0x18]
lea r9, str.Prime2
mov rcx, rsi
call fcn.14008442c
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x140084a28
movzx eax, si
lea rsi, [0x140000000]
cmp eax, ebp
je 0x140084841
cmp eax, 8
ja 0x140084841
dec eax
mov rdx, qword [rsi + rax*8 + 0xd15f0]
jmp 0x140084844
mov rdx, rbp
lea rcx, str._s__0x_x__n
call fcn.14000a838
mov r11d, dword [0x140124314]
mov r8d, dword [rbx + 0xc]
cmp r11d, 0x1f40
jae 0x140084907
cmp r8d, 6
jae 0x140084878
mov rdx, qword [rsi + r8*8 + 0xd1688]
jmp 0x14008487b
mov rdx, rbp
lea rcx, str.Mode______:__s__0x_x__n
call fcn.14000a838
movzx r9d, bp
mov r8b, bpl
movzx eax, r9w
cmp eax, dword [rbx + 0x10]
jae 0x1400848b6
mov eax, dword [rbx + 0x10]
mov ecx, dword [rsp + 0x20]
movzx edx, r9w
sub rdx, rax
add r9w, r12w
lea rax, [rbx + rdx]
or r8b, byte [rcx + rax]
cmp r8b, bpl
je 0x14008488e
cmp r8b, bpl
je 0x1400848ec
lea rcx, str.IV________:
call fcn.14000a838
mov r11d, dword [rbx + 0x10]
mov ecx, dword [rsp + 0x20]
sub rcx, r11
xor r8d, r8d
mov edx, r11d
add rcx, rbx
call fcn.1400112ac
lea rcx, reloc.Cabinet.dll_FCICreate
call fcn.14000a838
mov edx, dword [rbx + 0x18]
lea rcx, str.Key___3u__:
call fcn.14000a838
mov edx, dword [rbx + 0x18]
lea rcx, [rbx + 0x1c]
jmp 0x140084a14
cmp r11d, 0x24b8
jae 0x140084995
cmp r8d, 6
jae 0x140084924
mov rdx, qword [rsi + r8*8 + 0xd1688]
jmp 0x140084927
mov rdx, rbp
lea rcx, str.Mode______:__s__0x_x__n
call fcn.14000a838
movzx edx, bp
mov cl, bpl
movzx eax, dx
cmp eax, dword [rbx + 0x10]
jae 0x140084951
movzx eax, dx
add dx, r12w
or cl, byte [rax + rbx + 0x64]
cmp cl, bpl
je 0x140084939
cmp cl, bpl
je 0x14008497d
lea rcx, str.IV________:
call fcn.14000a838
mov edx, dword [rbx + 0x10]
lea rcx, [rbx + 0x64]
xor r8d, r8d
call fcn.1400112ac
lea rcx, reloc.Cabinet.dll_FCICreate
call fcn.14000a838
mov edx, dword [rbx + 0x20]
lea rcx, str.Key___3u__:
call fcn.14000a838
mov edx, dword [rbx + 0x20]
lea rcx, [rbx + 0x24]
jmp 0x140084a14
cmp r8d, 6
jae 0x1400849a5
mov rdx, qword [rsi + r8*8 + 0xd1688]
jmp 0x1400849a8
mov rdx, rbp
lea rcx, str.Mode______:__s__0x_x__n
call fcn.14000a838
movzx edx, bp
mov cl, bpl
movzx eax, dx
cmp eax, dword [rbx + 0x10]
jae 0x1400849d2
movzx eax, dx
add dx, r12w
or cl, byte [rax + rbx + 0x24]
cmp cl, bpl
je 0x1400849ba
cmp cl, bpl
je 0x1400849fe
lea rcx, str.IV________:
call fcn.14000a838
mov edx, dword [rbx + 0x10]
lea rcx, [rbx + 0x24]
xor r8d, r8d
call fcn.1400112ac
lea rcx, reloc.Cabinet.dll_FCICreate
call fcn.14000a838
mov edx, dword [rbx + 0x34]
lea rcx, str.Key___3u__:
call fcn.14000a838
mov edx, dword [rbx + 0x34]
lea rcx, [rbx + 0x38]
xor r8d, r8d
call fcn.1400112ac
lea rcx, reloc.Cabinet.dll_FCICreate
call fcn.14000a838
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LocalFree]
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret