Function at 0x1d3ae58d0
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, 0x88
mov dword [rsp + 0x2c], r9d
mov ebx, ecx
mov r12d, r8d
test dl, dl
jne 0x1d3ae5dc8
test bl, bl
jne 0x1d3ae5db8
mov rax, qword [0x1d3bda120]
lea rsi, [rsp + 0x71]
mov byte [rsp + 0x4c], 0
mov rcx, rsi
mov dword [rsp + 0x48], 0x95959dd7
mov qword [rsp + 0x40], rax
movabs rax, 0xcbca959c978b9c92
mov qword [rsp + 0x71], rax
mov dword [rsp + 0x79], 0x95959dd7
mov byte [rsp + 0x7d], 0
movzx eax, byte [rsp + 0x71]
xor eax, 0xfffffff9
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0x72]
xor eax, 0xfffffff9
mov byte [rsp + 0x72], al
movzx eax, byte [rsp + 0x73]
xor eax, 0xfffffff9
mov byte [rsp + 0x73], al
movzx eax, byte [rsp + 0x74]
xor eax, 0xfffffff9
mov byte [rsp + 0x74], al
movzx eax, byte [rsp + 0x75]
xor eax, 0xfffffff9
mov byte [rsp + 0x75], al
movzx eax, byte [rsp + 0x76]
xor eax, 0xfffffff9
mov byte [rsp + 0x76], al
movzx eax, byte [rsp + 0x77]
xor eax, 0xfffffff9
mov byte [rsp + 0x77], al
movzx eax, byte [rsp + 0x78]
xor eax, 0xfffffff9
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x79]
xor eax, 0xfffffff9
mov byte [rsp + 0x79], al
movzx eax, byte [rsp + 0x7a]
xor eax, 0xfffffff9
mov byte [rsp + 0x7a], al
movzx eax, byte [rsp + 0x7b]
xor eax, 0xfffffff9
mov byte [rsp + 0x7b], al
movzx eax, byte [rsp + 0x7c]
xor eax, 0xfffffff9
mov byte [rsp + 0x7c], al
call fcn.1d3ae54e0
mov dword [rsp + 0x58], 0xbd858e9d
mov rbx, rax
mov rax, qword [0x1d3bda128]
mov byte [rsp + 0x5c], 0
mov qword [rsp + 0x50], rax
movabs rax, 0x8e9e95b0989d93b0
mov qword [rsp + 0x71], rax
mov dword [rsp + 0x79], 0xbd858e9d
mov byte [rsp + 0x7d], 0
movzx eax, byte [rsp + 0x71]
xor eax, 0xfffffffc
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0x72]
xor eax, 0xfffffffc
mov byte [rsp + 0x72], al
movzx eax, byte [rsp + 0x73]
xor eax, 0xfffffffc
mov byte [rsp + 0x73], al
movzx eax, byte [rsp + 0x74]
xor eax, 0xfffffffc
mov byte [rsp + 0x74], al
movzx eax, byte [rsp + 0x75]
xor eax, 0xfffffffc
mov byte [rsp + 0x75], al
movzx eax, byte [rsp + 0x76]
xor eax, 0xfffffffc
mov byte [rsp + 0x76], al
movzx eax, byte [rsp + 0x77]
xor eax, 0xfffffffc
mov byte [rsp + 0x77], al
movzx eax, byte [rsp + 0x78]
xor eax, 0xfffffffc
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x79]
xor eax, 0xfffffffc
mov byte [rsp + 0x79], al
movzx eax, byte [rsp + 0x7a]
xor eax, 0xfffffffc
mov byte [rsp + 0x7a], al
movzx eax, byte [rsp + 0x7b]
xor eax, 0xfffffffc
mov byte [rsp + 0x7b], al
movzx eax, byte [rsp + 0x7c]
xor eax, 0xfffffffc
mov byte [rsp + 0x7c], al
movsxd rax, dword [rbx + 0x3c]
mov edi, dword [rbx + rax + 0x88]
xor eax, eax
test edi, edi
je 0x1d3ae5b05
mov r14d, edi
add r14, rbx
mov r15d, dword [r14 + 0x20]
mov r13d, dword [r14 + 0x18]
add r15, rbx
test r13d, r13d
je 0x1d3ae5b05
xor ebp, ebp
jmp 0x1d3ae5ad9
add rbp, 1
add r15, 4
cmp r13, rbp
je 0x1d3ae5e10
mov ecx, dword [r15]
mov rdx, rsi
add rcx, rbx
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1d3ae5ac8
mov edx, dword [r14 + 0x24]
lea rcx, [rbx + rbp*2]
mov eax, dword [r14 + 0x1c]
movzx edx, word [rcx + rdx]
lea rdx, [rbx + rdx*4]
mov eax, dword [rdx + rax]
add rax, rbx
mov r8d, 0x7070
mov qword [0x1d3c0d060], rax
mov rax, qword [str.DbqMol__]
mov ecx, 0x7070
mov dword [rsp + 0x68], 0x626f6161
mov qword [rsp + 0x60], rax
movabs rax, 0x3e606c6f4d716244
mov qword [rsp + 0x71], rax
mov dword [rsp + 0x79], 0x626f6161
mov word [rsp + 0x7d], r8w
mov byte [rsp + 0x7f], 0
movzx eax, byte [rsp + 0x71]
mov word [rsp + 0x6c], cx
add eax, 3
mov byte [rsp + 0x6e], 0
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0x72]
add eax, 3
mov byte [rsp + 0x72], al
movzx eax, byte [rsp + 0x73]
add eax, 3
mov byte [rsp + 0x73], al
movzx eax, byte [rsp + 0x74]
add eax, 3
mov byte [rsp + 0x74], al
movzx eax, byte [rsp + 0x75]
add eax, 3
mov byte [rsp + 0x75], al
movzx eax, byte [rsp + 0x76]
add eax, 3
mov byte [rsp + 0x76], al
movzx eax, byte [rsp + 0x77]
add eax, 3
mov byte [rsp + 0x77], al
movzx eax, byte [rsp + 0x78]
add eax, 3
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x79]
add eax, 3
mov byte [rsp + 0x79], al
movzx eax, byte [rsp + 0x7a]
add eax, 3
mov byte [rsp + 0x7a], al
movzx eax, byte [rsp + 0x7b]
add eax, 3
mov byte [rsp + 0x7b], al
movzx eax, byte [rsp + 0x7c]
add eax, 3
mov byte [rsp + 0x7c], al
movzx eax, byte [rsp + 0x7d]
add eax, 3
mov byte [rsp + 0x7d], al
movzx eax, byte [rsp + 0x7e]
add eax, 3
mov byte [rsp + 0x7e], al
xor eax, eax
test edi, edi
je 0x1d3ae5c5d
mov r14d, edi
add r14, rbx
mov r15d, dword [r14 + 0x20]
mov r13d, dword [r14 + 0x18]
add r15, rbx
test r13d, r13d
je 0x1d3ae5c5d
xor ebp, ebp
jmp 0x1d3ae5c31
add rbp, 1
add r15, 4
cmp r13, rbp
je 0x1d3ae5e00
mov ecx, dword [r15]
mov rdx, rsi
add rcx, rbx
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1d3ae5c20
mov edx, dword [r14 + 0x24]
lea rcx, [rbx + rbp*2]
mov eax, dword [r14 + 0x1c]
movzx edx, word [rcx + rdx]
lea rdx, [rbx + rdx*4]
mov eax, dword [rdx + rax]
add rax, rbx
mov qword [0x1d3c0d068], rax
mov rax, qword [0x1d3bda138]
mov edx, 0xffff9995
mov byte [rsp + 0x3a], 0
mov qword [rsp + 0x30], rax
mov eax, 0xffff9995
mov word [rsp + 0x38], ax
movabs rax, 0x9696bb969b9995b6
mov qword [rsp + 0x71], rax
mov word [rsp + 0x79], dx
mov byte [rsp + 0x7b], 0
movzx eax, byte [rsp + 0x71]
xor eax, 0xfffffffa
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0x72]
xor eax, 0xfffffffa
mov byte [rsp + 0x72], al
movzx eax, byte [rsp + 0x73]
xor eax, 0xfffffffa
mov byte [rsp + 0x73], al
movzx eax, byte [rsp + 0x74]
xor eax, 0xfffffffa
mov byte [rsp + 0x74], al
movzx eax, byte [rsp + 0x75]
xor eax, 0xfffffffa
mov byte [rsp + 0x75], al
movzx eax, byte [rsp + 0x76]
xor eax, 0xfffffffa
mov byte [rsp + 0x76], al
movzx eax, byte [rsp + 0x77]
xor eax, 0xfffffffa
mov byte [rsp + 0x77], al
movzx eax, byte [rsp + 0x78]
xor eax, 0xfffffffa
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x79]
xor eax, 0xfffffffa
mov byte [rsp + 0x79], al
movzx eax, byte [rsp + 0x7a]
xor eax, 0xfffffffa
mov byte [rsp + 0x7a], al
xor eax, eax
test edi, edi
je 0x1d3ae5d73
add rdi, rbx
mov r14d, dword [rdi + 0x20]
mov r13d, dword [rdi + 0x18]
add r14, rbx
test r13d, r13d
je 0x1d3ae5d73
xor r15d, r15d
jmp 0x1d3ae5d49
add r15, 1
add r14, 4
cmp r13, r15
je 0x1d3ae5df0
mov ecx, dword [r14]
mov rdx, rsi
add rcx, rbx
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1d3ae5d38
mov edx, dword [rdi + 0x24]
lea rcx, [rbx + r15*2]
mov eax, dword [rdi + 0x1c]
movzx edx, word [rcx + rdx]
lea rdx, [rbx + rdx*4]
mov eax, dword [rdx + rax]
add rax, rbx
mov qword [0x1d3c0d058], rax
test r12b, r12b
jne 0x1d3ae5de0
cmp byte [rsp + 0x2c], 0
jne 0x1d3ae5dd8
mov ecx, 0x4098
call fcn.1d3ae5830
test rax, rax
mov qword [0x1d3c0d050], rax
setne al
movzx eax, al
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call fcn.1d3ae42a0
jmp 0x1d3ae58fd
call fcn.1d3ae47c0
jmp 0x1d3ae58f5
call fcn.1d3ae51e0
jmp 0x1d3ae5d86
call fcn.1d3ae4f70
jmp 0x1d3ae5d7f
xor eax, eax
jmp 0x1d3ae5d73
xor eax, eax
jmp 0x1d3ae5c5d
xor eax, eax
jmp 0x1d3ae5b05