Function at 0x140378b60
Capabilities:
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, 0x238
lea rax, [rsp + 0x80]
mov r13, rdx
mov ebp, r8d
mov r12, r9
mov qword [rsp + 0x20], rax
lea r9, [0x140379a20]
mov r8d, 1
mov edx, 0x2c
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x3c], 0
mov qword [rsp + 0x80], 0xffffffffffffffff
mov dword [rsp + 0x8c], 1
mov dword [rsp + 0x228], 0
call fcn.1400b7f10
mov edi, eax
test eax, eax
jne 0x140379350
mov esi, dword [rsp + 0x88]
lea eax, [rsi - 0x10]
cmp eax, 1
ja 0x140378d30
test r13, r13
je 0x1403794e0
cmp ebp, 0x31
jg 0x140379360
mov qword [rsp + 0x60], 0
mov r14, qword [rsp + 0x90]
call fcn.14009eb00
mov r15, rax
test rax, rax
je 0x1403794f0
test r14, r14
je 0x140378c97
mov rdx, r14
mov rcx, r13
call fcn.1403bae00
mov r14, rax
test rax, rax
je 0x1403794f0
xor ebx, ebx
add ebp, 1
jmp 0x140378c8b
mov edx, ebx
mov rcx, r14
call fcn.14009f7b0
mov rdx, r13
mov r9, r12
mov r8d, ebp
mov rcx, qword [rax + 0x10]
call fcn.140378b60
mov rdx, rax
test rax, rax
je 0x1403794f3
mov rcx, r15
call fcn.14009f410
test eax, eax
je 0x1403794f3
add ebx, 1
mov rcx, r14
call fcn.14009f7a0
cmp ebx, eax
jl 0x140378c50
lea rdx, [rsp + 0x60]
mov rcx, r15
cmp esi, 0x11
je 0x1403794d0
call fcn.1401f7ab0
mov ebx, eax
test ebx, ebx
js 0x1403794f3
call fcn.1401f7930
mov r12, rax
test rax, rax
je 0x1403794f3
mov ecx, esi
call fcn.1400a1a40
mov qword [r12 + 8], rax
test rax, rax
je 0x14037952c
mov rdx, qword [rsp + 0x60]
mov dword [r12], esi
xor ecx, ecx
mov dword [rax], ebx
mov qword [rax + 8], rdx
mov qword [rsp + 0x60], 0
mov r8d, 0x1c7
lea rdx, str.crypto_asn1_asn1_gen.c
call fcn.140095b40
mov rcx, r15
lea rdx, [fcn.1401f7940]
call fcn.14009f6c0
mov rdx, r14
mov rcx, r13
call fcn.1403baea0
jmp 0x1403790ef
mov ebp, dword [rsp + 0x8c]
mov rbx, qword [rsp + 0x90]
call fcn.1401f7930
mov r12, rax
test rax, rax
je 0x140379536
test rbx, rbx
je 0x140378d70
cmp esi, 0x1e
ja case.0x140378d6e.0
lea rcx, [0x140609b60]
mov edx, esi
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
cmp esi, 0x1e
ja case.0x140378d89.0
lea rcx, [0x140609bdc]
mov edx, esi
movsxd rax, dword [rcx + rdx*4]
add rax, rcx
jmp rax
lea rbx, [0x140609b40]
cmp ebp, 1
jne 0x140379456
call fcn.1400a1a10
mov qword [r12 + 8], rax
mov rcx, rax
test rax, rax
je 0x140379617
mov r8d, 0xffffffff
mov rdx, rbx
call fcn.1400a1790
test eax, eax
je 0x140379601
mov rcx, qword [r12 + 8]
mov dword [rcx + 4], esi
call fcn.1401e81f0
test eax, eax
jne case.0x140378d89.5
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x28f
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb8
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379079
lea rbx, [0x140609b40]
cmp ebp, 1
je 0x14037948a
mov r13d, 0x1000
cmp ebp, 2
jne 0x140379599
mov ecx, esi
call fcn.1401f0060
lea rcx, [r12 + 8]
mov r9d, r13d
mov rdx, rbx
mov dword [rsp + 0x20], eax
mov r8d, 0xffffffff
call fcn.140378b30
test eax, eax
jg case.0x140378d89.5
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2a9
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x8000d
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379079
lea rbx, [0x140609b40]
cmp ebp, 1
jne 0x1403793ba
xor edx, edx
mov rcx, rbx
call fcn.140099bf0
mov qword [r12 + 8], rax
test rax, rax
jne case.0x140378d89.5
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x27a
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb7
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379079
lea rbx, [0x140609b40]
call fcn.1400a1a10
mov qword [r12 + 8], rax
test rax, rax
je 0x140379495
cmp ebp, 3
je 0x1403790af
cmp ebp, 1
je 0x14037956a
cmp ebp, 4
jne 0x1403795cd
cmp esi, 3
jne 0x1403795cd
mov qword [rsp + 0x20], rax
lea r9, [0x1403797f0]
mov edx, 0x2c
mov rcx, rbx
mov r8d, 1
call fcn.1400b7f10
test eax, eax
jne case.0x140378d89.5
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2c7
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xbc
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379079
lea rbx, [0x140609b40]
cmp ebp, 1
jne 0x140379422
mov rdx, rbx
xor ecx, ecx
call fcn.140372650
mov qword [r12 + 8], rax
test rax, rax
jne case.0x140378d89.5
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x26f
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb4
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379079
lea rbx, [0x140609b40]
cmp ebp, 1
jne 0x1403793ee
pxor xmm0, xmm0
lea rdx, [r12 + 8]
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x70], rbx
movups xmmword [rsp + 0x60], xmm0
call fcn.140372910
test eax, eax
jne case.0x140378d89.5
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x262
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb0
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379079
lea rbx, [0x140609b40]
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2d7
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xc4
mov ecx, 0xd
call fcn.1400bf330
mov r8, rbx
lea rdx, str.string
mov ecx, 2
call fcn.140093600
mov rcx, r12
xor r12d, r12d
call fcn.1401f7940
mov rax, r12
add rsp, 0x238
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r15, [rsp + 0x58]
mov rcx, rbx
mov rdx, r15
call fcn.140097bb0
test rax, rax
je 0x14037962d
mov rdx, qword [r12 + 8]
mov qword [rdx + 8], rax
mov eax, dword [rsp + 0x58]
mov dword [rdx + 4], esi
mov dword [rdx], eax
cmp esi, 3
jne case.0x140378d89.5
mov rcx, qword [r12 + 8]
xor edx, edx
call fcn.1400a1600
mov dword [r12], esi
cmp dword [rsp + 0x80], 0xffffffff
jne 0x140379104
mov ecx, dword [rsp + 0x228]
test ecx, ecx
je 0x140379098
lea rdx, [rsp + 0x48]
mov rcx, r12
call fcn.1401f7920
mov rcx, r12
mov ebp, eax
call fcn.1401f7940
mov rax, qword [rsp + 0x48]
cmp dword [rsp + 0x80], 0xffffffff
mov qword [rsp + 0x50], rax
je 0x1403791a0
mov dword [rsp + 0x20], ebp
lea rdx, [rsp + 0x3c]
lea rcx, [rsp + 0x50]
lea r9, [rsp + 0x44]
lea r8, [rsp + 0x40]
call fcn.1400a11a0
mov edx, eax
mov r12d, eax
and edx, 0x80
jne 0x140379340
mov rax, qword [rsp + 0x50]
sub rax, qword [rsp + 0x48]
sub ebp, eax
mov r13d, ebp
test r12b, 1
je 0x140379370
mov dword [rsp + 0x3c], 0
mov r12d, 2
mov r8d, dword [rsp + 0x80]
xor ecx, ecx
call fcn.1400a1590
mov ebp, eax
jmp 0x1403791a6
xor r12d, r12d
mov r13d, ebp
movsxd rdx, dword [rsp + 0x228]
mov rax, rdx
lea rdx, [rdx + rdx*4]
lea rbx, [rsp + rdx*4 + 0x84]
test eax, eax
jle 0x1403791ec
xor esi, esi
nop dword [rax + rax]
mov edx, dword [rbx + 0xc]
mov r8d, dword [rbx]
xor ecx, ecx
add esi, 1
sub rbx, 0x14
add edx, ebp
mov dword [rbx + 0x24], edx
call fcn.1400a1590
mov ebp, eax
cmp dword [rsp + 0x228], esi
jg 0x1403791c8
movsxd rcx, ebp
mov r8d, 0xc4
lea rdx, str.crypto_asn1_asn1_gen.c
call fcn.140095a80
mov r14, rax
test rax, rax
je 0x140379340
mov edx, dword [rsp + 0x228]
mov qword [rsp + 0x58], rax
lea r15, [rsp + 0x58]
lea rbx, [rsp + 0x98]
test edx, edx
jle 0x140379275
nop word [rax + rax]
mov eax, dword [rbx + 4]
mov edx, dword [rbx + 8]
mov rcx, r15
mov dword [rsp + 0x20], eax
mov r9d, dword [rbx]
mov r8d, dword [rbx + 0x10]
call fcn.1400a1440
mov eax, dword [rbx + 0xc]
test eax, eax
je 0x140379308
mov rax, qword [rsp + 0x58]
add edi, 1
add rbx, 0x14
lea rdx, [rax + 1]
mov qword [rsp + 0x58], rdx
mov byte [rax], 0
cmp edi, dword [rsp + 0x228]
jl 0x140379230
mov r9d, dword [rsp + 0x80]
cmp r9d, 0xffffffff
je 0x1403792a8
mov eax, dword [rsp + 0x84]
test eax, eax
je 0x140379328
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x3c]
lea rcx, [rsp + 0x58]
mov edx, r12d
call fcn.1400a1440
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
movsxd r8, r13d
call sub.msvcrt.dll_memcpy
lea rdx, [rsp + 0x60]
mov r8d, ebp
xor ecx, ecx
mov qword [rsp + 0x60], r14
call fcn.1401f7910
mov r12, rax
mov rcx, qword [rsp + 0x48]
mov r8d, 0xea
lea rdx, str.crypto_asn1_asn1_gen.c
call fcn.140095b40
mov r8d, 0xeb
lea rdx, str.crypto_asn1_asn1_gen.c
mov rcx, r14
call fcn.140095b40
jmp 0x140379098
add edi, 1
add rbx, 0x14
cmp dword [rsp + 0x228], edi
jg 0x140379230
jmp 0x140379275
lea edx, [r9 - 0x10]
cmp edx, 1
mov edx, 0x20
cmovbe r12d, edx
jmp 0x140379292
xor r14d, r14d
xor r12d, r12d
jmp 0x1403792d1
mov dword [r12], 0xc2
xor r12d, r12d
jmp 0x140379098
mov dword [r12], 0xb5
xor r12d, r12d
jmp 0x140379098
mov edx, dword [rsp + 0x3c]
and r12d, 0x20
jmp 0x140379184
cmp byte [rbx], 0
je case.0x140378d89.5
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x254
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb6
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x276
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xbf
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x25b
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xbe
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x26a
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb9
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x282
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xc1
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
mov r13d, 0x1001
jmp 0x140378e2f
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2b2
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x8000d
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
call fcn.1401f7ad0
mov ebx, eax
jmp 0x140378caf
mov dword [r12], 0xc0
xor r12d, r12d
jmp 0x140379098
xor r14d, r14d
mov rcx, qword [rsp + 0x60]
mov r8d, 0x1c7
lea rdx, str.crypto_asn1_asn1_gen.c
xor r12d, r12d
call fcn.140095b40
lea rdx, [fcn.1401f7940]
mov rcx, r15
call fcn.14009f6c0
mov rdx, r14
mov rcx, r13
call fcn.1403baea0
jmp 0x140379098
mov rcx, qword [rsp + 0x60]
jmp 0x140378cf7
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x249
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0x8000d
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379098
mov r8d, 0xffffffff
mov rdx, rbx
mov rcx, rax
call fcn.1400a1790
test eax, eax
jne 0x1403790da
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2c0
jmp 0x140378e69
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2a3
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb1
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2cd
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xaf
mov ecx, 0xd
call fcn.1400bf330
jmp 0x14037908d
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x28a
jmp 0x140378e69
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x286
jmp 0x140378e69
call fcn.1400bf100
lea r8, str.asn1_str2type
mov edx, 0x2b8
lea rcx, str.crypto_asn1_asn1_gen.c
call fcn.1400bf220
xor r8d, r8d
mov edx, 0xb2
mov ecx, 0xd
call fcn.1400bf330
jmp 0x140379079