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

Disassembly:
push r15
push r14
push rsi
push rdi
jmp 0x40caf8
mov r14d, r8d
mov rsi, rdx
jmp 0x40ca65
mov rbx, qword [rsp + 0x30]
je 0x40cae9
jmp 0x40cab6
mov eax, edi
je 0x40cb6d
jne 0x40cb6d
mov qword [rsp + 0x20], 0
jmp 0x40ca8e
mov ecx, r15d
jmp 0x40cc05
mov qword [rsp + 0x30], 0
mov rcx, rdx
mov edx, r9d
call fcn.004060f0
mov r15d, eax
je 0x40cc14
jne 0x40cc14
jmp 0x40ca42
lea r9, [rsp + 0x28]
mov rcx, rsi
mov rdx, rbx
mov r8d, r15d
call qword [sym.imp.HDWOMH_6aod_TslumBaha]
je 0x40cc89
jne 0x40cc89
je 0x42799d
add cl, ch
jne 0x40cae9
je 0x9fc03
xor r9d, r9d
call qword [sym.imp.HDWOMH_6aod_PdqGahmTklmltF]
adc eax, 0x3285d
test eax, eax
je 0x40cc2e
jmp 0x40cb9e
je 0x40caba
jne 0x40caba
jmp 0x4204c3
je 0x40cb98
jne 0x40cb98
mov rcx, rsi
mov rdx, rbx
xor r8d, r8d
jmp 0x40cb57
push rbp
push rbx
sub rsp, 0x38
je 0x40cc48
jne 0x40cc48
je 0x4216f9
add byte [rax - 0x7d], cl
rcr dword [rax], 1
shr cl, 1
int 1
add byte [rax], al
je 0x40cc5c
add rcx, 0x18
add eax, edx
jmp 0x40cce9
jne 0x40cc5c
add byte [rax], al
add byte [rax], al
add rcx, rbx
jmp 0x40cb88
cmp rbp, 0x24
je 0x40ccac
jne 0x40ccac
jmp 0x1974f55
je 0x40cc9e
je 0x40cb52
jmp 0x40cc82
jmp 0x40cd06
xor r9d, r9d
call qword [sym.imp.HDWOMH_6aod_PdqGahmTklmltF]
je 0x40ca88
jne 0x40ca88
jmp 0x39054eb9
add rsp, 0x38
pop rbx
pop rbp
jmp 0x40cc50
cmp dword [rbp - 0x3c], 0
lea rbp, [rbp - 0x28]
jmp 0x40cadd
movzx edx, word [rcx + 6]
je 0x40cd10
jne 0x40cd10
je 0x40cc00
jmp 0x40cb31
jne 0x40cc2e
add byte [rax], al
add byte [rax], al
mov r8d, r15d
call qword [sym.imp.HDWOMH_6aod_QddeNmda]
test eax, eax
je 0x40cc8d
jmp 0x40cbbb
mov eax, 0xffffffff
movsxd rcx, dword [rbx + 0x3c]
cmp ebp, 0x8664
je 0x40cb42
jne 0x40cb42
jmp 0x40cc2e
test eax, eax
je 0x40ca3a
je 0x40ca5d
jne 0x40ca5d
jmp 0x4d064f3d
add rbp, 0x4c
nop word cs:[rax + rax]
nop
jmp 0x40cb7a
add ecx, 1
call fcn.0043715c
jmp 0x40ccb4
xor ebx, ebx
mov rcx, rsi
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.HDWOMH_6aod_PdqGahmTklmltF]
mov edi, 0
jmp 0x40cbdc
je 0x40cc8f
or dword [rbp], r14d
mov dword [rsp + 0x28], 0
je 0x40ca50
jne 0x40ca50
mov ebp, r9d
jmp 0x40ca2c
pop rdi
pop rsi
pop r14
je 0x40cc63
jne 0x40cc63
add byte [rax], al
add byte [rax], al
jmp 0x40cce7
pop r15
ret
mov rdx, qword [rsp + 0x30]
xor edi, edi
mov rcx, rsi
xor r8d, r8d
jmp 0x40cad1
jne 0x40cb52
jmp 0x32c9416
mov edi, eax
jmp 0x40cc8f
xor edi, edi
mov rcx, rbx
call fcn.00437164
jmp 0x40ca35
je 0x40cb2c
jne 0x40cb2c
je 0xffffffffbf2cac24
je 0x40cc8d
jmp 0x40cc6e
add byte [rax], al
add byte [rax], al
mov rbx, rax
mov dword [rsp + 0x2c], 0
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x2c]
mov rcx, rsi
mov rdx, rax
je 0x40cba8
jne 0x40cba8
psubsw mm5, qword [rsi + rdi*8 - 1]
dec dword [rdi]
test byte [rcx], dh
leave
xor ecx, ecx
lea rax, [rax + rax*4]
lea rbp, [rcx + rax*8]
je 0x40cbf1
jne 0x40cbf1
je 0x3edaec
invalid
dec dword [rdi]
test byte [rcx + 0x14cfd], al
add byte [rbp - 0x27], dh
cmp ebp, 0x14c
jne 0x40cce7
jmp 0x40cc9e
movzx ebp, word [rcx + 0x14]
add rcx, rbp
je 0x40cb11
jne 0x40cb11
je 0x3e0112
jmp qword [rsi + 0xf]
jne 0x4204fa
mov r8, rbx
add rsp, 0x20
pop rbx
pop rdi
pop rsi
jmp fcn.0042f810
jmp 0x421684
lea rcx, [rsi + 0x48]
mov rdx, rbx
mov r8, rdi
call fcn.0042f7b0
jmp 0x421704
mov ecx, dword [rax + 0x100]
mov dword [rsi + 0x70], ecx
mov ecx, dword [rax + 0x104]
mov dword [rsi + 0x74], ecx
mov ecx, dword [rax + 0x11c]
mov dword [rsi + 0x78], ecx
mov eax, dword [rax + 0x120]
je 0x4216cc
jne 0x4216cc
je 0x421668
jne 0x421668
add byte [rax], al
add byte [rax], al
lea rbx, [rsi + 8]
jmp 0x42166e
lea rdi, [rcx + 0x68]
call qword [sym.imp.HDWOMH_6aod_DdqUagcGkpm]
mov dword [rsi + 0x68], eax
jmp 0x4216d9
mov dword [rsi + 0x7c], eax
je 0x4216b1
jne 0x4216b1
add byte [rax], al
add byte [rax], al
jmp 0x4216bb
mov eax, dword [rsi + 0xa8]
mov dword [rsi + 0x6c], eax
mov rax, qword [0x00459b50]
test rax, rax
je 0x4216cf
jmp 0x4216a9
je 0x4216bb
jne 0x4216bb
add byte [rax], al
add byte [rax], al
jmp 0x4216cc
mov rdx, qword [0x00459b60]
add rdx, 0xc
je 0x421715
jne 0x421715
je 0xffffffff89089861
add rsi, 0x88
mov rcx, rsi
add byte [rax], al
add byte [rax - 0x77], cl
int1
jmp 0x421657
call qword [sym.imp.HDWOMH_6aod_DdqMgcageiGz_pfUpsklgqW]
test eax, eax
jmp 0x427721
je 0x427743
jne 0x427743
jmp 0x4278a1
je 0x4276ec
jne 0x4276ec
je 0x43befa05
cmp word [rbx + rax*2 + 2], 0
add al, byte [rax]
lea rbx, [rbx + rax*2 + 2]
je 0x42796e
jmp 0x427792
mov ebx, eax
jmp 0x42770b
add rsp, 0x28
pop rbx
jmp 0x4278fd
je 0x4277be
jne 0x4277be
add byte [rax], al
add byte [rax], al
mov r8, r14
jmp 0x42772f
mov rdx, rdi
jmp 0x427695
je 0x427799
jne 0x427799
xor edi, edi
mov eax, edi
jmp 0x427684
je 0x427719
jmp 0x4276c9
call fcn.00406520
mov edi, 1
jmp 0x427719
je 0x427717
jne 0x427717
add byte [rax], al
add byte [rax], al
jmp 0x4276d1
mov rcx, rsi
je 0x427944
jne 0x427944
je 0xffffffff8451d39c
pop r12
je 0x4277e9
mov al, byte [rax]
add byte [rax], al
jmp 0x427828
jne 0x427757
jmp 0xffffffff8066fbfa
test edi, edi
jmp 0x4279ad
jne 0x42796e
jmp 0xffffffff8d8b3826
mov eax, eax
lea rcx, [rax + rax]
add rcx, 2
call fcn.0043715c
jmp 0x4276dc
mov rbx, rsi
je 0x427889
jne 0x427889
je 0x2487010b
mov qword [r12 + 8], rax
mov ecx, ebx
jmp 0x4277c9
or byte [rcx + 0xf02ebd9], cl
test byte [rax - 0x77], cl
ret 0x15ff
mov rdx, rax
call qword [sym.imp.HDWOMH_6aod_DdqMgcageiGz_pfUpsklgqW]
add eax, 0xffffffff
cmp eax, ebx
jae 0x427719
jmp 0x4279b9
pop r14
jmp 0x427929
lea rax, [r14*4]
mov qword [r12 + 0x28], rax
add edi, 1
lea rcx, [rdi*8]
call fcn.0043715c
mov r15, rax
mov qword [r12 + 0x10], rax
je 0x427956
jne 0x427956
psubsw mm2, qword [rbp - 0x17000000]
jne 0x4277e9
add byte [rax], al
add byte [rax], al
test rsi, rsi
jmp 0x427850
mov qword [r12 + 0x20], rax
cmp word [rsi], 0
je 0x4278e7
je 0x4278bd
jne 0x4278bd
jmp 0x427a19
je 0x427719
cmp word [rsi], 0
je 0x427719
xor edi, edi
jmp 0x4277ad
test rcx, rcx
jmp 0x427990
add edi, 1
mov rcx, rbx
call fcn.004321ac
je 0x42769b
jmp 0x42797c
jmp 0xfffffffffeb3fdb5
jne 0x427719
mov dword [r12 + 0x60], r9d
mov dword [r12 + 0x64], eax
lea rcx, [r12 + 0x30]
jmp 0x427948
xor ebx, ebx
nop
mov eax, ebx
mov dword [rdi + rax*4], ebx
mov qword [r15 + rax*8], rsi
add ebx, 1
jmp 0x427746
call fcn.004321ac
cmp word [rsi + rax*2 + 2], 0
lea rsi, [rsi + rax*2 + 2]
jne 0x4278c0
call qword [sym.imp.HDWOMH_6aod_DdqUagcGkpm]
mov dword [rsp + 0x24], eax
lea rcx, [rsp + 0x24]
jmp 0x427a06
pop rdi
pop rsi
je 0x427757
jmp 0x427768
mov ecx, 0x10
call fcn.00405d90
mov rsi, rax
mov rcx, rax
je 0x4279f0
jne 0x4279f0
jmp 0x10b78ba1
je 0x42793d
jne 0x42793d
jmp 0x4277f0
jne 0x42777f
add byte [rax], al
add byte [rax], al
pop r15
ret
jmp 0x4278d5
mov r8d, 0x28
je 0x427986
jne 0x427986
add byte [rax], al
add byte [rax], al
shl rdi, 2
mov rcx, rdi
call fcn.0043715c
mov rdi, rax
jmp 0x427837
jne 0x4277b0
je 0x42777f
jmp 0x427933
jne 0x42769b
add byte [rax], al
add byte [rax], al
call fcn.00405e10
jmp 0x42790c
je 0x4278a8
test byte [rcx + 0x108], 2
je 0x4278a2
jne 0x4278a2
je 0xffffffff84523b9a
je 0x42773b
mov ch, bh
invalid
mov r14d, edi
jmp 0x4279d7
mov rsi, qword [r12 + 8]
je 0x42782e
jne 0x42782e
add byte [rax], al
add byte [rax], al
jmp 0x427875
lea rax, [r14*8]
mov qword [r12 + 0x18], rax
je 0x42792d
jne 0x42792d
call fcn.00428100
mov qword [r12 + 0x58], rsi
xor edi, edi
xor ecx, ecx
xor edx, edx
jmp 0x427676
je 0x427704
jne 0x427704
je 0x40cd01
invalid
jmp 0x9873ba7