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

Disassembly:
sub esp, 0x64
push ebx
push ebp
push esi
mov esi, dword [esp + 0x74]
push edi
call fcn.004dde30
cmp eax, 0xa
jl 0x4fcd14
push str.jpc_pi_nextcprl_n
push 0xa
call fcn.004f70e0
add esp, 8
cmp byte [esi + 0x64], 0
mov eax, dword [esi + 0x48]
mov dword [esp + 0x78], eax
je 0x4fcd3b
mov byte [esi + 0x64], 0
mov eax, dword [eax + 4]
mov edi, eax
shl edi, 4
add edi, dword [esi + 0xc]
mov dword [esi + 0x18], eax
mov dword [esi + 0x10], edi
jmp 0x4fcdc9
lea ebp, [esi + 0x14]
inc dword [esi + 0x24]
mov edx, dword [esi + 0x24]
mov edi, ebp
cmp edx, dword [esi]
jae 0x4fcd53
cmp edx, dword [eax + 0xc]
jb 0x4fd1e8
mov edx, dword [esi + 0x1c]
lea ebx, [esi + 0x1c]
mov ebp, edi
inc edx
mov dword [ebx], edx
add dword [ebp], 0x14
mov edi, dword [ebp]
mov eax, dword [esi + 0x10]
mov dword [esp + 0x14], edi
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4fcd82
mov eax, dword [esp + 0x78]
movzx eax, byte [eax + 2]
cmp edx, eax
jb 0x4fd097
mov edi, dword [esi + 0x28]
xor edx, edx
mov ecx, dword [esi + 0x30]
mov eax, edi
div ecx
sub edi, edx
lea eax, [edi + ecx]
mov dword [esi + 0x28], eax
cmp eax, dword [esi + 0x40]
jb 0x4fd076
mov edi, dword [esi + 0x2c]
xor edx, edx
mov ecx, dword [esi + 0x34]
mov eax, edi
div ecx
sub edi, edx
lea eax, [edi + ecx]
mov dword [esi + 0x2c], eax
cmp eax, dword [esi + 0x44]
jb 0x4fd068
inc dword [esi + 0x18]
add dword [esi + 0x10], 0x10
mov eax, dword [esi + 0x18]
mov edi, dword [esi + 0x10]
mov ecx, dword [esp + 0x78]
cmp eax, dword [ecx + 8]
jae 0x4fd25b
cmp eax, dword [esi + 8]
jae 0x4fd25b
mov edx, dword [edi + 4]
mov ecx, dword [edi]
mov ebx, dword [edx + 8]
add ebx, ecx
cmp ebx, 0x1e
ja 0x4fd243
mov eax, dword [edx + 0xc]
add eax, ecx
cmp eax, 0x1e
ja 0x4fd243
mov eax, dword [edi + 8]
lea ecx, [ebx - 1]
shl eax, cl
mov dword [esi + 0x30], eax
mov eax, dword [edi]
mov ecx, dword [edx + 0xc]
dec eax
add ecx, eax
mov edx, 1
mov eax, dword [edi + 0xc]
shl eax, cl
mov dword [esi + 0x34], eax
mov ecx, dword [edi]
mov eax, dword [edi + 4]
mov dword [esp + 0x18], edx
cmp ecx, edx
jbe 0x4fd060
add eax, 0x20
mov dword [esp + 0x1c], eax
mov eax, dword [eax - 4]
sub eax, edx
dec eax
add eax, ecx
mov dword [esp + 0x24], eax
cmp eax, 0x40
jae 0x4fcec5
xor ecx, ecx
xor edx, edx
bts ecx, eax
cmp eax, 0x20
cmovae edx, ecx
xor ecx, edx
cmp eax, 0x40
mov dword [esp + 0x14], ecx
cmovae edx, ecx
mov ecx, dword [edi + 8]
mov eax, ecx
mov dword [esp + 0x10], edx
or eax, 0
je 0x4fce9a
xor ebp, ebp
mov ebx, ecx
push ebp
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0068e5b0
mov ecx, eax
cmp dword [esp + 0x10], edx
ja 0x4fceca
mov eax, dword [esp + 0x14]
jb 0x4fce91
cmp eax, ecx
ja 0x4fceca
mov ecx, dword [edi + 8]
mov edx, dword [esp + 0x10]
jmp 0x4fce9e
mov eax, dword [esp + 0x14]
push 0
push ecx
push edx
push eax
call fcn.0068e490
mov ecx, eax
xor ebp, ebp
mov eax, dword [edi + 8]
mov ebx, eax
test edx, edx
ja 0x4fceca
jb 0x4fcebf
cmp ecx, 0x7fffffff
ja 0x4fceca
mov ebx, eax
xor ebp, ebp
jmp 0x4fcecc
mov ebx, dword [edi + 8]
xor ebp, ebp
xor ecx, ecx
mov eax, dword [esi + 0x30]
cmp eax, ecx
jb 0x4fcf38
push 0
push dword [esp + 0x28]
lea eax, [esp + 0x4c]
push eax
call fcn.004fc760
add esp, 0xc
movups xmm0, xmmword [eax]
movd eax, xmm0
movups xmmword [esp + 0x34], xmm0
test al, al
je 0x4fcf36
mov eax, ebx
or eax, ebp
mov eax, dword [esp + 0x3c]
je 0x4fcf1d
push ebp
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0068e5b0
mov ecx, eax
cmp dword [esp + 0x40], edx
ja 0x4fcf36
mov eax, dword [esp + 0x3c]
jb 0x4fcf1d
cmp eax, ecx
ja 0x4fcf36
push ebp
push ebx
push dword [esp + 0x48]
push eax
call fcn.0068e490
test edx, edx
ja 0x4fcf36
jb 0x4fcf38
cmp eax, 0x7fffffff
jbe 0x4fcf38
xor eax, eax
mov dword [esi + 0x30], eax
test eax, eax
je 0x4fd22b
mov ecx, dword [esp + 0x1c]
mov eax, dword [edi]
mov ebx, dword [edi + 0xc]
push 0
mov ecx, dword [ecx]
sub ecx, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
dec ecx
add eax, ecx
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.004fc760
add esp, 0xc
movups xmm0, xmmword [eax]
movd eax, xmm0
movups xmmword [esp + 0x34], xmm0
test al, al
je 0x4fcfbe
mov ebp, dword [esp + 0x3c]
mov eax, ebx
or eax, 0
mov eax, dword [esp + 0x40]
je 0x4fcfa4
push 0
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0068e5b0
mov ecx, eax
mov eax, dword [esp + 0x40]
cmp eax, edx
ja 0x4fcfbe
jb 0x4fcfa4
cmp ebp, ecx
ja 0x4fcfbe
push 0
push ebx
push eax
push ebp
call fcn.0068e490
mov ecx, eax
test edx, edx
ja 0x4fcfbe
jb 0x4fcfc0
cmp ecx, 0x7fffffff
jbe 0x4fcfc0
xor ecx, ecx
mov eax, dword [esi + 0x34]
cmp eax, ecx
jb 0x4fd037
mov ecx, dword [esp + 0x24]
mov eax, dword [edi]
dec ecx
mov ebx, dword [edi + 0xc]
add eax, ecx
push 0
push eax
lea eax, [esp + 0x6c]
push eax
call fcn.004fc760
add esp, 0xc
movups xmm0, xmmword [eax]
movd eax, xmm0
movups xmmword [esp + 0x34], xmm0
test al, al
je 0x4fd035
mov ebp, dword [esp + 0x3c]
mov eax, ebx
or eax, 0
mov eax, dword [esp + 0x40]
je 0x4fd01e
push 0
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.0068e5b0
mov ecx, eax
mov eax, dword [esp + 0x40]
cmp eax, edx
ja 0x4fd035
jb 0x4fd01e
cmp ebp, ecx
ja 0x4fd035
push 0
push ebx
push eax
push ebp
call fcn.0068e490
test edx, edx
ja 0x4fd035
jb 0x4fd037
cmp eax, 0x7fffffff
jbe 0x4fd037
xor eax, eax
mov dword [esi + 0x34], eax
test eax, eax
je 0x4fd213
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
inc edx
mov ecx, dword [edi]
add eax, 0x14
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], eax
cmp edx, ecx
jb 0x4fce38
mov eax, dword [esi + 0x3c]
jmp 0x4fcdb0
mov eax, dword [esi + 0x38]
lea ebx, [esi + 0x1c]
lea ebp, [esi + 0x14]
jmp 0x4fcd93
mov eax, dword [esp + 0x78]
movzx edx, byte [eax + 1]
mov eax, dword [esi + 0x10]
mov dword [ebx], edx
lea ecx, [edx + edx*4]
mov eax, dword [eax + 4]
lea edi, [eax + ecx*4]
mov dword [ebp], edi
lea ebp, [esi + 0x14]
jmp 0x4fcd65
cmp dword [edi], 0
mov edi, ebp
mov dword [esp + 0x24], ebp
je 0x4fcd53
mov ebx, dword [esi + 0x10]
sub ecx, edx
dec ecx
xor edx, edx
mov dword [esp + 0x2c], ecx
mov eax, dword [ebx + 8]
mov dword [esp + 0x1c], eax
shl eax, cl
mov dword [esp + 0x20], eax
dec eax
add eax, dword [esi + 0x38]
div dword [esp + 0x20]
xor edx, edx
mov dword [esp + 0x24], eax
mov eax, dword [ebx + 0xc]
mov ebx, eax
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x3c]
dec eax
shl ebx, cl
add eax, ebx
mov dword [esp + 0x30], ebx
div ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
add eax, ecx
add edx, ecx
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0x28], edx
cmp eax, dword [esi + 0x38]
jne 0x4fd122
mov eax, dword [esp + 0x24]
mov edi, 1
shl eax, cl
mov ecx, edx
shl edi, cl
xor edx, edx
div edi
test edx, edx
jne 0x4fd138
mov eax, dword [esi + 0x28]
mov edx, ecx
mov ecx, edx
mov edi, ebp
shl dword [esp + 0x1c], cl
xor edx, edx
div dword [esp + 0x1c]
test edx, edx
jne 0x4fcd53
mov eax, dword [esi + 0x2c]
cmp eax, dword [esi + 0x3c]
jne 0x4fd162
mov eax, dword [esp + 0x10]
mov edi, 1
mov ecx, dword [esp + 0x2c]
xor edx, edx
shl eax, cl
mov ecx, dword [esp + 0x14]
shl edi, cl
div edi
test edx, edx
jne 0x4fd17a
mov eax, dword [esi + 0x2c]
jmp 0x4fd166
mov ecx, dword [esp + 0x14]
shl dword [esp + 0x18], cl
xor edx, edx
div dword [esp + 0x18]
mov edi, ebp
test edx, edx
jne 0x4fcd53
mov eax, dword [esi + 0x2c]
xor edx, edx
dec eax
mov ecx, dword [ebx + 0xc]
add eax, dword [esp + 0x30]
div dword [esp + 0x30]
xor edx, edx
mov edi, eax
mov eax, dword [esp + 0x10]
shr eax, cl
shr edi, cl
sub edi, eax
mov ecx, dword [ebx + 8]
mov eax, dword [esi + 0x28]
dec eax
imul edi, dword [ebx + 0x10]
add eax, dword [esp + 0x20]
div dword [esp + 0x20]
shr eax, cl
add edi, eax
mov eax, dword [esp + 0x24]
shr eax, cl
sub edi, eax
mov dword [esi + 0x20], edi
cmp edi, dword [ebx]
jb 0x4fd1d6
push 0x24c
push str.C:DeveloperVisual_Package_vcpkg_buildtreesjasper_src5eb260a2e4_ca02e25be6.clean_srclibjasperjpcjpc_t2cod.c
push str.pi__prcno___pi__pirlvl__numprcs
call fcn.006adcf2
add esp, 0xc
mov eax, dword [esp + 0x78]
xor edx, edx
mov dword [esi + 0x24], 0
jmp 0x4fcd44
mov eax, dword [esi + 0x14]
lea ebp, [esi + 0x14]
mov ecx, dword [esi + 0x20]
mov eax, dword [eax + 4]
lea ecx, [eax + ecx*4]
mov eax, dword [ecx]
cmp edx, eax
jae 0x4fd206
mov eax, dword [esp + 0x78]
jmp 0x4fcd3e
pop edi
pop esi
inc eax
pop ebp
mov dword [ecx], eax
xor eax, eax
pop ebx
add esp, 0x64
ret
push str.overflow_in_y_step_calculation_n
call fcn.004f7130
add esp, 4
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
push str.overflow_in_x_step_calculation_n
call fcn.004f7130
add esp, 4
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
push str.overflow_detected_n
call fcn.004f7130
add esp, 4
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x64
ret