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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
movsxd rax, dword [rcx + 0x3c]
mov eax, dword [rax + rcx + 0x88]
mov r13d, dword [rax + rcx + 0x18]
test r13, r13
je 0x140040884
mov r14, rdx
mov rbx, rcx
mov r15d, dword [rax + rcx + 0x1c]
mov ebp, dword [rax + rcx + 0x20]
add rbp, rcx
mov r12d, dword [rax + rcx + 0x24]
mov esi, dword [rbp]
add rsi, rcx
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x140040889
dec r13
xor edi, edi
nop word cs:[rax + rax]
cmp r13, rdi
je 0x140040c5b
mov esi, dword [rbp + rdi*4 + 4]
add rsi, rbx
mov rcx, rsi
mov rdx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
inc rdi
test eax, eax
jne 0x140040860
jmp 0x14004088b
jmp 0x140040c5b
xor edi, edi
add r15, rbx
add r12, rbx
movzx eax, word [r12 + rdi*2]
mov edi, dword [r15 + rax*4]
add rdi, rbx
movaps xmm0, xmmword [0x140090af0]
movaps xmmword [rsp + 0x20], xmm0
mov word [rsp + 0x30], 0x53c6
mov byte [rsp + 0x32], 0x48
xorps xmm0, xmm0
movups xmmword [rsp + 0x33], xmm0
mov qword [rsp + 0x41], 0
movabs r14, 0x82dec4e16549f8cc
movabs r15, 0x473979861251848b
lea rbx, [rsp + 0x20]
movabs r12, 0x9e1d611942861543
call fcn.14006a2a0
mov r13, qword [rax]
call fcn.14006a2b0
mov rcx, qword [rax]
xor eax, eax
jmp 0x14004091d
mov r8, rcx
movzx ecx, r9b
add rax, r8
add rax, rcx
mov rcx, r8
inc rax
cmp rax, 0x29
jae 0x140040c4a
cmp r13, rax
ja 0x140040c38
movzx r9d, byte [rsp + rax + 0x20]
movzx edx, r9b
lea r8, [rcx + 1]
cmp r13, r8
jae 0x140040990
cmp rcx, rax
ja 0x140040c42
lea r10, [rcx + 6]
cmp r13, r10
jb 0x140040960
cmp r13, r8
je 0x140040acd
lea r11, [rcx + 9]
cmp r13, r11
je 0x140040900
nop dword [rax]
lea r11, [rcx + r13]
cmp r11, rax
jbe 0x140040a0d
lea r8, [rcx + 3]
cmp r13, r8
jne 0x140040aad
mov r8, rcx
jmp 0x140040aee
je 0x140040900
lea r10, [rcx + 2]
cmp r13, r10
jne 0x140040a80
lea r9d, [rax - 0x1789023b]
lea r10d, [rdx + rax]
add r10d, 0xe876fdc5
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, 0x9d
mov byte [rsp + rax + 0x20], r10b
movzx r9d, r10b
not rcx
add rcx, rax
sub rcx, r9
lea eax, [rcx - 0x261c3bac]
lea r9d, [rcx + rdx]
add r9d, 0xd9e3c454
and eax, edx
add eax, eax
sub r9d, eax
add r9b, 0xb4
mov byte [rsp + rcx + 0x20], r9b
sub rcx, r13
inc r13
movzx r9d, byte [rsp + rcx + 0x1e]
add rcx, 0xfffffffffffffffe
mov rax, rcx
jmp 0x140040903
lea r10, [rcx + 0xa]
cmp r13, r10
jbe 0x140040ac8
lea r11d, [rax - 0x7914afed]
lea r10d, [rax + rdx]
add r10d, 0x86eb5013
and r11d, edx
add r11d, r11d
sub r10d, r11d
add r10b, 0x7b
cmp r13, r8
je 0x140040900
lea r9, [rcx + 3]
cmp r13, r9
je 0x1400409a3
lea r9, [rcx + 2]
cmp r13, r9
jne 0x140040bbf
lea r9d, [rax - 0x1fc231ba]
lea r8d, [rax + rdx]
add r8d, 0xe03dce46
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x16
jmp 0x140040b9e
lea r10, [rcx + 4]
cmp r13, r10
jne 0x140040af6
lea r9d, [rax + 0x5fac8825]
lea r8d, [rax + rdx]
add r8d, 0x5fac8825
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xfd
jmp 0x140040b9b
cmp r13, r10
jne 0x140040b16
lea r10, [rax + r14]
lea r8, [r10 + rdx]
mov r9d, edx
and r9d, r10d
mov r10b, 0x6c
jmp 0x140040b6b
cmp r13, r8
jne 0x140040b44
lea ecx, [rax + 0x22c3e389]
lea r9d, [rdx + rax]
add r9d, 0x22c3e389
and ecx, edx
add ecx, ecx
sub r9d, ecx
add r9b, 0x41
mov byte [rsp + rax + 0x20], r9b
dec rax
jmp 0x14004090d
lea r10, [rcx + 5]
cmp r13, r10
jne 0x140040bad
lea r10, [rax + r12]
lea r8, [r10 + rdx]
mov r9d, edx
and r9d, r10d
mov r10b, 0x2b
jmp 0x140040b6b
lea r8, [rcx + 0xa]
cmp r13, r8
jne 0x1400408e9
lea r9d, [rax + 0x482385ea]
lea r8d, [rax + rdx]
add r8d, 0x482385ea
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x9a
jmp 0x140040b9b
lea r10, [rcx + 3]
cmp r13, r10
je 0x14004097a
lea r10, [rcx + 2]
cmp r13, r10
jne 0x140040bd4
lea r10, [rax + r15]
lea r8, [r10 + rdx]
mov r9d, edx
and r9d, r10d
mov r10b, 0x33
add r9d, r9d
sub r8d, r9d
add r8b, r10b
lea r9d, [rax + 0x59d70a7]
lea r10d, [rdx + rax]
add r10d, 0x59d70a7
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, r8b
add r10b, 0x6f
mov byte [rsp + rax + 0x20], r10b
add r13, rcx
movzx edx, r8b
not rdx
add rax, rdx
jmp 0x140040910
lea r10, [rcx + 3]
cmp r13, r10
jne 0x140040939
jmp 0x140040aee
test rcx, rcx
jne 0x140040acd
mov byte [rsp + rax + 0x20], r10b
xor ecx, ecx
jmp 0x140040910
lea r10, [rcx + 5]
cmp r13, r10
jne 0x140040bfe
lea r9d, [rax - 0xad4ee57]
lea r8d, [rax + rdx]
add r8d, 0xf52b11a9
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x61
jmp 0x140040b9b
lea r10, [rcx + 4]
cmp r13, r10
je 0x1400409a3
lea r11d, [rax - 0xe933971]
lea r10d, [rax + rdx]
add r10d, 0xf16cc68f
and r11d, edx
add r11d, r11d
sub r10d, r11d
add r10b, 0x17
cmp r13, r8
je 0x140040900
jmp 0x140040a42
lea rbx, [rsp + 0xc22ec3]
jmp 0x140040c4a
lea rbx, [rsp + 0x1556834]
mov rcx, rbx
mov rdx, rsi
mov rsi, rdi
mov r8, rdi
call fcn.14002e870
mov rax, rsi
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret