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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
mov r9d, dword [rdx]
mov edi, dword [rcx]
mov esi, dword [rcx + 4]
mov eax, edi
mov r8d, r9d
mov ebx, esi
shr eax, 0x10
shr ebx, 0x10
mov r11, rdx
mov r14, rcx
mov edx, 1
imul r8d, eax
test r8d, r8d
je 0x140156d02
mov eax, r8d
movzx r10d, r8w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x140156d08
mov r10d, edx
sub r10d, r9d
add edi, dword [r11 + 4]
add ebx, dword [r11 + 8]
lea rcx, [r11 + 4]
mov r11d, dword [r11 + 0xc]
sub r10d, eax
movzx eax, si
mov r8d, r11d
imul r8d, eax
test r8d, r8d
je 0x140156d3f
mov eax, r8d
movzx r9d, r8w
shr eax, 0x10
sub r9d, eax
mov eax, r9d
shr eax, 0x10
jmp 0x140156d45
mov r9d, edx
sub r9d, r11d
sub r9d, eax
mov eax, ebx
xor eax, r10d
movzx r11d, ax
mov eax, dword [rcx + 0xc]
mov r8d, eax
imul r8d, r11d
test r8d, r8d
je 0x140156d78
mov eax, r8d
movzx r8d, r8w
shr eax, 0x10
sub r8d, eax
mov eax, r8d
shr eax, 0x10
sub r8d, eax
jmp 0x140156d81
mov r8d, edx
sub r8d, eax
sub r8d, r11d
mov esi, dword [rcx + 0x10]
mov eax, r9d
xor eax, edi
mov r11d, esi
add eax, r8d
movzx eax, ax
imul r11d, eax
test r11d, r11d
je 0x140156db0
mov eax, r11d
movzx r11d, r11w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x140156db6
mov r11d, edx
sub r11d, esi
sub r11d, eax
add r8d, r11d
xor r9d, r8d
xor r8d, edi
mov edi, r11d
xor r11d, r10d
xor edi, ebx
mov ebx, dword [rcx + 0x14]
mov r10d, ebx
movzx eax, r11w
imul r10d, eax
test r10d, r10d
je 0x140156df2
mov eax, r10d
movzx r11d, r10w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x140156df8
mov r11d, edx
sub r11d, ebx
mov ebx, dword [rcx + 0x20]
add edi, dword [rcx + 0x18]
add r8d, dword [rcx + 0x1c]
sub r11d, eax
movzx eax, r9w
mov r9d, ebx
imul r9d, eax
test r9d, r9d
je 0x140156e2a
mov eax, r9d
movzx r10d, r9w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x140156e30
mov r10d, edx
sub r10d, ebx
mov ebx, dword [rcx + 0x24]
sub r10d, eax
mov eax, r8d
xor eax, r11d
mov r9d, ebx
movzx eax, ax
imul r9d, eax
test r9d, r9d
je 0x140156e60
mov eax, r9d
movzx r9d, r9w
shr eax, 0x10
sub r9d, eax
mov eax, r9d
shr eax, 0x10
jmp 0x140156e66
mov r9d, edx
sub r9d, ebx
mov esi, dword [rcx + 0x28]
sub r9d, eax
mov eax, r10d
xor eax, edi
mov ebx, esi
add eax, r9d
movzx eax, ax
imul ebx, eax
test ebx, ebx
je 0x140156e91
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x140156e95
mov ebx, edx
sub ebx, esi
sub ebx, eax
add r9d, ebx
xor r10d, r9d
xor r9d, edi
mov edi, ebx
xor ebx, r11d
xor edi, r8d
movzx eax, bx
mov ebx, dword [rcx + 0x2c]
mov r8d, ebx
imul r8d, eax
test r8d, r8d
je 0x140156ecf
mov eax, r8d
movzx r11d, r8w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x140156ed5
mov r11d, edx
sub r11d, ebx
mov ebx, dword [rcx + 0x38]
add edi, dword [rcx + 0x30]
add r9d, dword [rcx + 0x34]
sub r11d, eax
mov r8d, ebx
movzx eax, r10w
imul r8d, eax
test r8d, r8d
je 0x140156f07
mov eax, r8d
movzx r10d, r8w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x140156f0d
mov r10d, edx
sub r10d, ebx
mov ebx, dword [rcx + 0x3c]
sub r10d, eax
mov eax, r9d
xor eax, r11d
mov r8d, ebx
movzx eax, ax
imul r8d, eax
test r8d, r8d
je 0x140156f3d
mov eax, r8d
movzx r8d, r8w
shr eax, 0x10
sub r8d, eax
mov eax, r8d
shr eax, 0x10
jmp 0x140156f43
mov r8d, edx
sub r8d, ebx
mov esi, dword [rcx + 0x40]
sub r8d, eax
mov eax, r10d
xor eax, edi
mov ebx, esi
add eax, r8d
movzx eax, ax
imul ebx, eax
test ebx, ebx
je 0x140156f6e
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x140156f72
mov ebx, edx
sub ebx, esi
sub ebx, eax
add r8d, ebx
xor r10d, r8d
xor r8d, edi
mov edi, ebx
xor ebx, r11d
xor edi, r9d
movzx eax, bx
mov ebx, dword [rcx + 0x44]
mov r9d, ebx
imul r9d, eax
test r9d, r9d
je 0x140156fac
mov eax, r9d
movzx r11d, r9w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x140156fb2
mov r11d, edx
sub r11d, ebx
mov ebx, dword [rcx + 0x50]
add edi, dword [rcx + 0x48]
add r8d, dword [rcx + 0x4c]
sub r11d, eax
mov r9d, ebx
movzx eax, r10w
imul r9d, eax
test r9d, r9d
je 0x140156fe4
mov eax, r9d
movzx r10d, r9w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x140156fea
mov r10d, edx
sub r10d, ebx
mov ebx, dword [rcx + 0x54]
sub r10d, eax
mov eax, r8d
xor eax, r11d
mov r9d, ebx
movzx eax, ax
imul r9d, eax
test r9d, r9d
je 0x14015701a
mov eax, r9d
movzx r9d, r9w
shr eax, 0x10
sub r9d, eax
mov eax, r9d
shr eax, 0x10
jmp 0x140157020
mov r9d, edx
sub r9d, ebx
mov esi, dword [rcx + 0x58]
sub r9d, eax
mov eax, r10d
xor eax, edi
mov ebx, esi
add eax, r9d
movzx eax, ax
imul ebx, eax
test ebx, ebx
je 0x14015704b
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x14015704f
mov ebx, edx
sub ebx, esi
sub ebx, eax
add r9d, ebx
xor r10d, r9d
xor r9d, edi
mov edi, ebx
xor ebx, r11d
xor edi, r8d
movzx eax, bx
mov ebx, dword [rcx + 0x5c]
mov r8d, ebx
imul r8d, eax
test r8d, r8d
je 0x140157089
mov eax, r8d
movzx r11d, r8w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x14015708f
mov r11d, edx
sub r11d, ebx
mov ebx, dword [rcx + 0x68]
add edi, dword [rcx + 0x60]
add r9d, dword [rcx + 0x64]
sub r11d, eax
mov r8d, ebx
movzx eax, r10w
imul r8d, eax
test r8d, r8d
je 0x1401570c1
mov eax, r8d
movzx r10d, r8w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x1401570c7
mov r10d, edx
sub r10d, ebx
mov ebx, dword [rcx + 0x6c]
sub r10d, eax
mov eax, r9d
xor eax, r11d
mov r8d, ebx
movzx eax, ax
imul r8d, eax
test r8d, r8d
je 0x1401570f7
mov eax, r8d
movzx r8d, r8w
shr eax, 0x10
sub r8d, eax
mov eax, r8d
shr eax, 0x10
jmp 0x1401570fd
mov r8d, edx
sub r8d, ebx
mov esi, dword [rcx + 0x70]
sub r8d, eax
mov eax, r10d
xor eax, edi
mov ebx, esi
add eax, r8d
movzx eax, ax
imul ebx, eax
test ebx, ebx
je 0x140157128
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x14015712c
mov ebx, edx
sub ebx, esi
sub ebx, eax
add r8d, ebx
xor r10d, r8d
xor r8d, edi
mov edi, ebx
xor ebx, r11d
xor edi, r9d
movzx eax, bx
mov ebx, dword [rcx + 0x74]
mov r9d, ebx
imul r9d, eax
test r9d, r9d
je 0x140157166
mov eax, r9d
movzx r11d, r9w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x14015716c
mov r11d, edx
sub r11d, ebx
mov ebx, dword [rcx + 0x80]
add edi, dword [rcx + 0x78]
add r8d, dword [rcx + 0x7c]
sub r11d, eax
mov r9d, ebx
movzx eax, r10w
imul r9d, eax
test r9d, r9d
je 0x1401571a1
mov eax, r9d
movzx r10d, r9w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x1401571a7
mov r10d, edx
sub r10d, ebx
mov ebx, dword [rcx + 0x84]
sub r10d, eax
mov eax, r8d
xor eax, r11d
mov r9d, ebx
movzx eax, ax
imul r9d, eax
test r9d, r9d
je 0x1401571da
mov eax, r9d
movzx r9d, r9w
shr eax, 0x10
sub r9d, eax
mov eax, r9d
shr eax, 0x10
jmp 0x1401571e0
mov r9d, edx
sub r9d, ebx
mov esi, dword [rcx + 0x88]
sub r9d, eax
mov eax, r10d
xor eax, edi
mov ebx, esi
add eax, r9d
movzx eax, ax
imul ebx, eax
test ebx, ebx
je 0x14015720e
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x140157212
mov ebx, edx
sub ebx, esi
sub ebx, eax
add r9d, ebx
xor r10d, r9d
xor r9d, edi
mov edi, ebx
xor ebx, r11d
xor edi, r8d
movzx eax, bx
mov ebx, dword [rcx + 0x8c]
mov r8d, ebx
imul r8d, eax
test r8d, r8d
je 0x14015724f
mov eax, r8d
movzx r11d, r8w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x140157255
mov r11d, edx
sub r11d, ebx
mov ebx, dword [rcx + 0x98]
add edi, dword [rcx + 0x90]
add r9d, dword [rcx + 0x94]
sub r11d, eax
mov r8d, ebx
movzx eax, r10w
imul r8d, eax
test r8d, r8d
je 0x140157290
mov eax, r8d
movzx r10d, r8w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x140157296
mov r10d, edx
sub r10d, ebx
mov ebx, dword [rcx + 0x9c]
sub r10d, eax
mov eax, r9d
xor eax, r11d
mov r8d, ebx
movzx eax, ax
imul r8d, eax
test r8d, r8d
je 0x1401572c9
mov eax, r8d
movzx r8d, r8w
shr eax, 0x10
sub r8d, eax
mov eax, r8d
shr eax, 0x10
jmp 0x1401572cf
mov r8d, edx
sub r8d, ebx
mov esi, dword [rcx + 0xa0]
sub r8d, eax
mov eax, r10d
xor eax, edi
mov ebx, esi
add eax, r8d
movzx eax, ax
imul ebx, eax
test ebx, ebx
je 0x1401572fd
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x140157301
mov ebx, edx
sub ebx, esi
sub ebx, eax
add r8d, ebx
xor r10d, r8d
xor r8d, edi
mov edi, ebx
xor ebx, r11d
xor edi, r9d
movzx eax, bx
mov ebx, dword [rcx + 0xa4]
mov r9d, ebx
imul r9d, eax
test r9d, r9d
je 0x14015733e
mov eax, r9d
movzx r11d, r9w
shr eax, 0x10
sub r11d, eax
mov eax, r11d
shr eax, 0x10
jmp 0x140157344
mov r11d, edx
sub r11d, ebx
mov ebx, dword [rcx + 0xb0]
add edi, dword [rcx + 0xa8]
add r8d, dword [rcx + 0xac]
sub r11d, eax
mov r9d, ebx
movzx eax, r10w
imul r9d, eax
test r9d, r9d
je 0x14015737f
mov eax, r9d
movzx r10d, r9w
shr eax, 0x10
sub r10d, eax
mov eax, r10d
shr eax, 0x10
jmp 0x140157385
mov r10d, edx
sub r10d, ebx
mov ebx, dword [rcx + 0xb4]
sub r10d, eax
mov eax, r8d
xor eax, r11d
mov r9d, ebx
movzx eax, ax
imul r9d, eax
test r9d, r9d
je 0x1401573b8
mov eax, r9d
movzx r9d, r9w
shr eax, 0x10
sub r9d, eax
mov eax, r9d
shr eax, 0x10
jmp 0x1401573be
mov r9d, edx
sub r9d, ebx
mov esi, dword [rcx + 0xb8]
sub r9d, eax
mov eax, r10d
xor eax, edi
mov ebx, esi
add eax, r9d
movzx eax, ax
imul ebx, eax
test ebx, ebx
je 0x1401573ec
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x1401573f0
mov ebx, edx
sub ebx, esi
sub ebx, eax
add r9d, ebx
xor r10d, r9d
xor r9d, edi
mov edi, ebx
xor ebx, r11d
mov r11d, dword [rcx + 0xbc]
xor edi, r8d
mov r8d, r11d
movzx eax, bx
imul r8d, eax
test r8d, r8d
je 0x14015742e
mov eax, r8d
movzx r8d, r8w
shr eax, 0x10
sub r8d, eax
mov eax, r8d
shr eax, 0x10
jmp 0x140157434
mov r8d, edx
sub r8d, r11d
mov r11d, dword [rcx + 0xc0]
sub r8d, eax
movzx eax, r10w
mov r10d, dword [rcx + 0xc8]
add r11d, r9d
mov r9d, dword [rcx + 0xc4]
mov ecx, r10d
add r9d, edi
imul ecx, eax
test ecx, ecx
je 0x140157471
mov eax, ecx
movzx edx, cx
shr eax, 0x10
sub edx, eax
mov eax, edx
shr eax, 0x10
jmp 0x140157474
sub edx, r10d
mov rbx, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
sub edx, eax
shl r8d, 0x10
movzx eax, r11w
or eax, r8d
shl r9d, 0x10
mov dword [r14], eax
movzx eax, dx
or r9d, eax
mov dword [r14 + 4], r9d
mov r14, qword [rsp + 0x20]
ret